Modulariser le code LookML avec Extends

Atelier 1 heure universal_currency_alt Sans frais show_chart Intermédiaire
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Ce contenu n'est pas encore optimisé pour les appareils mobiles.
Pour une expérience optimale, veuillez accéder à notre site sur un ordinateur de bureau en utilisant un lien envoyé par e-mail.

GSP936

Logo des ateliers d'auto-formation Google Cloud

Présentation

Looker est une plate-forme de données moderne intégrée à Google Cloud. Elle vous permet d'analyser et de visualiser vos données de manière interactive. Les développeurs LookML sélectionnent les données utilisées par les utilisateurs professionnels en créant des champs, des tables, des vues et des explorations afin de personnaliser et organiser les données.

Dans cet atelier, vous allez apprendre à modulariser du code LookML en étendant des vues et des explorations.

Prérequis

Une bonne connaissance de LookML est nécessaire. Nous vous recommandons de suivre l'atelier Comprendre LookML dans Looker avant de commencer celui-ci.

Points abordés

  • Décrire comment extends permet de modulariser et de réutiliser facilement le code LookML
  • Étendre une vue en intégrant des colonnes définies dans une autre vue
  • Étendre une exploration en intégrant des jointures définies dans une autre exploration

Préparation

Avant de cliquer sur le bouton "Démarrer l'atelier"

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour vous connecter à Google Cloud le temps de l'atelier.

Pour réaliser cet atelier :

  • vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome) ;
Remarque : Ouvrez une fenêtre de navigateur en mode incognito/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • vous disposez d'un temps limité ; n'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.

Démarrer votre atelier et vous connecter à Looker

  1. Lorsque vous êtes prêt, cliquez sur Démarrer l'atelier.

    Le volet "Détails concernant l'atelier" s'affiche avec les identifiants temporaires que vous devez utiliser pour cet atelier.

    Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement.

    Notez les identifiants qui vous ont été attribués pour cet atelier dans le volet "Détails concernant l'atelier". Ils vous serviront à vous connecter à l'instance Looker de cet atelier.

    Remarque : Si vous utilisez d'autres identifiants, des messages d'erreur s'afficheront ou des frais seront appliqués.
  2. Cliquez sur Ouvrir Looker.

  3. Saisissez le nom d'utilisateur et le mot de passe fournis dans les champs Adresse e-mail et Mot de passe.

    Nom d'utilisateur :

    {{{looker.developer_username | Username}}}

    Mot de passe :

    {{{looker.developer_password | Password}}} Important : Vous devez utiliser les identifiants fournis dans le volet "Détails concernant l'atelier" sur cette page. Ne saisissez pas vos identifiants Google Cloud Skills Boost. Si vous possédez un compte Looker personnel, ne l'utilisez pas pour cet atelier.
  4. Cliquez sur Connexion.

    Une fois la connexion établie, l'instance Looker de cet atelier s'affichera.

Qu'est-ce que le paramètre Extends dans LookML ?

Extends vous permet de modulariser du code en créant des copies d'objets LookML qui peuvent ensuite être intégrées à d'autres objets LookML et modifiées indépendamment de l'objet d'origine. Dans Looker, vous pouvez étendre des vues, des explorations et des tableaux de bord définis en LookML. En modularisant votre code, extends vous permet de traiter des parties de code comme des modules ou des unités sur lesquels vous pouvez vous appuyer pour étendre votre modèle.

Pourquoi utiliser extends ?

Les raisons évoquées sont les suivantes : écriture de code DRY, facilité et rapidité des modifications, cohérence, gestion plus facile des différents ensembles de champs

