Requisitos previos para el registro mínimo en la importación masiva

Se aplica a:SQL Server

En el caso de las bases de datos que utilizan el modelo de recuperación completa, todas las operaciones de inserción de filas que se efectúan durante la importación masiva se registran por completo en el registro de transacciones. Las importaciones de datos de gran volumen pueden hacer que el registro de transacciones se llene rápidamente si se utiliza el modelo de recuperación completa. En cambio, en el modelo de recuperación simple o en el modelo de recuperación optimizado para cargas masivas de registros, el registro mínimo de operaciones de importación masiva reduce la posibilidad de que una operación de importación masiva rellene el espacio de registro. Además, el registro mínimo es más eficaz que el completo.

Nota

El modelo de recuperación optimizado para cargas masivas de registros está diseñado para reemplazar temporalmente al modelo de recuperación completa durante operaciones masivas de gran tamaño.

Requisitos de tabla para el registro mínimo de operaciones de importación masiva

El registro mínimo exige que la tabla de destino cumpla las condiciones siguientes:

  • La tabla no se está replicando.

  • Se ha especificado el bloqueo de tabla (mediante TABLOCK).

    Nota

    Aunque no se registren las inserciones de datos en el registro de transacciones cuando se realiza una importación masiva de registro mínimo, el Motor de base de datos seguirá registrando las asignaciones de extensiones cada vez que se asigne una nueva a la tabla.

  • La tabla no es una tabla optimizada para memoria.

La posibilidad de utilizar el registro mínimo con una tabla también depende de si la tabla está indizada y, en este caso, de si está vacía:

  • Si la tabla no tiene índices, el registro de las páginas de datos será mínimo.

  • Si la tabla no tiene índice clúster sino uno o más índices no clúster, el registro de las páginas de datos siempre será mínimo. Sin embargo, el modo en que se registran las páginas de índice depende de si la tabla está vacía:

    • Si la tabla está vacía, el registro de las páginas de índice será mínimo. Si empieza con una tabla vacía y realiza una importación masiva de datos mediante varios lotes, el registro de las páginas de índice y de datos será mínimo para el primer lote pero, a partir del segundo lote, solo las páginas de datos se registrarán de forma mínima.

    • Si la tabla no está vacía, las páginas de índice se registran por completo.

    • Si uno de los índices tiene IGNORE_DUP_KEY = ON, las páginas de índice y de datos se registran por completo.

  • Si la tabla tiene un índice clúster y está vacía, tanto las páginas de datos como de índice se registrarán de forma mínima. En cambio, si la tabla tiene un índice en clúster basado en B-tree pero no está vacía, tanto las páginas de datos como las de índice se registrarán de forma completa, independientemente del modelo de recuperación utilizado. Si comienza con una tabla vacía de almacén de filas e importa de forma masiva los datos en lotes, las páginas de índice y de datos se registran mínimamente para el primer lote, pero a partir del segundo lote en adelante, solo se registran de forma masiva las páginas de datos.

    Nota

    La documentación de SQL Server utiliza el término árbol B generalmente en referencia a los índices. En los índices del almacén de filas, SQL Server implementa un árbol B+. Esto no se aplica a los índices de almacén de columnas ni a los almacenes de datos en memoria. Para obtener más información, consulte la guía de diseño y arquitectura de índices de SQL Server Azure SQL y Azure SQL.

  • Para obtener información sobre el registro de un índice de almacén de columnas agrupado (CCI), consulte la guía de carga de datos de índice de almacén de columnas.

Nota

Cuando la replicación transaccional está habilitada, las operaciones BULK INSERT se registran completamente incluso en el modelo de recuperación de registros masivos.

Vea también

Pasos siguientes