Que es mas eficiente: ¿muchas conexiones o una conexion con muchas sentencias?

24/07/2009 - 17:05 por Luis Gmo. Espinoza | Informe spam
Hola:

Tengo que insertar en una tabla 800.000 registros.

¿Que es mas eficiente hacer 800.000 conexiones a la base con un INSERT cada
una o enviarle paquetes de N INSERT en cada conexión?

He intentado hacer paquetes de 500 INSERT, pero es muy lento...

Gracias,
LG
 

Leer las respuestas

#1 Emilio Boucau
26/07/2009 - 19:25 | Informe spam
Luis,

Es una pregunta que no solo se responde desde el punto de vista de las
conexiones ya que el storage donde este alojada la bbdd sera un diferencial
a la hora de la escritura, junto con el log y la cantidad de archivos que
tenga cada uno. No hay una regla fija que diga eso. Si esas 800.000 filas
estan en un archivo TXT te recomiendo uses BULK INSERT, si esas filas estan
en una tabla de stage por que no probas hacer un INSERT INTO o un INSERT de
JOIN contra la tabla de destino ? Contanos un pooc mas si deberas hacer esto
en forma recurrente o es una sola vez.

Saludos !


Emilio Boucau
Buenos Aires - Argentina

"Luis Gmo. Espinoza" wrote in message
news:
Hola:

Tengo que insertar en una tabla 800.000 registros.

¿Que es mas eficiente hacer 800.000 conexiones a la base con un INSERT
cada una o enviarle paquetes de N INSERT en cada conexión?

He intentado hacer paquetes de 500 INSERT, pero es muy lento...

Gracias,
LG


Preguntas similares