19 messaggi dal 27 ottobre 2005
Non sono riuscito a trovare un post inerente all'argomento che vi pongo, anche se mi sembra strano che non sia mai stato trattato, in quanto questione annosa direi...
Dovendo importare in maniera schedulata dei dati da un db informix a SQL Server e trovandomi quindi a dover eseguire decine di migliaia di volte una stored procedure che fa la insert in una tabella, qualcuno mi sa dire se è più performante:
- aprire la connessione
- aprire la transazione
- eseguire 50.000 volte la stored procedure
- chiudere la transazione
- chiudere la connessione
oppure ripetere il tutto 50.000 volte eseguendo la stored una sola volta per ogni ciclo sfruttando il connection pooling?
Preciso che la transazione la apro solo per ottimizzare le performances, non perché mi interessi realmente la transazionalità, e che il codice che ho provato per ora (che esegue tutte le stored nella stessa transazione) effettua circa 3.000 inserimenti al secondo.
Tenchiù a chi mi risponde!
1.024 messaggi dal 19 dicembre 2003
Contributi | Blog
...ed invece esportare i dati in un file di testo ed importarli con un (sicuramente più efficiente) bcp o bulk insert?
Non so se esistano driver odbc o provider oledb per informix efficienti; in caso affermativo hai anche la strada del linked server. In entrambi i casi fai una unica operazione anzichè 50000...

Bye

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.