Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   "Mejor" base de datos que MySQL... (https://www.clubdelphi.com/foros/showthread.php?t=66609)

rgstuamigo 05-03-2010 15:01:37

Cita:

Empezado por roman (Mensaje 355736)
...
Ahora bien, no creo que el rendimiento en sí se explique por el uso de MyISAM, todo lo contrario. El motor MyISAM es muy bueno para la rapidez, y de hecho yo sigo usándolo para cualquier tabla que es exclusivamente para consulta y no involucra ninguna transacción. El motor InnoDb es considerablemente más lento, o al menos lo era hasta hace un par de años; no he comparado últimamente.
...

Yo igual no lo creo que por usar el motor MyISAM sea haga más lenta la cosa,
y coincido con román, de todas maneras aquí pueden ver una comparación de características entre los motores InnoDB y MyISAM.
Por otra parte MySQL se ha estado innovando cada vez más de tal manera que vió la necesidad de construir un nuevo motor "mejor"(bueno es lo que se pretende ;)) que los dos anteriores y sacó la versión 6 (bueno en realidad a partir de la versión 6.0.4) con un nuevo motor llamado "Falcon" (Halcón en español aunque segun se ve aun está en version Alfa ó Beta) que tenía y tiene el propósito de superar en gran medida todas las limitaciones que tienes los dos motores anteriormente mencionados.;).Claro está que Falcon todavía está "pollito" comparado con InnDB o MyISAM, pero segun se vé ha ido y tiende a mejorar. Aquí pueden ustedes y observar algunas gráficas de comparación entre MyISAM, InnoDB y Falcon.;) aunque :rolleyes: desconosco si en la actualidad se sigue trabajando en mejorar Falcon, ya que como todos sabemos Oracle es la compañia dueña de MySQL.;)
Saludos...:)

Ñuño Martínez 08-03-2010 12:05:42

Y pregunto yo, ¿cómo de complicado y seguro es cambiar el motor de la base de datos? Porque como digo, la del programa tiene muchísimas vistas (tantas o más como tablas) que realizan cálculos internos (por ejemplo, totales) y se hacen muchas inserciones, y si decís que el InnnoDB puede ser mejor en estas lides...

Aunque sí, yo también estoy convencido de que es un problema de diseño más que de motor... :rolleyes:

rgstuamigo 08-03-2010 14:21:47

Cita:

Empezado por Ñuño Martínez (Mensaje 355980)
Y pregunto yo, ¿cómo de complicado y seguro es cambiar el motor de la base de datos?
...

No es nada dificil tan solo debes especificar el motor con el cual deseas trabajar en la sentencia de creacion de tus tablas...algo así:
Código SQL [-]
Create table Empleado
( ID Int not null primary key,
  Nombre Varchar(45) not null
) engine=InnoDB; #<--Aqui especifico el motor con el que quiero trabajar ;)
Desde luego ésto debes hacerlo para cada tabla, y quizás sería mejor que hicieras un BackUp de toda tu base de datos y vas y modificas el archivo resultante(no te olvides que éste motor ya soporta Foreign key así que en tu script debes tambien tenerlo definido), para posteriormente ejecutar todo el script nuevamente.
Por supuesto que antes que nada deberías verificar en tu MySQL está incluido o habilitado el motor InnoDB, ya que a veces dicho motor no ésta habilitado ó incluido. Si quieres más información en la web hay muchos sitios que se habla del asunto.;).
Saludos...:)

roman 08-03-2010 15:59:39

También puedes cambiar el motor de tablas ya existentes:

Código SQL [-]
alter table clientes  engine = InnoDB

Pero, insisto, no creo que el rendimiento del sistema mejore con este cambio. Con el motor InnoDb tendrás la seguridad de las transacciones y llaves foráneas, pero no un mejor rendimiento. Para ello tendrás que buscar de revisar que tus índices sean correctos, tratar de minimizar joins, que las relaciones sean preferentemente con campos enteros y no de caracteres, etc.

// Saludos


La franja horaria es GMT +2. Ahora son las 04:03:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi