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

Performance Insertions multiples ou insertion unique à valeurs multiples

Oui, généralement l'insertion en bloc est plus rapide que l'insertion unique à la fois car elle évite la communication intermédiaire qui se produisait pour chaque instruction d'insertion.

Mais parfois, cela entraîne des problèmes car les instructions d'insertion/mise à jour acquièrent des verrous exclusifs sur les tables/lignes, ce qui signifie qu'aucun autre processus/connexion ne peut utiliser la table à ce moment-là.

Si vous avez plusieurs processus utilisant la base de données en même temps, dont certains lisent à partir de la table et d'autres écrivent, des opérations entières seront verrouillées/arrêtées au moment de votre insertion en masse

ainsi, l'insertion en bloc verrouille la table plus longtemps que l'insertion unique, ce qui peut entraîner des problèmes pour d'autres processus si le temps de verrouillage est plus long et que la base de données n'est pas réglée pour cela.

Si vous effectuez simplement une insertion dans la base de données sans autre opération, optez pour une insertion en masse à partir d'un fichier (ce qui est beaucoup plus rapide) et si vous avez d'autres processus en place, ajustez la fréquence d'insertion en masse en tenant compte du verrouillage.

Le doublon possible est des instructions de mise à jour Is mise à jour groupée plus rapide qu'une mise à jour unique dans db2 ?