Inserción mínimamente registrada en la inserción

Tengo una statement de inserción que está consumiendo muchísimo espacio de logging, tanto que el disco duro se está llenando realmente antes de que la statement finalice. La cuestión es que realmente no necesito que se registre, ya que solo es un paso intermedio de carga de datos.

Por el bien de los arguments, digamos que tengo:

Tabla A: tabla de carga inicial (rellenada con bcp, por lo que no hay problemas de logging)
Tabla B: se rellenó con INSERT INTO B de A

¿Hay alguna manera de que pueda copyr entre A y B sin que se escriba nada en el logging?

Gracias
Karl

PD: utilizando SQL Server 2008 con un model de recuperación simple

De Louis Davidson, MVP de Microsoft:

No hay forma de insert sin iniciar session. SELECT INTO es la mejor manera de minimizar el logging en T-SQL, utilizando SSIS puede hacer el mismo tipo de logging de luz con Bulk Insert.

A partir de sus requisitos, probablemente usaría SSIS, descartaría todas las restricciones, especialmente las únicas y principales, cargaría los datos y volvería a agregar las restricciones. Cargué aproximadamente 100 GB en poco más de una hora como esta, con una sobrecarga mínima. Estoy usando el model de recuperación BULK LOGGED, que simplemente registra la existencia de nuevas extensiones durante el logging, y luego puede eliminarlas más tarde.

La key es comenzar con tablas de barebones, y solo grita. Si construyes el índice una vez, no tendrás índices para mantener, solo una compilation de índice por índice.

Si no desea usar SSIS, el punto aún se aplica para descartar todas sus restricciones y usar el model de recuperación BULK LOGGED . Esto networkinguce en gran medida el logging realizado en las INSERT INTO y, por lo tanto, debería resolver su problema.

http://msdn.microsoft.com/en-us/library/ms191244.aspx

Cargue los datos en tempdb en lugar de su database, y realice todas las transformaciones intermedias en tempdb. Luego copie solo los datos finales en la database de destino. Use lotes para minimizar el tamaño de transacción individual. Si aún tiene problemas, investigue la implementación del indicador de traza 610, consulte la Guía de performance de carga de datos y los requisitos previos para el logging mínimo en la import masiva :

Trace Flag 610

SQL Server 2008 introduce el indicador de traza 610, que controla las inserciones mínimamente registradas en las tablas indexadas.