Mysql
 sql >> Database >  >> RDS >> Mysql

Prestazioni di inserimento multiplo MySQL

Prova a racchiudere il tuo inserto collettivo all'interno di una transazione.

START TRANSACTION
INSERT INTO `table_name` VALUES (data1), (data2), ..., (data1000);
COMMIT

Ciò potrebbe migliorare le prestazioni, tuttavia non sono sicuro che mySQL possa eseguire il commit parziale di un inserimento di massa (se non è possibile, probabilmente non sarà di grande aiuto)

Ricorda che anche a 1,5 secondi, per 30.000 record ciascuno con una dimensione di circa 1k, stai eseguendo una velocità di commit di 20 MB/s potresti effettivamente essere limitato alla guida a seconda della configurazione dell'hardware.

Il consiglio quindi sarebbe quello di indagare su un SSD o modificare la configurazione del Raid o ottenere unità meccaniche più veloci (ci sono molti articoli online sui pro e contro dell'utilizzo di un db SQL montato su un SSD).