Base de données SQL Server source

Cette page contient des informations sur les éléments suivants :

  • Comportement de la manière dont Datastream gère les données extraites d'une base de données SQL Server source.
  • Versions de bases de données SQL Server compatibles avec Datastream
  • Limites connues liées à l'utilisation de la base de données SQL Server en tant que source

Comportement

Datastream suit les modifications du langage de manipulation de données (LMD) à l'aide de l'une des méthodes CDC suivantes :

Journaux de transactions

Avec cette méthode CDC, Datastream lit les modifications dans la source directement à partir des journaux de transactions. Cette méthode nécessite moins de ressources et permet une récupération de données plus rapide, mais présente plus de limites.

Pour éviter de perdre des données, il est important que les journaux ne soient pas tronqués avant Datastream les lit. En revanche, si vous conservez les fichiers journaux trop longues, elles occupent de l'espace de stockage, ce qui peut amener la base de données pour passer en mode lecture seule.

Pour vous assurer que le lecteur CDC a suffisamment de temps pour lire les journaux tout en permettant la troncation des journaux afin de libérer de l'espace de stockage, vous devez appliquer des étapes de configuration supplémentaires, telles que la modification des intervalles d'interrogation et la configuration d'une protection contre la troncation. Ces étapes fournissent une couche de protection supplémentaire pour s'assurer que Datastream peut lire les données, même en cas d'indisponibilité du côté de Datastream ou de problème de connectivité entre la base de données source et Datastream.

Pour obtenir des instructions détaillées sur l'application de ces mesures supplémentaires, consultez la page Configurer une base de données SQL Server source et sélectionnez votre type de base de données.

Modifier les tables

La méthode CDC des tables de modifications permet aux utilisateurs de conserver les journaux pendant une durée plus courte, ce qui permet d'économiser de l'espace de stockage, mais elle est moins efficace que la méthode des journaux de transactions. La méthode présente moins de limites que les journaux de transactions. Par exemple, il élimine le risque de troncation des journaux entraînant un échec permanent des flux et prend en charge la réplication des tables chiffrées. Pour en savoir plus, consultez la section Limites connues.

Lorsque vous utilisez cette méthode de CDC, les modifications apportées à la source sont suivies à l'aide de tables de modifications dédiées. Les journaux de transactions sont toujours utilisés, mais dans une mesure limitée, et vous n'avez pas besoin de les conserver pendant de longues périodes. Étant donné que les événements LMD sont appliqués sources, les modifications sont répliquées dans les tables de modification correspondantes. Les tables de modifications ont la même structure que les tables sources, mais avec des colonnes supplémentaires pour inclure les métadonnées des modifications. Seules les transactions validées sont ajouté aux tables de modifications, avec le numéro séquentiel dans le journal (LSN) du opération de commit.

Versions

Datastream est compatible avec les versions et éditions suivantes des bases de données SQL Server :

  • Autogéré (sur site ou hébergé dans le cloud) avec les versions suivantes :
    • Enterprise : 2008 et versions ultérieures
    • Standard: 2016 SP1 et versions ultérieures
    • Développeur: à partir de 2008
  • Amazon RDS pour SQL Server
  • Azure SQL Database (niveau S3 et supérieur)

  • Cloud SQL pour SQL Server

Datastream n'est pas compatible avec les versions suivantes des bases de données SQL Server:

  • Édition SQL Server Standard de la version 2008 à 2014
  • SQL Server Express
  • SQL Server Web

Limitations connues