Extends vous aide à écrire du code DRY (Don't Repeat Yourself, ne vous répétez pas). En copiant des objets et des sections de code préexistants, vous pouvez plus facilement créer ou modifier la logique. C'est essentiel pour faire évoluer votre modèle à mesure que votre organisation et vos cas d'utilisation se développent. Cela maximise également la cohérence de votre modèle, car vous n'avez pas à réécrire manuellement du code en permanence. De plus, cela facilite la gestion de l'accès aux champs pour différents groupes d'utilisateurs, ce qui est également important pour l'évolutivité.

Extends de vues LookML

Comme mentionné précédemment, vous pouvez étendre une vue LookML. Cette opération est généralement effectuée pour ajouter des champs et/ou mettre à jour la logique des champs existants. Un autre cas d'utilisation consiste à modifier la table de base de données spécifiée dans le paramètre sql_table_name.

Diagrammes de flux illustrant l'ajout de champs à une vue et la modification de la table d'une vue

Extension d'une exploration LookML

Les explorations sont un autre objet que vous pouvez étendre. Vous pouvez avoir plusieurs tables qui doivent toujours être jointes, en particulier dans une architecture de base de données plus normalisée. Pour éviter de réécrire les mêmes jointures à plusieurs reprises, vous pouvez créer une exploration de base qui les joint déjà, puis l'étendre pour créer d'autres explorations qui doivent joindre d'autres vues. Vous pouvez également avoir besoin du même ensemble de vues jointes, mais avec la nouvelle exploration commençant par une vue de base différente.

Diagrammes de flux décrivant l'ajout de vues à une exploration et le changement de la vue de base d'une exploration

Les quatre étapes de l'exécution d'Extend

Les étapes incluent la copie, la fusion, la résolution des conflits et la finalisation.

Les coulisses d'une exploration :

  1. Looker crée une copie de l'objet LookML qui est étendu.
  2. La copie, ou objet étendu, est fusionnée avec les définitions nouvelles ou modifiées.
  3. Si des conflits sont détectés (ce qui se produit si vous avez modifié des définitions), l'objet étendu prend le contrôle.
  4. L'objet étendu peut être utilisé dans votre modèle LookML comme n'importe quel autre objet.
Remarque  : Bien que l'implémentation d'extends soit un processus simple, il est utile de connaître ces détails si vous rencontrez un comportement inattendu.

Tâche 1 : Étendre une vue pour ajouter des colonnes d'une autre vue

Au lieu de copier/coller le même code dans plusieurs vues, vous pouvez créer une vue centralisée qui contient les définitions des dimensions et des mesures couramment utilisées. Ensuite, à l'aide du paramètre "extends", vous pouvez intégrer ces dimensions et ces mesures dans plusieurs vues. Il vous suffit d'utiliser des paramètres spécifiques pour permettre à extends d'identifier la vue à partir de laquelle Looker doit effectuer la copie.

D'un point de vue commercial, c'est très pratique, car vous pouvez disposer d'une base de code centralisée qui est réutilisée par plusieurs équipes. Ces équipes peuvent étendre le code de base et le personnaliser en fonction de leurs propres besoins. L'avantage de cette abstraction est que vous pouvez mettre à jour les dimensions de localisation une seule fois, et la mise à jour est ensuite propagée à toutes les vues qui étendent cette vue de localisation.

Dans cette tâche, vous allez créer une vue contenant des dimensions de localisation (par exemple, la ville et le pays) qui pourront être réutilisées en étendant d'autres vues, comme les vues "Utilisateurs" et "Événements".

Créer une vue

  1. Cliquez sur le bouton d'activation pour passer en mode Développement.

  2. Dans l'onglet Développer, sélectionnez le projet LookML qwiklabs-ecommerce.

  3. Cliquez sur (+) à côté d'Explorateur de fichiers, puis sélectionnez Créer une vue.

  4. Nommez la vue location, faites-la glisser sous le dossier views et ajoutez-y le code suivant :

view: location { extension: required dimension: city { type: string sql: ${TABLE}.city ;; } dimension: state { type: string sql: ${TABLE}.state ;; map_layer_name: us_states } dimension: zip { type: zipcode sql: ${TABLE}.zip ;; } dimension: country { type: string map_layer_name: countries sql: ${TABLE}.country ;; } dimension: latitude { type: number sql: ${TABLE}.latitude ;; } dimension: longitude { type: number sql: ${TABLE}.longitude ;; } }

Ce fichier d'affichage contient les définitions des dimensions que vous souhaitez réutiliser dans d'autres vues : city, country, latitude, longitude, state et zip.

Notez la ligne 2 (extension: required), qui signifie que cette vue ne peut pas être associée à d'autres vues et ne sera donc pas visible par les utilisateurs. Pour utiliser cette vue, vous devez l'intégrer à une autre à l'aide du paramètre extends, comme vous le ferez dans la section suivante.

Notez également que, contrairement aux autres vues, vous n'avez pas besoin d'inclure le paramètre sql_table_name dans la définition de la vue pour identifier la table à utiliser pour les données. Au lieu de cela, cette vue utilisera la table spécifiée dans la vue qui sera étendue dans la section suivante.

  1. Cliquez sur Enregistrer les modifications, puis sur Valider le LookML.
    Aucune erreur LookML n'a été détectée. Votre fichier doit ressembler à ce qui suit :

Le fichier location.view ouvert et mis à jour, qui comprend 31 lignes de code

Ajouter un extends

  1. Ouvrez le fichier users.view.

  2. Sur une nouvelle ligne en haut du fichier (ligne 1), ajoutez le code suivant, qui indique que la vue des utilisateurs est étendue à l'aide de la vue "Location" :

include: location.view
  1. À la ligne 3, au-dessus de sql_table_name, ajoutez le code suivant :
extends: [location] Remarque  : Comme des extends ont été ajoutés, le paramètre sql_table_name identifie la table à utiliser comme source de données pour les objets existants dans le fichier et pour les objets ajoutés depuis "geography" avec l'extend.
  1. Supprimez les définitions de dimensions existantes pour city, country, latitude, longitude, state et zip (c'est l'ordre actuel dans le fichier). Au lieu d'être explicitement définies dans le fichier users.view, ces dimensions sont intégrées à l'aide de l'instruction "extend from" (étendre à partir de) location.view.

  2. Cliquez sur Enregistrer les modifications, puis sur Valider le LookML.

  3. Ouvrez le fichier event.view.

  4. Sur une nouvelle ligne en haut du fichier (ligne 1), ajoutez le code suivant :

include: location.view
  1. À la ligne 3, au-dessus de sql_table_name, ajoutez le code suivant :
extends: [location]
  1. Comme vous l'avez fait pour la vue "users", supprimez les définitions de dimension existantes pour city, country, latitude, longitude, state et zip.

  2. Cliquez sur Enregistrer les modifications, puis sur Valider le LookML.

Votre fichier doit maintenant ressembler à ceci :

Le fichier events.view mis à jour est ouvert et comporte 25 lignes de code.

Tester la vue étendue pour les utilisateurs et les événements dans l'exploration "Articles de la commande"

  1. Accédez à la page "Exploration" pour les Articles de commande.

  2. Dans la vue Users, sélectionnez les dimensions City, Country, Latitude, Longitude, State et Zip.

  3. Cliquez sur Exécuter.

Même si vous avez supprimé les définitions de ces dimensions (ville, pays, latitude, longitude, état et code postal) du fichier users.view, vous pouvez les voir et les utiliser, car elles ont été ajoutées au fichier users.view à l'aide d'une extension du fichier location.view.

Visualisation de l'exploration des articles de commande affichant les colonnes des fichiers "users.view" et "location.view"

  1. Accédez à l'exploration Événements.

  2. Dans la vue Événements, sélectionnez les dimensions Ville, Pays, Latitude, Longitude, État et Code postal.

Visualisation d'exploration des articles de commande affichant les dimensions du fichier events.view

Encore une fois, même si vous avez supprimé les définitions de ces dimensions du fichier events.view, vous pouvez les voir et les utiliser, car elles ont été ajoutées au fichier events.view à l'aide d'une extension.

  1. Revenez au fichier events.view dans l'IDE Looker.

Valider les modifications et les déployer en production

  1. Cliquez sur Valider le LookML, puis sur Valider les modifications et envoyer.

  2. Ajoutez un message de commit, puis cliquez sur Valider.

  3. Enfin, cliquez sur Déployer en production.

Cliquez sur Vérifier ma progression pour valider l'objectif. Étendre une vue pour ajouter des colonnes d'une autre vue

Tâche 2 : Étendre une exploration pour ajouter des jointures à partir d'une autre exploration

Au lieu de copier/coller les mêmes jointures dans plusieurs explorations d'un fichier de modèle, vous pouvez créer une exploration de base qui contient les jointures les plus couramment utilisées dans vos explorations. Vous pouvez ensuite utiliser extends pour réutiliser cette exploration de base afin de définir et de personnaliser d'autres explorations définies dans le fichier de modèle.

Un cas d'utilisation courant consiste à créer une exploration principale qui peut servir de base à d'autres explorations pour des groupes d'utilisateurs ou des équipes spécifiques au sein de votre organisation.

Dans cette section, vous allez créer une exploration de base contenant des jointures pour toutes les vues dont ont besoin plusieurs équipes métier. Vous utiliserez ensuite extends pour réutiliser et personnaliser cette exploration de base pour plusieurs équipes.

  1. Accédez au fichier training_ecommerce.model.

  2. Après la définition de l'exploration order_items (vers la ligne 43), créez une exploration de base nommée base_events à l'aide du code suivant :

explore: base_events { extension: required join: event_session_facts { type: left_outer sql_on: ${events.session_id} = ${event_session_facts.session_id} ;; relationship: many_to_one } join: users { type: left_outer sql_on: ${events.user_id} = ${users.id} ;; relationship: many_to_one } }

Notez à nouveau la ligne extension: required, qui signifie que cette exploration n'est pas visible par les utilisateurs. Votre fichier doit se présenter comme suit :

Le fichier training.ecommerce.model ouvert avec les lignes du code de l'exploration base_events ajoutées et mises en surbrillance

Ensuite, vous allez modifier la définition existante de l'exploration events pour l'étendre avec les vues de base_events.

  1. Dans l'exploration events, supprimez les jointures existantes pour event_session_facts et users.

Ces vues jointes sont intégrées à partir de l'exploration base_events avec le code ajouté à l'étape suivante. Notez que la définition de jointure pour event_session_funnel reste afin de personnaliser cette exploration pour un ensemble spécifique d'utilisateurs. Votre fichier doit se présenter comme suit :

Le fichier training.ecommerce.model ouvert avec les lignes 43 à 56 mises à jour en surbrillance

  1. Sous la première ligne de la définition des explorations events, ajoutez le code suivant :
description: "Start here for Event analysis" fields: [ALL_FIELDS*] from: events view_name: events extends: [base_events] Remarque  : Les nouvelles lignes fournissent une description pour le bouton d'informations sur l'exploration, indiquent quels champs (provenant de quel fichier d'affichage) doivent être inclus (tous les champs) et spécifient l'exploration utilisée pour étendre l'exploration events.

Votre définition finale de l'exploration events doit ressembler à ceci :

Le fichier training.ecommerce.model avec les lignes d'exploration d'événements mis à jour

Remarque  : Les champs from et view_name pointent tous les deux vers la vue "Événements". Pourquoi inclure les deux ? Le mot clé from permet de s'assurer que vous utilisez la vue d'origine appelée "events" (et non un alias ou une version étendue). Le mot clé view_name correspond au nom du fichier d'affichage, qui peut être un alias, etc.
  1. Sous la définition de l'exploration events modifiée, pour ajouter une exploration nommée conversions, utilisez le code suivant :
explore: conversions { description: "Start here for Conversion Analysis" fields: [ALL_FIELDS*, -order_items.total_revenue_from_completed_orders] from: events view_name: events extends: [base_events] join: order_items { type: left_outer sql_on: ${users.id} = ${order_items.user_id} ;; relationship: many_to_many } }

Les lignes 2 à 6 fournissent une description pour le bouton d'informations de l'exploration, identifient les champs à inclure et le fichier d'affichage à partir duquel les extraire (tous les champs, à l'exception de la mesure total_revenue_from_completed_orders dans la vue "order items"), et spécifient l'exploration utilisée pour étendre cette exploration (c'est-à-dire la même exploration base_events que celle utilisée pour étendre l'exploration events).

  1. Cliquez sur Enregistrer les modifications, puis sur Valider le LookML.
    Aucune erreur LookML n'a été détectée. Votre fichier doit ressembler à ce qui suit :

Le fichier training.ecommerce.model avec les lignes de code "explore" des conversions ajoutées

Il est maintenant temps de tester vos nouvelles explorations. Accédez à chaque exploration (Événements et Conversions) et notez les vues incluses. Les explorations partagent un ensemble de vues de base, mais sont personnalisées avec des vues supplémentaires. Chacune s'adresse donc à une audience différente.

  1. Accédez à l'exploration Événements, qui contient les vues jointes dans l'exploration de base (Événements, Faits sur les sessions d'événements, Utilisateurs) ainsi que la vue Entonnoir de session d'événement.

La page d'exploration des événements listant les champs personnalisés, les faits de session d'événement, l'entonnoir de session d'événement, les événements et les utilisateurs sous l'onglet "Tous les champs"

  1. Pour consulter la description, placez le pointeur sur Informations (bouton d'info) à côté d'Events.

  2. Accédez à l'exploration Conversions, qui contient les vues jointes dans l'exploration de base (Events, Event Session Facts, Users) ainsi que la vue Order Items.

La page "Conversations" qui répertorie les champs personnalisés, les faits de session d'événement, les événements, les éléments de commande et les utilisateurs sous l'onglet "Tous les champs"

  1. Pour consulter la description, placez le pointeur de la souris sur Informations (bouton d'info) à côté de Conversions.

  2. Examinez les mesures dans la vue Order Items (Articles de la commande). La mesure total_revenue_from_completed_orders (Revenu total des commandes finalisées) n'y figure pas.

  3. Revenez au fichier training_ecommerce.model dans l'IDE Looker.

Valider les modifications et les déployer en production

  1. Cliquez sur Valider le LookML, puis sur Valider les modifications et envoyer.

  2. Ajoutez un message de commit, puis cliquez sur Valider.

  3. Enfin, cliquez sur Déployer en production.

Cliquez sur Vérifier ma progression pour valider l'objectif. Étendre une exploration pour ajouter des jointures à partir d'une autre exploration

Félicitations !

Dans cet atelier, vous avez créé une vue contenant des dimensions de localisation en étendant les vues "users" et "events". Vous avez également créé une exploration de base contenant des jointures pour plusieurs vues, puis vous avez utilisé extends pour réutiliser et personnaliser l'exploration de base pour plusieurs équipes et utilisateurs.

Étapes suivantes et informations supplémentaires

Formations et certifications Google Cloud

Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.

Dernière mise à jour du manuel : 22 avril 2024

Dernier test de l'atelier : 6 septembre 2023

Copyright 2026 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.

Avant de commencer

  1. Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
  2. Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
  3. En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.

Utilisez la navigation privée

  1. Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
  2. Cliquez sur Ouvrir la console en navigation privée

Connectez-vous à la console

  1. Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
  2. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
  3. Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.

Ce contenu n'est pas disponible pour le moment

Nous vous préviendrons par e-mail lorsqu'il sera disponible

Parfait !

Nous vous contacterons par e-mail s'il devient disponible

Un atelier à la fois

Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci

Utilisez la navigation privée pour effectuer l'atelier

Ouvrez une fenêtre de navigateur en mode navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.