Utiliser des tâches liées à la qualité des données

Ce document explique comment créer des tâches liées à la qualité des données Knowledge Catalog, qui vous permettent de planifier et d'exécuter des contrôles de la qualité des données de vos tables BigQuery intégrées et externes.

Pour en savoir plus, consultez Présentation des tâches liées à la qualité des données.

Avant de commencer

Ce document suppose que vous disposez déjà d'un lac Knowledge Catalog dans lequel créer la tâche liée à la qualité des données.

Activer les API et services Google

  1. Activez l'API Dataproc.

    Activer l'API

  2. Activez l'accès privé à Google pour votre réseau ou votre sous-réseau. Activez l'accès privé à Google sur le réseau que vous prévoyez d'utiliser pour les tâches liées à la qualité des données Knowledge Catalog. Si vous ne spécifiez pas de réseau ni de sous-réseau lorsque vous créez la tâche liée à la qualité des données Knowledge Catalog, Knowledge Catalog utilise le sous-réseau par défaut. Dans ce cas, vous devez activer l'accès privé à Google sur le sous-réseau par défaut.

Créer un fichier de spécification

Knowledge Catalog utilise CloudDQ Open Source comme programme de pilote. Les exigences de contrôle de la qualité des données Knowledge Catalog sont définies dans des fichiers de spécification YAML de CloudDQ.

Comme entrée de la tâche liée à la qualité des données, vous pouvez avoir un fichier YAML ou une archive ZIP contenant un ou plusieurs fichiers YAML. Il est recommandé de capturer les exigences de contrôle de la qualité des données dans des fichiers de spécification YAML distincts, avec un fichier pour chaque section.

Pour préparer un fichier de spécification, procédez comme suit :

  1. Créez un ou plusieurs fichiers de spécification YAML CloudDQ qui définissent vos exigences de contrôle de la qualité des données. Pour en savoir plus sur la syntaxe requise, consultez la section À propos des fichiers de spécification de ce document.

    Enregistrez le fichier de spécification YAML au format .yml ou .yaml. Si vous créez plusieurs fichiers de spécification YAML, enregistrez-les tous dans une même archive ZIP.

  2. Créez un bucket Cloud Storage.
  3. Importez le fichier de spécification dans le bucket Cloud Storage.

À propos des fichiers de spécification

Votre fichier de spécification YAML CloudDQ doit comporter les sections suivantes :

  • Règles (définies dans le nœud YAML rules de premier niveau) : liste des règles à exécuter. Vous pouvez créer ces règles à partir de types de règles prédéfinis, comme NOT_NULL et REGEX, ou les étendre avec des instructions SQL personnalisées, telles que CUSTOM_SQL_EXPR et CUSTOM_SQL_STATEMENT. L'instruction CUSTOM_SQL_EXPR signale comme un échec toutes les lignes que custom_sql_expr a évaluées comme False. L'instruction CUSTOM_SQL_STATEMENT signale comme un échec toute valeur renvoyée par l'instruction entière.

  • Filtres de lignes (définis dans le nœud YAML row_filters de premier niveau) : les expressions SQL renvoient une valeur booléenne qui définit les filtres permettant d'extraire un sous-ensemble de données de l'entité sous-jacente soumise à la validation.

  • Liaisons de règles (définies dans le nœud YAML rule_bindings de premier niveau) : définit les règles (rules) et filtres de règles (rule filters) à appliquer aux tables.

  • Dimensions de règle (définies dans le nœud YAML rule_dimensions) : définit la liste des dimensions de règle de qualité des données qu'une règle peut définir dans le champ dimension correspondant.

    Exemple :

    rule_dimensions:
      - consistency
      - correctness
      - duplication
      - completeness
      - conformance

    Le champ dimension est facultatif pour une règle. La section des dimensions de règle est obligatoire si dimension apparaît dans une règle.

Pour en savoir plus, consultez le guide de référence de CloudDQ et les exemples de fichiers de spécification.

Créer un ensemble de données pour stocker les résultats

  • Pour stocker les résultats, vous devez créer un ensemble de données BigQuery.

    L'ensemble de données doit se trouver dans la même région que les tables sur lesquelles vous exécutez la tâche liée à la qualité des données.

    Knowledge Catalog utilise cet ensemble de données, et crée ou réutilise une table de votre choix pour stocker les résultats.

Créer un compte de service

Créez un compte de service disposant des rôles et autorisations IAM (Identity and Access Management) suivants :