Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Prestazioni di bcp/BULK INSERT rispetto ai parametri con valori di tabella

Non ho ancora esperienza con TVP, tuttavia esiste un bel grafico di confronto delle prestazioni rispetto a BULK INSERT in MSDN qui .

Dicono che BULK INSERT abbia un costo di avvio più elevato, ma in seguito sia più veloce. In uno scenario client remoto tracciano la linea a circa 1000 righe (per una logica server "semplice"). A giudicare dalla loro descrizione, direi che dovresti stare bene con l'uso di TVP. L'impatto in termini di prestazioni, se presente, è probabilmente trascurabile ei vantaggi dell'architettura sembrano molto buoni.

Modifica:in una nota a margine puoi evitare il file locale del server e continuare a utilizzare la copia di massa usando l'oggetto SqlBulkCopy. Basta compilare un DataTable e inserirlo nel metodo "WriteToServer" di un'istanza SqlBulkCopy. Facile da usare e molto veloce.