Paramètres de la tâche de validation des données - AWS Service de Migration de Base de Données

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Paramètres de la tâche de validation des données

Vous pouvez vérifier que vos données ont été migrées avec précision de la source vers la cible. Si vous activez la validation d'une tâche, AWS DMS commence à comparer les données source et cible immédiatement après le chargement complet d'une table. Pour plus d'informations sur la validation des données d'une tâche, ses exigences, la portée de la prise en charge de sa base de données et les métriques qu'elle fournit, consultez AWS Validation des données DMS. Pour en savoir plus sur l’utilisation d’un fichier de configuration de tâche pour définir les paramètres d’une tâche, consultez Exemple de paramètres de tâche.

Les paramètres de validation des données et leurs valeurs incluent les éléments suivants :

  • EnableValidation : active la validation des données lorsque la valeur est true. Dans le cas contraire, la validation est désactivée pour la tâche. La valeur par défaut est false.

  • ValidationMode : contrôle la manière dont DMS validera les données de la table cible par rapport à la table source. AWS DMS fournit ce paramètre pour une extensibilité future. Actuellement, la seule valeur valide par défaut estROW_LEVEL. AWS DMS valide toutes les lignes entre les tables source et cible.

  • FailureMaxCount : spécifie le nombre maximal d’enregistrements dont la validation peut échouer avant que celle-ci soit suspendue pour la tâche. La valeur par défaut est 10,000. Si vous souhaitez que la validation se poursuive quel que soit le nombre d'enregistrements pour lesquels elle échoue, choisissez une valeur plus élevée que le nombre d'enregistrements dans la source.

  • HandleCollationDiff : lorsque cette option est définie sur true, la validation prend en compte les différences de classement des colonnes dans les points de terminaison PostgreSQL et Microsoft SQL Server lors de l’identification des enregistrements sources et cibles à comparer. Sinon, les différences de classement des colonnes sont ignorées pour la validation. Les classements de colonnes peuvent imposer l’ordre des lignes, ce qui est important pour la validation des données. Définir HandleCollationDiff sur true permet de résoudre automatiquement ces différences de classement et évite les faux positifs dans la validation des données. La valeur par défaut est false.

  • RecordFailureDelayInMinutes : spécifie le délai en minutes avant que les détails d’un échec de validation ne soient fournis.

  • RecordFailureDelayLimitInMinutes : spécifie le délai avant que les détails d’un échec de validation ne soient fournis. Normalement, AWS DMS utilise la latence de la tâche pour identifier le délai réel pour les modifications à apporter à la cible afin d'éviter les faux positifs. Ce paramètre remplace la valeur de délai réel et vous permet de définir un délai plus important avant la création de rapports sur les métriques de validation. La valeur par défaut est 0.

  • RecordSuspendDelayInMinutes : spécifie le délai en minutes avant que la validation des tables ne soit suspendue en raison du seuil d’erreur défini dans FailureMaxCount.

  • SkipLobColumns— Lorsque cette option est définie surtrue, AWS DMS ignore la validation des données pour toutes les colonnes LOB de la partie de la table consacrée à la validation des tâches. La valeur par défaut est false.

  • TableFailureMaxCount : spécifie le nombre maximal de lignes dans une table dont la validation peut échouer avant que la validation soit suspendue pour la table. La valeur par défaut est 1,000.

  • ThreadCount— Spécifie le nombre de threads d'exécution AWS DMS utilisés lors de la validation. Chaque thread sélectionne les not-yet-validated données de la source et de la cible pour les comparer et les valider. La valeur par défaut est 5. Si vous définissez ThreadCount un nombre plus élevé, vous AWS DMS pouvez terminer la validation plus rapidement. Toutefois, AWS DMS exécute ensuite plusieurs requêtes simultanées, consommant plus de ressources sur la source et la cible.

  • ValidationOnly : lorsque cette option est définie sur true, la tâche effectue la validation des données sans aucune migration ou réplication des données. La valeur par défaut est false. Vous ne pouvez pas modifier le paramètre ValidationOnly une fois la tâche créée.

    Vous devez TargetTablePrepModedéfinir sur DO_NOTHING (valeur par défaut pour une tâche de validation uniquement) et définir le type de migration sur l'une des valeurs suivantes :

    • Chargement complet : définissez le type de migration des tâches pour migrer les données existantes dans la AWS DMS console. Ou, dans l' AWS DMS API, définissez le type de migration sur FULL-LOAD.

    • CDC : définissez le Type de migration de la tâche sur Répliquer les modifications de données uniquement dans la console AWS DMS . Ou, dans l' AWS DMS API, définissez le type de migration sur CDC.

    Quel que soit le type de migration choisi, les données ne sont pas réellement migrées ou répliquées lors d’une tâche de validation uniquement.

    Pour plus d’informations, consultez Tâches de validation uniquement.

    Important

    Le paramètre ValidationOnly est immuable. Il ne peut pas être modifié pour une tâche une fois celle-ci créée.

  • ValidationPartialLobSize : indique si vous souhaitez effectuer une validation partielle pour les colonnes LOB au lieu de valider toutes les données stockées dans la colonne. Cela peut vous être utile lorsque vous ne migrez qu’une partie des données LOB et non l’ensemble du jeu de données LOB. La valeur est exprimée en Ko. La valeur par défaut est 0, ce qui signifie qu’ AWS DMS valide toutes les données de colonne LOB. Par exemple, "ValidationPartialLobSize": 32 cela AWS DMS ne valide que les 32 premiers Ko des données de colonne à la fois dans la source et dans la cible.

  • PartitionSize : spécifie la taille du lot d’enregistrements à lire à des fins de comparaison entre la source et la cible. La valeur par défaut est 10 000.

  • ValidationQueryCdcDelaySeconds : durée pendant laquelle la première requête de validation est retardée à la fois sur la source et sur la cible pour chaque mise à jour de CDC. Cela peut contribuer à réduire la contention des ressources lorsque la latence de migration est élevée. Une tâche de validation uniquement définit automatiquement cette option sur 180 secondes. La valeur par défaut est 0.

Par exemple, le code JSON suivant active la validation des données avec deux fois le nombre de threads par défaut. Elle tient également compte des différences d'ordre d'enregistrement générées par les différences de classement des colonnes dans les points de terminaison PostgreSQL. De plus, elle fournit un délai de rapport de validation pour tenir compte du temps supplémentaire nécessaire pour traiter les défaillances de validation.

"ValidationSettings": { "EnableValidation": true, "ThreadCount": 10, "HandleCollationDiff": true, "RecordFailureDelayLimitInMinutes": 30 }
Note

Pour un point de terminaison Oracle, AWS DMS utilise DBMS_CRYPTO pour valider les BLOB. Si votre point de terminaison Oracle utilise des objets BLOB, accordez l’autorisation execute pour DBMS_CRYPTO au compte d’utilisateur qui accède au point de terminaison Oracle. Pour ce faire, exécutez l’instruction suivante.

grant execute on sys.dbms_crypto to dms_endpoint_user;