Tous les produits
Search
Centre de documentation

DataWorks:Comparaison de données

Dernière mise à jour :Aug 10, 2026

DataWorks propose des nœuds de comparaison de données permettant de comparer les données de différentes tables selon plusieurs modalités. Intégrez ces nœuds à vos workflows. Cette rubrique décrit comment utiliser un nœud de comparaison de données pour développer des tâches.

Présentation du nœud

Les nœuds de comparaison de données ne se limitent pas à l'intégration de données ; ils prennent également en charge la comparaison entre tables. Ils permettent de définir des périmètres et des métriques de comparaison personnalisés, offrant ainsi des analyses plus exhaustives.

Limites

Seuls les groupes de ressources Serverless sont pris en charge. Pour ajouter et utiliser des groupes de ressources Serverless, consultez la rubrique Ajouter et utiliser un groupe de ressources Serverless.

I. Créer un nœud de comparaison de données

    1. Accédez à la page Workspaces de la console DataWorks. Dans la barre de navigation supérieure, sélectionnez la région souhaitée. Repérez l'espace de travail concerné, puis choisissez Shortcuts > Data Studio dans la colonne Actions.

  1. Dans le volet de navigation de gauche, cliquez sur l'icône image pour accéder à Data Development. À droite de Project Directory, cliquez sur l'icône image, puis choisissez New Node > Data Quality > Data Comparison. Suivez les instructions pour spécifier le chemin d'accès et le nom du nœud.

II. Configurer le nœud de comparaison de données

1. Configurer les informations des tables à comparer

Le nœud de comparaison de données nécessite uniquement une configuration simple des informations relatives aux tables pour comparer les données issues de sources différentes. Les détails de configuration sont présentés ci-dessous :

Paramètre

Description

Resource Group

Sélectionnez un groupe de ressources existant dans la liste déroulante.

Task Resource Usage

Nombre d'unités de calcul (CUs) allouées à l'exécution du nœud de comparaison de données. Ajustez ce paramètre selon vos besoins.

Data Source Type

Sélectionnez les types de sources de données auxquels appartiennent respectivement la table source et la table de destination.

Data Source Name

Sélectionnez les sources de données auxquelles appartiennent respectivement la table source et la table de destination.

Connectivity

Une fois la configuration terminée, cliquez sur Test pour vérifier la connectivité entre la source de données et le groupe de ressources.

Table Name

Sélectionnez dans la liste déroulante les tables source et de destination à comparer.

Remarque

Pour une source de données MaxCompute, vous pouvez sélectionner un schéma.

WHERE Condition

Saisissez une condition WHERE pour filtrer les données des tables source et de destination.

Remarque
  • Ne saisissez pas le mot-clé WHERE lors de la configuration.

  • Lors de la comparaison de tables partitionnées, nous vous recommandons de spécifier la partition avant l'exécution. À défaut, l'erreur suivante survient : Semantic analysis exception - physical plan generation failed: Table(<MaxCompute project name>,<table name>) is full scan with all partitions, please specify partition predicates.

Shard Key

Spécifiez une colonne de la table source comme clé de sharding. Nous vous conseillons d'utiliser la clé primaire ou une colonne indexée.

2. Configurer les règles de comparaison

Configurez des règles pour une Metric-based Comparison ou une Full-text Comparison afin de comparer les données source et de destination.

