sql >> Base de Datos >  >> RDS >> Mysql

Inserciones lentas de MySQL

Podría ser un momento para la partición horizontal y mover el campo blob a una tabla separada. En este artículo en 'A Quick Side Note on Vertical Partitioning', el autor elimina un campo varchar más grande de una tabla y aumenta la velocidad de una consulta sobre el orden de magnitud.

La razón es que el recorrido físico de los datos en un disco se vuelve significativamente más rápido si hay menos espacio para cubrir, por lo que mover campos más grandes a otro lugar aumenta el rendimiento.

Además (y probablemente ya lo haga) es beneficioso disminuir el tamaño de su columna de índice a su mínimo absoluto (char(32) en codificación ascii para md5), porque el tamaño de la clave es directamente proporcional a la velocidad de su uso .

Si realiza varias inserciones a la vez con las tablas InnoDB, puede aumentar significativamente la velocidad de las inserciones envolviéndolas en transacciones y haciendo múltiples inserciones en una consulta:

START TRANSACTION
INSERT INTO x (id, md5, field1, field2) values (1, '123dab...', 'data1','data2'),(2,'ab2...','data3','data4'),.....;
COMMIT