Base de datos de SQL Server de origen

Esta página incluye información sobre lo siguiente:

  • El comportamiento de cómo Datastream controla los datos que se extraen de una base de datos de origen de SQL Server.
  • Las versiones de las bases de datos de SQL Server que admite Datastream.
  • Limitaciones conocidas para usar la base de datos de SQL Server como fuente.

Comportamiento

Datastream hace un seguimiento de los cambios del lenguaje de manipulación de datos (DML) con uno de los siguientes métodos de CDC:

Registros de transacciones

Cuando se usa este método de CDC, Datastream lee los cambios en la fuente directamente desde los registros de transacciones. Este método requiere menos recursos y permite para una recuperación de datos más rápida, pero tiene más limitaciones.

Para evitar la pérdida de datos, es importante que los registros no se truncen antes de que Datastream los lea. Por otro lado, si conservas los archivos de registro de demasiado tiempo, ocupan espacio de almacenamiento, lo que, eventualmente, podría hacer que la base de datos a una instancia de VM para ingresar al modo de solo lectura.

Para asegurarte de que el lector de CDC tenga tiempo suficiente para leer los registros y, al mismo tiempo, permitir que la truncación de registros libere espacio de almacenamiento, debes aplicar pasos de configuración adicionales, como cambiar los intervalos de sondeo y configurar una protección contra truncaciones. Estos pasos brindan una capa adicional de protección para garantizar que puede leer los datos incluso si hay tiempo de inactividad en Datastream o de conectividad entre la base de datos de origen y Datastream.

Para obtener instrucciones detalladas sobre cómo aplicar estas medidas adicionales, consulta la página Configura una base de datos de SQL Server de origen y selecciona tu tipo de base de datos.

Cambiar tablas

El método de CDC de tablas de cambios permite a los usuarios retener registros por un período más corto y, por lo tanto, ahorrar espacio de almacenamiento, pero admite una menor capacidad de procesamiento en comparación con el método de registros de transacciones. El método tiene menos limitaciones que los registros de transacciones. Por ejemplo: Elimina el riesgo de truncamiento de registros que provoque que las transmisiones fallen de forma permanente. y admite la replicación de tablas encriptadas. Para obtener más información, consulta Limitaciones conocidas.

Cuando se usa este método de CDC, se realiza un seguimiento de los cambios en la fuente con tablas de cambios dedicadas. Los registros de transacciones se siguen usando, pero de forma limitada, y no necesitas retenerlas por períodos más largos. Como los eventos DML se aplican al en las tablas de origen, los cambios se replican en las tablas de cambios correspondientes. Las tablas de cambios tienen la misma estructura que las tablas de origen, pero con columnas adicionales para incluir los metadatos de los cambios. Solo se muestran las transacciones confirmadas agregados a las tablas de cambios, junto con el número de secuencia de registro (LSN) del una operación de confirmación.

Versiones

Datastream admite las siguientes versiones y ediciones de bases de datos de SQL Server:

  • Autoadministrado (de forma local o alojada en la nube) con las siguientes versiones:
    • Enterprise: 2008 y versiones posteriores
    • Estándar: 2016 SP1 y posterior
    • Desarrollador: 2008 y versiones posteriores
  • Amazon RDS for SQL Server
  • Azure SQL Database (nivel S3 y superior)

  • Cloud SQL for SQL Server

Datastream no admite las siguientes versiones de bases de datos de SQL Server:

  • Edición de SQL Server Standard de la versión 2008 a la 2014
  • SQL Server Express
  • SQL Server Web

Limitaciones conocidas

Entre las limitaciones conocidas para usar la base de datos de SQL Server como fuente, se incluyen las siguientes:

  • Las transmisiones tienen un límite de 10,000 tablas.
  • Una tabla que tiene más de 500 millones de filas no se puede reabastecer, a menos que se cumplan las siguientes condiciones:
    1. La tabla tiene un índice único.
    2. Ninguna de las columnas de índice puede aceptar valores nulos.
    3. Todas las columnas del índice se incluyen en el flujo.
  • Bases de datos con durabilidad retrasada o recuperación acelerada de bases de datos (ADR) habilitadas no son compatibles.
  • No se admiten cambios de transmisión en las tablas del sistema.
  • No se admite la autenticación de Windows Active Directory (AD).
  • Los siguientes tipos de datos no son compatibles y no se replican en el destino:
    • SQL_VARIANT
    • HIERARCHYID
    • GEOMETRY
    • GEOGRAPHY
  • El flujo de datos replica los tipos de datos definidos por el usuario. Sin embargo, es el tipo de datos base del que derivas el tipo definido por el usuario que se almacena en el destino. Por ejemplo, si defines un tipo de datos USERNAME según el tipo de datos VARCHAR(50), los datos se almacenarán en el destino como VARCHAR(50).
  • Datastream no admite el CDC para columnas de objetos grandes (TEXT, NTEXT, XML, IMAGE) y columnas de longitud variable máxima (VARCHAR(MAX), VARBINARY(MAX), NVARCHAR(MAX)) en tablas sin un índice único.

    Si no se incluyen columnas de objetos grandes en el flujo, se admite el CDC.

  • Datastream no admite la replicación de cambios del esquema de origen cuando con el método de CDC de tablas de cambios. Los siguientes cambios de esquema pueden causar daños en los datos o que no se puedan procesar los eventos:

    • Agregar columnas: Las columnas nuevas no se replican en el destino.
    • Eliminación de columnas: Los datos de estas columnas se reemplazan por valores NULL.
    • Modifica los tipos de datos: Datastream intenta insertar los datos al destino y genera un error si se rechazan los datos.
    • Cambio de nombre de columnas: No se admite en SQL Server cuando las CDC están habilitadas.
  • Datastream no admite el enmascaramiento de datos. Los datos se replican sin enmascaramiento.

  • Datastream no admite la replicación de cambios aplicados a la base de datos con el paquete de aplicación de nivel de datos (DACPAC).

  • Datastream no replica los cambios realizados con WRITETEXT o Declaraciones UPDATETEXT.

  • Datastream no admite la replicación de columnas calculadas.

  • Datastream no admite los tipos de compresión PAGE, COLUMNSTORE ni COLUMNSTORE ARCHIVE.

Limitaciones adicionales cuando se usa el método de registros de transacciones

Si usas el método de CDC de registros de transacciones, se aplican las siguientes limitaciones adicionales:

  • No se admite la encriptación de datos transparente (TDE).
  • No se admite la encriptación a nivel de columna. Los datos en estas columnas se reemplazan por NULL valores.
  • Datastream no admite la sentencia ROLLBACK TO SAVEPOINT. Esos eventos de reversión se ignoran y no se replican en el destino.
  • Datastream no admite CDC para filas de más de 8 KB en los siguientes tipos de tablas:
    • Tablas sin un índice único
    • Tablas que contienen solo un índice único no agrupado con una o más columnas de longitud variable (VARCHAR, VARBINARY, NVARCHAR)
  • Datastream no admite CDC para columnas grandes de objetos (TEXT, NTEXT, XML, IMAGE) en los siguientes tipos de tablas:

    • Tablas sin un índice único
    • Tablas que contienen solo un índice único no agrupado en clústeres con uno o más columnas de longitud variable (VARCHAR, VARBINARY, NVARCHAR)

    Si no se incluyen columnas de objetos grandes en la transmisión, solo se admite la CDC para esas tablas si tienen índices válidos.

¿Qué sigue?