Voici quelques limitations connues concernant l'utilisation d'une base de données SQL Server en tant que source:

  • Les flux sont limités à 10 000 tables.
  • Une table contenant plus de 500 millions de lignes ne peut pas être remplie, sauf si les conditions suivantes sont remplies :
    1. La table a un index unique.
    2. Aucune des colonnes d'index ne peut avoir une valeur nulle.
    3. Toutes les colonnes de l'index sont incluses dans le flux.
  • Bases de données avec durabilité retardée ou récupération accélérée de base de données (ADR) activées ne sont pas acceptés.
  • Il n'est pas possible de diffuser des modifications en streaming dans les tables système.
  • L'authentification Windows Active Directory (AD) n'est pas prise en charge.
  • Les types de données suivants ne sont pas compatibles et ne sont pas répliqués dans la destination:
    • SQL_VARIANT
    • HIERARCHYID
    • GEOMETRY
    • GEOGRAPHY
  • Datastream réplique les types de données définis par l'utilisateur. Toutefois, c'est le type de données de base à partir duquel vous dérivez votre type défini par l'utilisateur qui est stocké à la destination. Par exemple, si vous définissez un type de données USERNAME basé sur le VARCHAR(50), les données sont stockées dans la destination en tant que VARCHAR(50).
  • Datastream n'est pas compatible avec la CDC pour les colonnes d'objets volumineuses (TEXT, NTEXT, XML, IMAGE) et les colonnes de longueur variable maximale (VARCHAR(MAX), VARBINARY(MAX), NVARCHAR(MAX)) dans les tables sans de l'index.

    Si les colonnes d'objets volumineuses ne sont pas incluses dans le flux, la CDC est compatible.

  • Datastream ne permet pas de répliquer les modifications du schéma source lorsque en utilisant la méthode CDC des tables de modification. Les modifications de schéma suivantes peuvent entraîner une corruption des données ou l'échec du traitement des événements :

    • Ajout de colonnes : les nouvelles colonnes ne sont pas répliquées dans la destination.
    • Suppression de colonnes : les données de ces colonnes sont remplacées par des valeurs NULL.
    • Modification des types de données : Datastream tente d'insérer les données à la destination et génère une erreur si les données sont rejetées.
    • Modification du nom des colonnes: non disponible pour SQL Server lorsque la CDC est activée.
  • Datastream n'est pas compatible avec le masquage des données. Les données sont répliquées sans masquage.

  • Datastream ne permet pas de répliquer les modifications appliquées à la base de données à l'aide du package DACPAC (Data Tier Application Package).

  • Datastream ne réplique pas les modifications apportées à l'aide des méthodes WRITETEXT ou UPDATETEXT.

  • Datastream n'accepte pas la réplication des colonnes calculées.

  • Datastream n'accepte pas les types de compression PAGE, COLUMNSTORE ou COLUMNSTORE ARCHIVE.

Autres limites à prendre en compte lors de l'utilisation de la méthode des journaux de transactions

Si vous utilisez la méthode CDC des journaux de transactions, les limitations supplémentaires suivantes s'appliquent :

  • Le chiffrement transparent des données (TDE, Transparent Data Encryption) n'est pas compatible.
  • Le chiffrement au niveau des colonnes n'est pas compatible. Les données de ces colonnes sont remplacées par Valeurs NULL.
  • Datastream n'est pas compatible avec l'instruction ROLLBACK TO SAVEPOINT. Ces événements de rollback sont ignorés et ne sont pas répliqués dans la destination.
  • Datastream n'est pas compatible avec la capture des données modifiées pour les lignes de plus de 8 Ko dans les types de tables suivants :
    • Tables sans index unique
    • Tables ne contenant qu'un index unique hors cluster avec un ou plusieurs colonnes de longueur variable (VARCHAR, VARBINARY, NVARCHAR)
  • Datastream n'est pas compatible avec la capture des données modifiées (CDC) pour les colonnes d'objets volumineux (TEXT, NTEXT, XML, IMAGE) dans les types de tables suivants :

    • Tables sans index unique
    • Tables ne contenant qu'un index unique hors cluster avec un ou plusieurs colonnes de longueur variable (VARCHAR, VARBINARY, NVARCHAR)

    Si les colonnes d'objets volumineux ne sont pas incluses dans le flux, la capture des données modifiées n'est prise en charge que pour ces tables si elles disposent d'index valides.

Étape suivante