Comparaison basée sur des métriques

  • Table-level Comparison :

    Table Row Comparison : La comparaison basée sur des métriques prend en charge les vérifications au niveau de la table, telles que la comparaison du nombre de lignes entre deux tables. La comparaison réussit si l'écart reste inférieur au seuil d'erreur défini.

    Remarque

    Le seuil d'erreur peut être configuré sous forme de Percentage, de Absolute Value ou de Consistent or Not.

  • Field-level Comparison :

    Par défaut, les champs portant le même nom sont comparés. Si les noms de champs diffèrent entre la table source et la table de destination, cliquez sur Add Field for Comparison pour mapper manuellement un champ source à un champ de destination.

    • Source Field : Sélectionnez le champ de la table source à comparer.

    • Target Field : Sélectionnez le champ de la table de destination à comparer.

    • Comparison Metric : Comparez les champs à l'aide de fonctions d'agrégation courantes, notamment MAX, AVG, MIN et SUM.

      • Vous pouvez configurer plusieurs métriques de comparaison pour une paire de champs (source et destination).

      • Vous pouvez attribuer des valeurs distinctes aux paramètres Error Threshold et Ignored Object pour chaque métrique de comparaison.

    • Error Threshold : La comparaison est validée si l'écart réel est inférieur au seuil d'erreur configuré. Ce seuil peut être défini comme une Percentage, une Absolute Value ou une option Consistent or Not.

      Remarque
      • Error Threshold Absolute Value = |Source Table Metric Value - Destination Table Metric Value|

      • Error Threshold du seuil d'erreur = (|Valeur de la métrique source - Valeur de la métrique de destination|) / Valeur de la métrique source × 100 %

    • Ignore : Les options d'ignorance disponibles varient selon les types de données des champs comparés.

      Type de champ pour la comparaison

      Options d'ignorance prises en charge

      Champs de type entier (tels que INT, BIGINT, etc.)

      Vous pouvez ignorer la Difference Between Null Value and Value 0.

      Champs de type chaîne (tels que STRING, VARCHAR, TEXT, etc.)

      Vous pouvez ignorer la Difference Between Null Value and Empty String.

      Champs de type numérique (incluant les types entier et à virgule flottante)

      • Définissez la Floating Precision pour la comparaison.

      • Vous pouvez ignorer la Difference Between Null Value and Value 0.

      • Vous pouvez Ignore trailing zeros in the decimal part..

      Comparaison entre types entier et chaîne

      Vous pouvez Ignore trailing zeros in the decimal part..

      Comparaison entre types entier et à virgule flottante

      • Vous pouvez Ignore trailing zeros in the decimal part..

      • Vous pouvez ignorer la Difference Between Null Value and Value 0.

      Comparaison entre types à virgule flottante et chaîne

      Vous pouvez Ignore trailing zeros in the decimal part..

    • Operation : Supprimez les champs de comparaison inutiles.

  • Configure Custom Comparison Rules :

    Ajoutez des métriques de comparaison SQL personnalisées pour comparer les données des tables source et de destination en procédant comme suit :

    1. Cliquez sur Add Custom SQL Comparison Metric pour ajouter les métriques à comparer. Vous pouvez renommer manuellement les métriques.

      Après l'ajout d'une métrique, la table affiche les options permettant de configurer le Error Threshold, de rédiger le Custom SQL (en cliquant sur Configure) et de supprimer la métrique via l'option Delete.

    2. Ajustez le Error Threshold selon vos besoins. Le seuil peut être défini comme un Percentage, une Absolute Value ou une option Consistent or Not.

    3. Une fois le seuil d'erreur configuré, cliquez sur Custom SQL dans la colonne Custom SQL pour rédiger les requêtes SQL destinées aux tables source et de destination, afin de définir le mode de calcul de la métrique.

    4. Une fois la configuration terminée, cliquez sur OK.

Comparaison intégrale

  1. Lorsque vous optez pour la méthode de comparaison intégrale, ajustez le Full-text Comparison Type pour obtenir différents effets de comparaison.

    • Source Data Contained in Destination : La comparaison est validée si chaque ligne de la table source figure également dans la table de destination. Dans ce scénario, la table de destination peut contenir davantage de lignes que la table source.

    • Comparison by Row : Compare les tables source et de destination ligne par ligne afin d'identifier les écarts de contenu et de nombre de lignes.

      Lors de la configuration d'une comparaison ligne par ligne, définissez un Error Threshold. Ce seuil peut être configuré sous forme de Percentage, de Absolute Value ou de Consistent or Not.

      Remarque
      • Error Threshold Absolute Value = |Source Table Metric Value - Destination Table Metric Value|

      • Error Threshold du seuil d'erreur = (|Valeur de la métrique source - Valeur de la métrique de destination|) / Valeur de la métrique source × 100 %

  2. Après avoir configuré le Full-text Comparison Type, sélectionnez les champs à comparer. Par défaut, les champs homonymes sont comparés. Pour comparer des champs aux noms différents, cliquez manuellement sur Add Comparison Field et sélectionnez les champs source et de destination.

    • Source Field : Sélectionnez le champ de la table source à comparer.

    • Target Field : Sélectionnez le champ de la table de destination à comparer.

    • Compare Primary Keys : Pour une comparaison intégrale, spécifiez une clé primaire afin d'apparier les lignes avant de comparer leur contenu.

    • Ignore : Les options d'ignorance disponibles varient selon les types de données des champs comparés.

      Type de champ pour la comparaison

      Options d'ignorance prises en charge

      Champs de type entier (tels que INT, BIGINT, etc.)

      Vous pouvez ignorer la Difference Between Null Value and Value 0.

      Champs de type chaîne (tels que STRING, VARCHAR, TEXT, etc.)

      Vous pouvez ignorer la Difference Between Null Value and Empty String.

      Champs de type numérique (incluant les types entier et à virgule flottante)

      • Définissez la Floating Precision pour la comparaison.

      • Vous pouvez ignorer la Difference Between Null Value and Value 0.

      • Vous pouvez Ignore trailing zeros in the decimal part..

      Comparaison entre types entier et chaîne

      Vous pouvez Ignore trailing zeros in the decimal part..

      Comparaison entre types entier et à virgule flottante

      • Vous pouvez Ignore trailing zeros in the decimal part..

      • Vous pouvez ignorer la Difference Between Null Value and Value 0.

      Comparaison entre types à virgule flottante et chaîne

      Vous pouvez Ignore trailing zeros in the decimal part..

    • Operation : Cliquez sur Delete pour supprimer les champs de comparaison inutiles.

  3. Stockez les résultats de la comparaison intégrale afin de pouvoir consulter les détails une fois la comparaison terminée. Configurez une source de données pour y enregistrer les résultats.

    • Data Source Type : Seules les sources de données MaxCompute sont prises en charge.

    • Data Source Name : Sélectionnez dans la liste déroulante une source de données MaxCompute liée à l'espace de travail.

    • Connectivity : Assurez-vous que la source de données MaxCompute sélectionnée peut se connecter au groupe de ressources configuré pour les tables de comparaison.

    • Table for Storage : Cliquez sur Generate Storage Table pour créer une table de stockage dont le nom suit le format data_comparison_xxxxxx.

    • Tunnel Quota : Sélectionnez une ressource de transmission de données MaxCompute dans la liste déroulante. Pour plus d'informations, consultez la rubrique Acheter et utiliser un groupe de ressources exclusif pour Data Integration.

