FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
"Mejor" base de datos que MySQL...
Hola gente.
En realidad no es una pregunta de Delphi ni Pascal, pero no sé dónde más preguntar. Resulta que llevo dos años con un desarrollo de la leche en PHP. Perdí la batalla para utilizar otro lenguaje, y ahora nos está pasando factura porque PHP no está hecho para cosas tan grandes y complejas. La cosa es que este programa maneja una base de datos sobre MySQL (¿Qué esperábais?) que ahora tiene más de 100 tablas, otras tantas vistas (VIEW) nada simples y un puñado de funciones/eventos/triggers o como los queráis llamar. Varias de estas tablas tienen un buen centenar de miles de registros superando los 15Mib por lo que la cosa se resiente bastante en cuanto a velocidad. La solución que va a proponerme mi jefe (que todavía no lo ha hecho) es... (redoble)... ¡Añadir más campos y vistas! (Minipunto a quien lo haya adivinado antes de leerlo) de esta forma cosas que ahora se obtienen mediante consultas y cálculos estarán precalculadas. Esto puede solucionar parte de la papeleta, pero no toda. Yo tiraría a la basura lo hecho y empezaría de nuevo en otro lenguaje (incluso estoy dispuesto a programar en Java y todo) pero como no va a poder ser se me había ocurrido proponerle cambiar el gestor de la base de datos a otro que se maneje mejor con tablas gigantescas y vistas complejas (mucho, con muchos "JOIN" y "SELECT" anidados, y muchos campos calculados, etc). Así que si alguien puede sugerirme webs donde se vea claramente que otros gestores (utilizables desde PHP, se entiende) son más eficientes que MySQL, y que sea lo más fácil posible de importar/exportar con esta, que lo diga para poder enviárselo a mi jefe "como quien no quiere la cosa". Gracias. |
#2
|
|||
|
|||
Comentario
No se mi concepto te sirva de algo,
Creo que despues de 2 años el problema de lenguaje no es, es posible que se la forma de contruccion de la base de datos, a veces es mejor usar un procedimiento donde se ejecuten los calculos de la base de datos y retornar el resultset, a veces las vistas anidadadas y reanidadas se vuelven ineficientes ya que no utilizan el mejor opcion de indices, trata de ejecutar un proceso que hallas identificado como lento en otro lenguaje como delphi y compara le velocidad de respuesta, se que java tampoco es un avion para procesar. Otro punto imprante la maquina donde procesas los datos es rapida o es un simple computador ? Recuerda que a medida que las bases de datos crecen mucho requieren procesos de administracion, discos, procesadores mas rapidos, mayor tamaño de bus de datos etc saludes amigo Ultimo concepto volver a empezar son otros dos anos al menos |
#3
|
||||
|
||||
Hola, puede usar Advantage Database o Firebird.
Las dos te permiten hacer todo lo que tienes ya hecho en la mysql. Y se que Advantage tiene un importador de datos. Saludos |
#4
|
||||
|
||||
Apoyo lo que dice ASAPLTDA, pero te abono un poco al tema...
Te dejo el link de un artículo acerca del uso de PostgreSQL (el que yo uso por lo general ) y sus características Aunque si de algo se puede sentir orgulloso MySQL es de su rapidez... y justo es de lo que te estás quejando... depronto sea cuestión de hardware.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#5
|
||||
|
||||
Si hay algo por lo que MySQL es conocido es por ser muy potente, es más, aquí el propio vBulletin trabaja con MySQL y te podrás imaginar la cantidad de datos que se almacena..
Lo que me gustaría es que brindaras mas datos sobre el problema en cuestión por ejemplo: ¿Que versión de MySQL se usa? ¿Sobre que motor(engine)de MySQL se está trabajando(Isam,MyIsam, InnoDB, BerkeleyDB, ARCHIVE, BlackHole, CSV, Federated, etc)? ¿Cómo se está accediendo al servidor(Via internet,atraves de un tunel o VPN)?,etc,etc. En fin a veces no es bueno tomar una decisión a la ligera y decir yo lo hago todo de nuevo o cambio ésto o aquello y listo, ya que segun se vé, se estaría perdiendo tiempo, dinero y sobre todo mucho pero mucho esfuerzo. Dependerá de muchos otros factores que nos puedas brindar como información para quizás poder entre todos ver el problema y buscarle una posible solución si la situación amerita.. Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Última edición por rgstuamigo fecha: 03-03-2010 a las 18:58:47. |
#6
|
||||
|
||||
Yo no creo que ésta sea la característica por la cual es conocido. MySQL es muy bueno para mostrar datos, pero para insertar, borrar y modificar ya no lo es tanto, sobre todo si se usan tablas InnoDB (y difícilmente se llega lejos si no se usan tablas transaccionales). Si a eso añadimos una buena cantidad de vistas y disparadores, no estaría tan seguro de la potencia de MySQL.
// Saludos |
#7
|
||||
|
||||
Cita:
Saludos.
__________________
Ya tengo Firma! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
"OBJECT OR CLASS TYPE REQUIRED" en "APPLICATION EXENAME" | Xavierator | Varios | 3 | 27-10-2008 09:09:50 |
MySQL es el mejor manejador de base de datos en la actualidad | owarito | MySQL | 14 | 12-09-2008 08:05:57 |
Búsqueda "incremental" en una base de datos | loquillo3 | Conexión con bases de datos | 9 | 08-11-2007 18:07:02 |
Necesito llamar a métodos de clases "hija" desde su clase "padre" | Flecha | OOP | 17 | 20-04-2007 00:03:53 |
¿cuál es mejor: "close" o "application.terminate"? | unreal4u | Varios | 5 | 05-03-2007 11:01:19 |
|