GSP936
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
-
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.
-
Cliquez sur Ouvrir Looker.
-
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.
-
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 ?

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.

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.

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

Les coulisses d'une exploration :
- Looker crée une copie de l'objet LookML qui est étendu.
- La copie, ou objet étendu, est fusionnée avec les définitions nouvelles ou modifiées.
- 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.
- 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
-
Cliquez sur le bouton d'activation pour passer en mode Développement.
-
Dans l'onglet Développer, sélectionnez le projet LookML qwiklabs-ecommerce.
-
Cliquez sur (+) à côté d'Explorateur de fichiers, puis sélectionnez Créer une vue.
-
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.
- 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 :

Ajouter un extends
-
Ouvrez le fichier users.view.
-
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
- À 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.
-
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.
-
Cliquez sur Enregistrer les modifications, puis sur Valider le LookML.
-
Ouvrez le fichier event.view.
-
Sur une nouvelle ligne en haut du fichier (ligne 1), ajoutez le code suivant :
include: location.view
- À la ligne 3, au-dessus de
sql_table_name, ajoutez le code suivant :
extends: [location]
-
Comme vous l'avez fait pour la vue "users", supprimez les définitions de dimension existantes pour city, country, latitude, longitude, state et zip.
-
Cliquez sur Enregistrer les modifications, puis sur Valider le LookML.
Votre fichier doit maintenant ressembler à ceci :

Tester la vue étendue pour les utilisateurs et les événements dans l'exploration "Articles de la commande"
-
Accédez à la page "Exploration" pour les Articles de commande.
-
Dans la vue Users, sélectionnez les dimensions City, Country, Latitude, Longitude, State et Zip.
-
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.

-
Accédez à l'exploration Événements.
-
Dans la vue Événements, sélectionnez les dimensions Ville, Pays, Latitude, Longitude, État et Code postal.

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.
- Revenez au fichier events.view dans l'IDE Looker.
Valider les modifications et les déployer en production
-
Cliquez sur Valider le LookML, puis sur Valider les modifications et envoyer.
-
Ajoutez un message de commit, puis cliquez sur Valider.
-
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.
-
Accédez au fichier training_ecommerce.model.
-
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 :

Ensuite, vous allez modifier la définition existante de l'exploration events pour l'étendre avec les vues de base_events.
- 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 :

- 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 :

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.
- 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).
- 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 :

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.
- 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.

-
Pour consulter la description, placez le pointeur sur Informations (
) à côté d'Events.
-
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.

-
Pour consulter la description, placez le pointeur de la souris sur Informations (
) à côté de Conversions.
-
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.
-
Revenez au fichier training_ecommerce.model dans l'IDE Looker.
Valider les modifications et les déployer en production
-
Cliquez sur Valider le LookML, puis sur Valider les modifications et envoyer.
-
Ajoutez un message de commit, puis cliquez sur Valider.
-
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.