3. Configuration de la planification

Une fois les règles configurées, cliquez sur Scheduling Settings dans le volet de droite pour définir les propriétés de planification du nœud de comparaison de données. Pour en savoir plus, consultez la rubrique Configurer la planification d'un nœud.

III. Déploiement et opérations

1. Déployer le nœud de comparaison de données

Après avoir configuré une tâche sur le nœud de comparaison de données, validez et déployez le nœud. Une fois ces étapes effectuées, le système exécute le nœud régulièrement selon les paramètres de planification définis.

  1. Cliquez sur l'icône image dans la barre d'outils supérieure pour enregistrer le nœud.

  2. Cliquez sur l'icône image dans la barre d'outils supérieure pour déployer le nœud.

Pour connaître les procédures détaillées de déploiement des nœuds, consultez la rubrique Déployer un nœud ou un workflow.

2. Exploiter le nœud de comparaison de données

Une fois le nœud de comparaison de données déployé avec succès, effectuez des opérations dessus depuis Operation Center. Pour plus d'informations, consultez la rubrique Operation Center.

3. Consulter le rapport de validation des données

Consultez le rapport de validation des données dans le journal d'exécution de la tâche via les méthodes suivantes :

  • Consultation depuis Operation Center :

    1. Dans le coin supérieur gauche de la page, cliquez sur l'icône image, puis choisissez All Products > Data Development and O&M > Operation and Maintenance Center (Workflow) pour accéder à Operation Center.

    2. Dans le volet de navigation de gauche d'Operation Center, choisissez Auto Triggered Task O&M > Cycle Examples pour afficher les instances générées pour le nœud de comparaison de données. Dans la colonne Operation, cliquez sur More et sélectionnez View Run Logs.

    3. Sur la page des journaux, cliquez sur l'onglet Data Comparison pour consulter le rapport.

  • Consultation depuis l'onglet Log :

    Si vous exécutez le nœud de comparaison de données depuis la page Data Development, cliquez sur le lien présent dans le journal pour ouvrir le rapport de validation des données.

    Run successfully
    Click url below to view more details: https://dqc-cn-shanghai.data.aliyun.com/?defaultProjectId=814397&instanceId=1748247966625d1dfc93063c04f38a6549986
    2196c455#/job/consistency-result-check/detail
    2025-05-26 16:27:14 INFO ========================================================================
    2025-05-26 16:27:14 INFO Exit code of the Shell command 0
    2025-05-26 16:27:14 INFO --- Invocation of Shell command completed ---
    2025-05-26 16:27:14 INFO Shell run successfully!
    2025-05-26 16:27:14 INFO Current task status: FINISH
    2025-05-26 16:27:14 INFO Cost time is: 70.195s
    /home/admin/alisatasknode/taskinfo//20250526/executor/16/25/45/scn55otppszv9757kmhjsjbw/T3_6915242209.log-END-EOF