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

Prestazioni Inserti multipli o inserto singolo a più valori

Sì, in genere l'inserimento in blocco è più veloce di un singolo inserimento alla volta poiché evita la comunicazione intermedia che si verificava per ogni istruzione di inserimento.

Ma a volte porta a problemi poiché le istruzioni di inserimento/aggiornamento acquisiscono blocchi esclusivi su tabelle/righe, il che significa che nessun altro processo/connessione può utilizzare la tabella in quel momento.

Se hai più processi che utilizzano DB contemporaneamente, alcuni dei quali stanno leggendo dalla tabella e altri stanno scrivendo, tutte le operazioni verranno bloccate/interrotte al momento dell'inserimento in blocco

quindi l'inserimento in blocco bloccherà la tabella per più tempo rispetto all'inserimento singolo, il che può causare problemi per altri processi se il tempo di blocco è maggiore e DB non è ottimizzato per questo.

Se stai semplicemente inserendo nel DB senza altre operazioni, scegli l'inserimento in blocco da un file (che è molto più veloce) e se hai altri processi in atto, regola la frequenza di inserimento in blocco considerando il blocco.

Possibile duplicato di istruzioni di aggiornamento È aggiornamento collettivo più veloce dell'aggiornamento singolo in db2?