Créer et exécuter un workflow SQL dans Dataform

Ce guide de démarrage rapide vous présente le processus suivant dans Dataform pour créer un workflow SQL et l'exécuter dans BigQuery:

Avant de commencer

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery and Dataform APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery and Dataform APIs.

    Enable the APIs

Rôles requis

Pour obtenir les autorisations nécessaires pour effectuer toutes les tâches de ce tutoriel, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet:

  • Administrateur Dataform (roles/dataform.admin) – Dépôts
  • Éditeur Dataform (roles/dataform.editor) : espaces de travail et appels de workflow

Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

Créer un dépôt Dataform

  1. Dans la console Google Cloud, accédez à la page Dataform page.

    Accéder à Dataform

  2. Cliquez sur Créer un dépôt.

  3. Sur la page CRÉER UN DÉPÔT, procédez comme suit :

    1. Dans le champ ID du dépôt, saisissez quickstart-repository.

    2. Dans la liste Région, sélectionnez europe-west4.

    3. Cliquez sur Créer.

Créer et initialiser un espace de travail de développement Dataform

  1. Dans la console Google Cloud, accédez à la page Dataform page.

    Accéder à Dataform

  2. Cliquez sur quickstart-repository.

  3. Cliquez sur Créer un espace de travail de développement.

  4. Dans la fenêtre Créer un espace de travail de développement, procédez comme suit :

    1. Dans le champ ID de l'espace de travail, saisissez quickstart-workspace.

    2. Cliquez sur Créer.

    La page de l'espace de travail de développement s'affiche.

  5. Cliquez sur Initialiser l'espace de travail.

Créer une vue

Dans les sections suivantes, vous allez définir une vue que vous utiliserez ultérieurement comme source de données pour une table.

Créer un fichier SQLX pour définir une vue

  1. Dans le volet Fichiers, à côté de definitions/, cliquez sur le menu Plus.

  2. Cliquez sur Créer un fichier.

  3. Dans le volet Créer un fichier, procédez comme suit :

    1. Dans le champ Ajouter un chemin d'accès au fichier, saisissez definitions/quickstart-source.sqlx.

    2. Cliquez sur Créer un fichier.

Définir une vue

  1. Dans le volet Fichiers, développez le dossier "definitions".

  2. Cliquez sur definitions/quickstart-source.sqlx.

  3. Dans le fichier, saisissez l'extrait de code suivant :

    config {
     type: "view"
    }
    
    SELECT
     "apples" AS fruit,
     2 AS count
    UNION ALL
    SELECT
     "oranges" AS fruit,
     5 AS count
    UNION ALL
    SELECT
     "pears" AS fruit,
     1 AS count
    UNION ALL
    SELECT
     "bananas" AS fruit,
     0 AS count
    
  4. Cliquez sur Format.

Créer une table

Dans les sections suivantes, vous allez définir le type de table dans un fichier SQLX, puis écrire une instruction SELECT pour définir la structure de la table dans ce même fichier.

Créer un fichier SQLX pour définir une table

  1. Dans le volet Fichiers, à côté de definitions/, cliquez sur le menu Plus, puis sélectionnez Créer un fichier.

  2. Dans le champ Ajouter un chemin d'accès au fichier, saisissez definitions/quickstart-table.sqlx.

  3. Cliquez sur Créer un fichier.

Définir le type de la table, sa structure et ses dépendances

  1. Dans le volet Fichiers, développez le répertoire definitions/.

  2. Sélectionnez quickstart-table.sqlx, puis spécifiez le type de table et l'instruction SELECT suivants:

    config {
     type: "table"
    }
    
    SELECT
     fruit,
     SUM(count) as count
    FROM ${ref("quickstart-source")}
    GROUP BY 1
    
  3. Cliquez sur Format.

Après avoir défini le type de table, Dataform génère une erreur de validation de requête, car quickstart-source n'existe pas encore dans BigQuery. Cette erreur est résolue lorsque vous exécuterez le workflow SQL plus tard dans ce tutoriel.

Accorder à Dataform l'accès à BigQuery

Pour exécuter des workflows dans BigQuery, le compte de service Dataform doit disposer des rôles suivants:

Pour attribuer ces rôles, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page IAM.

    Accéder à la page IAM

  2. Cliquez sur Ajouter.

  3. Dans le champ Nouveaux comptes principaux, saisissez l'ID de votre compte de service Dataform.

  4. Dans la liste déroulante Sélectionner un rôle, sélectionnez le rôle Utilisateur de tâche BigQuery.

  5. Cliquez sur Ajouter un autre rôle, puis sélectionnez le rôle Éditeur de données BigQuery dans la liste déroulante Sélectionner un rôle.

  6. Cliquez sur Ajouter un autre rôle, puis sélectionnez le rôle Lecteur de données BigQuery dans la liste déroulante Sélectionner un rôle.

  7. Cliquez sur Enregistrer.

Exécuter le workflow

  1. Dans la console Google Cloud, accédez à la page Dataform page.

    Accéder à Dataform

  2. Sur la page quickstart-workspace, cliquez sur Démarrer l'exécution.

  3. Cliquez sur Toutes les actions.

  4. Dans le volet Exécuter, cliquez sur Démarrer l'exécution.

    Dataform utilise les paramètres du dépôt par défaut pour créer le contenu de votre workflow dans un ensemble de données BigQuery nommé dataform.

Afficher les journaux d'exécution dans Dataform

  1. Sur la page quickstart-repository, cliquez sur Journaux d'exécution de workflow.

  2. Pour afficher les détails de votre exécution, cliquez sur la dernière exécution.

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud , procédez comme suit :

Supprimer l'ensemble de données créé dans BigQuery

Pour éviter que des frais ne vous soient facturés pour les éléments BigQuery, supprimez l'ensemble de données dataform.

  1. Dans la console Google Cloud, accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans le panneau Explorateur, développez votre projet et sélectionnez dataform.

  3. Cliquez sur le menu Actions, puis sélectionnez Supprimer.

  4. Dans la boîte de dialogue Supprimer l'ensemble de données, saisissez delete dans le champ, puis cliquez sur Supprimer.

Supprimer l'espace de travail de développement Dataform

La création d'un espace de travail de développement Dataform n'entraîne aucuns frais. Toutefois, pour le supprimer, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Dataform page.

    Accéder à Dataform

  2. Cliquez sur quickstart-repository.

  3. Dans l'onglet Espaces de travail de développement, cliquez sur le menu Plus de quickstart-workspace, puis sélectionnez Supprimer.

  4. Pour confirmer l'opération, cliquez sur Supprimer.

Supprimer le dépôt Dataform

La création d'un dépôt Dataform n'entraîne aucuns frais. Toutefois, pour le supprimer, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Dataform page.

    Accéder à Dataform

  2. À côté de quickstart-repository, cliquez sur le menu Plus, puis sélectionnez Supprimer.

  3. Dans la fenêtre Supprimer le dépôt, saisissez le nom du dépôt pour confirmer la suppression.

  4. Pour confirmer l'opération, cliquez sur Supprimer.

Étape suivante