Mysql
 sql >> Base de données >  >> RDS >> Mysql

Performances d'insertion multiple MySQL

Essayez d'insérer votre insertion groupée dans une transaction.

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

Cela pourrait améliorer les performances, mais je ne sais pas si mySQL peut partiellement valider une insertion en masse (si ce n'est pas le cas, cela n'aidera probablement pas beaucoup)

N'oubliez pas que même à 1,5 seconde, pour 30 000 enregistrements d'une taille d'environ 1 k chacun, vous effectuez une vitesse de validation de 20 Mo/s, vous pourriez en fait être limité en termes de lecteur en fonction de votre configuration matérielle.

Le conseil serait alors d'étudier un SSD ou de modifier votre configuration Raid ou d'obtenir des disques mécaniques plus rapides (il existe de nombreux articles en ligne sur les avantages et les inconvénients de l'utilisation d'une base de données SQL montée sur un SSD).