GSP1020
Présentation
Looker est une plate-forme de données moderne intégrée à Google Cloud. Elle 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 d'organiser les workflows de données, et de créer des applications de données personnalisées.
Dans cet atelier, vous allez découvrir les bonnes pratiques pour écrire du code LookML qui améliore l'expérience des utilisateurs professionnels et des développeurs. Cela inclut l'amélioration de l'usabilité et de la durabilité des projets LookML en réutilisant les objets existants et en appliquant des conventions d'attribution de noms descriptives. Vous allez également utiliser des paramètres LookML pour faciliter l'utilisation des explorations en fournissant un contexte supplémentaire et en personnalisant les objets visibles par les utilisateurs professionnels.
Prérequis
Une bonne maîtrise du langage LookML est nécessaire. Nous vous recommandons de suivre l'atelier Comprendre LookML dans Looker avant de commencer celui-ci.
Objectifs de l'atelier
- Utiliser des noms de champs descriptifs pour définir des dimensions et des mesures
- Exploiter des paramètres supplémentaires pour organiser vos données et leur fournir plus de contexte
- Créer et afficher le moins de champs et d'explorations possible
- Écrire du code LookML durable et modulaire qui peut être facilement mis à jour, géré et réutilisé
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.
Bonnes pratiques pour écrire du code LookML
Cette section présente les cinq principales bonnes pratiques à suivre pour écrire du code LookML qui améliore l'expérience des utilisateurs professionnels et des développeurs. Pour cet atelier, vous allez vous concentrer sur les quatre premiers points.
Utiliser des noms de champs descriptifs
L'utilisation de noms de champs descriptifs pour définir les dimensions et les mesures aide les utilisateurs professionnels et les développeurs à trouver ce dont ils ont besoin (point 1 des bonnes pratiques). Voici quelques exemples :
- Nommer les mesures selon leur fonction d'agrégation ou avec des termes courants :
total_[CHAMP] pour une somme, nombre_[CHAMP], moyenne_[CHAMP], etc.
- Nommer les ratios de manière descriptive :
pourcentage_commandes_par_client_connu est plus clair que pourcentage_connu.
- Nommer clairement les champs yesno :
la_commande_est_renvoyée ou est-ce-que_la_commande_est_renvoyée, au lieu de renvoyée.
- Éviter d'utiliser les mots "date" ou "heure" dans un groupe de dimensions. Looker ajoute déjà chaque élément temporel à la fin du nom de la dimension. Par exemple,
date_création deviendrait date_création_date.
Exploiter des paramètres supplémentaires
Exploiter des paramètres supplémentaires peut vous aider à organiser les données exposées aux utilisateurs professionnels et à leur fournir plus de contexte. Vous devez inclure des étiquettes et des descriptions pour aider les utilisateurs professionnels à identifier les champs et les explorations dont se servir pour leurs workflows (points 1 et 4 des bonnes pratiques).
Vous devez également utiliser le paramètre group_label pour regrouper les champs et les explorations similaires dans des catégories logiques afin de faciliter la navigation (point 2 des bonnes pratiques).
Enfin, vous devez utiliser drill_fields pour sélectionner les options supplémentaires qu'un utilisateur professionnel voit lorsqu'il clique sur la valeur d'une cellule de table lors de l'exploration des données.
Créer et afficher le moins de champs et d'explorations possible
Il est très utile de créer et d'afficher le moins de champs et d'explorations possible, tout en permettant aux utilisateurs professionnels d'accéder facilement aux réponses dont ils ont besoin (point 3 des bonnes pratiques). Le nombre optimal de champs et d'explorations varie selon les entreprises, mais en avoir trop a tendance à dérouter les utilisateurs finaux.
Vous pouvez utiliser le paramètre fields pour limiter les champs présentés à l'utilisateur professionnel dans une exploration spécifique, et le paramètre hidden pour masquer un champ ou une exploration dans l'ensemble du modèle.
Écrire du code LookML durable et modulaire
Il est essentiel d'écrire du code LookML durable et maintenable, qui peut être facilement mis à jour, géré et réutilisé, pour que les projets restent fonctionnels.
Bien que l'organisation et la qualité du code LookML sous-jacent ne soient pas immédiatement apparentes, elles peuvent également affecter l'expérience globale des utilisateurs professionnels. Plus précisément, si vous (en tant que développeur LookML) pouvez passer moins de temps à écrire et à gérer votre code de base, vous pouvez modifier ou implémenter plus rapidement les attributs et les fonctionnalités demandés par les utilisateurs professionnels.
Voici quelques idées pour écrire du code LookML durable et modulaire :
- Utilisez des opérateurs de substitution dans votre code pour minimiser les références codées en dur à votre base de données sous-jacente.
- Identifiez les cas appropriés pour les tables dérivées SQL par rapport aux tables dérivées natives.
- Les tables dérivées natives favorisent la réutilisation du code en s'appuyant sur les objets LookML existants dans votre modèle pour définir de nouvelles structures ou agrégations qui n'existent pas encore dans votre base de données sous-jacente.
- Les tables dérivées SQL sont utilisées pour des agrégations plus personnalisées ou complexes qui ne sont pas facilement réalisables avec les tables dérivées natives.
- Utilisez extends ou les affinages pour enrichir les vues et les explorations existantes.
- Vous pouvez étendre une vue ou une exploration pour créer une copie de l'objet d'origine et y appliquer des modifications. Pour en savoir plus et vous entraîner, consultez l'atelier Modulariser le code LookML avec Extends.
- Vous pouvez également créer un affinage pour adapter une vue ou une exploration existante sans modifier le fichier LookML qui la contient. Pour en savoir plus et vous entraîner, consultez l'atelier Optimiser les performances des requêtes LookML.
Optimiser les performances des requêtes d'exploration
Afin d'optimiser les performances des requêtes d'exploration pour les utilisateurs professionnels :
- évitez de joindre des vues superflues dans une exploration ;
- déclarez une clé primaire dans le fichier d'affichage et définissez une relation de jointure à l'aide du paramètre
relationship pour vous assurer que les agrégations correctes sont produites ;
- définissez des jointures
many_to_one entre les vues du niveau le plus précis au niveau de détail le plus élevé ;
- rendez persistantes les tables dérivées pour les requêtes complexes à longue durée d'exécution ou pour les requêtes fréquemment utilisées par un grand nombre d'utilisateurs ou d'applications.
Pour en savoir plus sur ces sujets, consultez la page Ce qu'il faut faire et ne pas faire avec Looker et l'atelier Optimiser les performances des requêtes LookML.
Tâche 1 : Créer des champs sur la base de champs existants avec des conventions d'attribution de noms descriptives
Lorsque vous créez des dimensions et des mesures, vérifiez toujours si des objets LookML existants dans votre modèle peuvent être réutilisés. Pour faciliter les mises à jour du code, nous vous recommandons d'utiliser des opérateurs de substitution dans l'ensemble de votre code afin de minimiser les références codées en dur aux objets de votre base de données sous-jacente.
En plus d'exploiter les objets existants, choisissez des noms descriptifs lorsque vous créez des objets. Cela peut aider les développeurs et les utilisateurs professionnels à trouver des champs pour leur code ou leur analyse. Dans cette tâche, vous allez créer une dimension yesno pour identifier les commandes annulées en vous appuyant sur la dimension d'état existante. Vous allez également créer des mesures qui exploitent les objets existants pour calculer le pourcentage de revenus perdus à cause des commandes annulées. Enfin, vous allez appliquer des conventions d'attribution de noms descriptives aux nouvelles dimensions et mesures.
Créer une dimension "yesno" à partir d'une dimension existante
-
Cliquez sur le bouton d'activation pour passer en mode Développement.
-
Dans le menu Développer, sélectionnez le projet qwiklabs_ecommerce.
-
Ouvrez order_items.view sous views.
-
Examinez la dimension status.
Notez que la syntaxe utilise l'opérateur de substitution ${TABLE}.column_name, qui référence une colonne de la table identifiée dans le paramètre sql_table_name en haut d'un fichier d'affichage.
Dans ce cas, ${TABLE}.status fait référence à la colonne d'état dans la table cloud-training-demos.looker_ecomm.order_items. Vous pouvez partir de cette dimension existante pour créer une dimension yesno qui indique si une commande a été annulée.
Les dimensions order_is_canceled et is_order_canceled respectent la bonne pratique des noms descriptifs, car elles identifient clairement l'objet annulé comme une commande. Le choix entre les deux options est une décision de convention de dénomination qui peut être prise dans votre équipe.
- Sous la dimension
status, ajoutez le code suivant pour une nouvelle dimension "yesno" :
dimension: order_is_canceled {
type: yesno
sql: ${status} = "" ;;
}
Notez que la syntaxe utilise l'opérateur de substitution ${field_name}, qui fait référence à une dimension ou mesure existante dans la vue actuelle. Dans ce cas, ${status} référence la dimension status dans la vue order_items.
Notez également que ce code n'inclut pas encore de valeur pour l'état. Bien que vous puissiez vous appuyer sur la dimension d'état existante, vous devez tout de même savoir quelle valeur de la dimension est utilisée pour identifier les commandes annulées.
Techniquement, toutes ces options pourraient fonctionner pour identifier la valeur correcte. Toutefois, l'option de l'hypothèse la plus sensée est inefficace et peut mener à une valeur incorrecte. Vous devriez continuer à tester votre code en exécutant une requête sur la nouvelle dimension dans l'exploration jusqu'à ce que vous obteniez le résultat attendu.
Si vous exécutez une requête sur la dimension d'état dans la vue "Order Items" (Articles de la commande) de l'exploration du même nom, vous obtenez ses valeurs de dimension, mais les valeurs affichées dans l'exploration peuvent refléter une mise en forme supplémentaire appliquée avec le code LookML.
L'exécution d'une requête sur la table order_items directement dans l'exécuteur SQL vous permet d'afficher les valeurs de données brutes dans la colonne d'état.
-
Laissez l'onglet du navigateur contenant l'IDE ouvert, et ouvrez une nouvelle fenêtre Looker dans un nouvel onglet du navigateur.
-
Accédez à Développer > Exécuteur SQL.
-
À côté des connexions, cliquez sur Paramètres (
), puis sur Search public projects (Rechercher des projets publics).
-
Pour Project (Projet), saisissez cloud-training-demos, puis appuyez sur Entrée.
-
Pour Dataset (Ensemble de données), sélectionnez looker_ecomm.
La liste des tables disponibles dans cet ensemble de données BigQuery s'affiche.
-
Pour sélectionner les valeurs distinctes de la colonne status, ajoutez la requête suivante à la fenêtre de requête SQL, puis cliquez sur Exécuter :
SELECT distinct(status)
FROM cloud-training-demos.looker_ecomm.order_items
ORDER BY status
Remarque : Notez que les valeurs incluent Cancelled, qui utilise l'orthographe britannique avec deux L, au lieu de Canceled en orthographe américaine.
-
Fermez l'onglet de navigateur de l'exécuteur SQL et revenez à l'onglet de navigateur de l'IDE.
-
Complétez le code LookML pour la nouvelle dimension yesno :
dimension: order_is_canceled {
type: yesno
sql: ${status} = "Cancelled" ;;
}
-
Cliquez sur Enregistrer les modifications.
Laissez l'onglet de navigateur de l'IDE Looker ouvert.
-
Ouvrez une nouvelle fenêtre Looker dans un onglet du navigateur.
-
Accédez à Exploration > Order Items (Articles de la commande).
-
Dans le volet "Données", cliquez sur l'onglet SQL.
-
Sous Order Items > Dimensions, sélectionnez :
- ID de commande
-
Order Is Canceled (Yes/No) (Commande annulée [Oui/Non])
Avant d'exécuter la requête, notez que l'instruction CASE renvoie le résultat Yes ou No, selon que la valeur de order_item.status est égale ou non à Cancelled :
CASE WHEN order_items.status = "Cancelled" THEN 'Yes' ELSE 'No' END
-
Cliquez sur Exécuter.
-
Ouvrez l'onglet Résultats pour afficher les résultats.
-
Fermez l'onglet de navigateur de l'exploration et revenez à l'onglet de navigateur de l'IDE.
Créer des mesures à partir de dimensions et de mesures existantes
-
Ouvrez order_items.view.
-
Examinez la mesure total_revenue_from_completed_orders.
Notez que le nom respecte les bonnes pratiques pour les mesures de somme, car il commence par "total" pour indiquer clairement que la valeur est une somme ou une valeur totale. Notez également qu'il contient un filtre sur la dimension d'état existante défini sur la valeur Complete.
Bien que total_canceled_orders commence par total, il n'indique pas clairement que la somme correspond au total des revenus, et non au total des commandes. En revanche, revenue_from_canceled_orders inclut des détails descriptifs, mais il manque total au début du nom.
- Après cette mesure, ajoutez le code suivant pour créer deux autres mesures :
measure: total_revenue_from_canceled_orders {
type: sum
sql: ${sale_price} ;;
filters: [order_is_canceled: "Yes"]
value_format_name: usd
}
measure: percent_revenue_canceled_orders {
type: number
value_format_name: percent_2
sql: 1.0*${total_revenue_from_canceled_orders}
/NULLIF(${total_revenue}, 0) ;;
}
La première mesure, nommée total_revenue_from_canceled_orders, suit cette bonne pratique de dénomination des mesures de somme en commençant par le mot total. Elle indique clairement que la somme concerne les revenus des commandes annulées.
Vous pouvez toutefois constater que le filtre est différent. Au lieu d'utiliser la dimension status, total_revenue_from_canceled_orders utilise la dimension yesno que vous avez créée aux étapes précédentes. Les deux options suivent les bonnes pratiques de réutilisation des objets LookML existants, en fonction des objets disponibles dans votre modèle.
La deuxième mesure suit la bonne pratique qui consiste à nommer les ratios de manière descriptive en incluant les mots percent et canceled orders. Cette mesure s'appuie également sur deux mesures existantes pour calculer le pourcentage de revenus attribués aux commandes annulées : la première mesure et la mesure total_revenue.
-
Cliquez sur Enregistrer les modifications.
Laissez l'onglet de navigateur de l'IDE Looker ouvert.
-
Ouvrez une nouvelle fenêtre Looker dans un onglet du navigateur.
-
Accédez à Exploration > Order Items (Articles de la commande).
-
Dans le volet "Données", cliquez sur l'onglet SQL.
-
Sous Order Items > Mesures, sélectionnez :
-
Total Revenue From Canceled Orders (Total des revenus des commandes annulées)
- Total Revenue
-
Percent Revenue Canceled Orders (Pourcentage de revenus des commandes annulées)
Avant d'exécuter la requête, notez l'instruction CASE désormais utilisée avec SUM pour calculer le total de order_items.sale_price lorsque order_items.status est Cancelled, divisé ensuite par le total de toutes les valeurs de order_items.sale_price :
SUM(CASE WHEN order_items.status = "Cancelled" THEN
order_items.sale_price ELSE NULL END), 0) / NULLIF(COALESCE(SUM(order_items.sale_price ), 0), 0)
-
Cliquez sur Exécuter.
-
Ouvrez l'onglet Résultats pour afficher les résultats.
-
Fermez l'onglet de navigateur de la requête d'exploration et revenez à l'onglet de navigateur de l'IDE Looker.
-
Cliquez sur État du projet (
).
-
Dans la section État du projet > Validation du code LookML, cliquez sur Valider le code LookML.
Aucune erreur LookML ne devrait être détectée.
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.
Restez dans l'onglet de navigateur de l'IDE Looker et passez à la tâche suivante.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Créer des champs sur la base de champs existants avec des conventions d'attribution de noms descriptives
Tâche 2 : Fournir du contexte aux champs et aux explorations avec des étiquettes et des descriptions
Ajouter des étiquettes et des descriptions aux objets LookML est un moyen simple d'aider les utilisateurs professionnels à identifier les champs et les explorations à utiliser pour leurs workflows. Dans cette tâche, vous allez ajouter des étiquettes et des descriptions à la nouvelle dimension yesno et aux nouvelles mesures de la tâche précédente. Vous allez également ajouter une étiquette et une description à l'exploration "Order Items" existante, qui expose ces champs aux utilisateurs professionnels.
Ajouter des étiquettes et des descriptions aux dimensions
-
Ouvrez une nouvelle fenêtre Looker dans un nouvel onglet du navigateur.
-
Accédez à Exploration > Order Items (Articles de la commande).
-
Développez Order Items, puis maintenez le pointeur sur la dimension Order Is Canceled (Yes/No) pour afficher d'autres options.
-
Cliquez sur Infos (
) pour afficher les détails de cette dimension.
La commande Infos fournit des détails tels que le paramètre SQL, mais pour les utilisateurs professionnels ayant des connaissances limitées en SQL, aucune description supplémentaire ne leur permet de comprendre facilement l'utilisation prévue de la dimension. Dans les étapes suivantes, vous allez ajouter le paramètre de description à la dimension Order Is Canceled pour fournir davantage de contexte aux utilisateurs professionnels.
-
Laissez l'onglet de navigateur contenant l'exploration ouvert et revenez à l'onglet de navigateur contenant l'IDE Looker.
-
Ouvrez order_items.view.
-
Ajoutez une description pour la dimension order_is_canceled que vous avez créée précédemment :
dimension: order_is_canceled {
description: "A value equal to Yes means that the order
has a canceled status. A value equal to No means that the
order does not have a canceled status."
type: yesno
sql: ${status} = "Cancelled" ;;
}
-
Cliquez sur Enregistrer les modifications, puis sur Valider le code LookML.
-
Revenez à l'onglet du navigateur pour l'exploration "Order Items" (Éléments de commande) et actualisez la page.
-
Développez Order Items, puis maintenez le pointeur sur la dimension Order Is Canceled (Yes/No) pour afficher d'autres options.
-
Cliquez sur Infos (
) pour afficher les détails de cette dimension.
Une description claire explique désormais aux utilisateurs professionnels comment interpréter les valeurs de la dimension.
-
Laissez l'onglet de navigateur contenant l'exploration ouvert et revenez à l'onglet de navigateur contenant l'IDE Looker.
-
Examinez à nouveau le code LookML de la dimension order_is_canceled.
Notez que vous n'avez pas inclus le paramètre d'étiquette, car il n'était pas nécessaire. Le nom de la dimension était déjà clairement affiché dans l'exploration : "Order Is Canceled (Yes/No)".
Dans les étapes suivantes, vous allez ajouter une description et une étiquette aux mesures que vous avez créées dans la tâche précédente. Vous pourrez ainsi modifier la façon dont les noms des mesures s'affichent dans l'exploration et inclure des informations supplémentaires sur l'interprétation des valeurs des mesures.
Ajouter des étiquettes et des descriptions aux mesures
- Dans order_items.view, ajoutez des descriptions et des étiquettes aux mesures appelées
total_revenue_from_canceled_orders et percent_revenue_canceled_orders :
measure: total_revenue_from_canceled_orders {
label: "Total Revenue Lost From Canceled Orders"
description: "Sum of sale price for orders with canceled status."
type: sum
sql: ${sale_price} ;;
filters: [order_is_canceled: "Yes"]
value_format_name: usd
}
measure: percent_revenue_canceled_orders {
label: "% Revenue Lost From Canceled Orders"
description: "Total revenue lost from canceled orders as
a percentage of the total revenue from all orders."
type: number
value_format_name: percent_2
sql: 1.0*${total_revenue_from_canceled_orders}
/NULLIF(${total_revenue}, 0) ;;
}
-
Cliquez sur Enregistrer les modifications, puis sur Valider le code LookML.
L'ajout d'étiquettes à ces mesures permet de souligner que les commandes annulées représentent des revenus perdus. Les descriptions fournissent un contexte supplémentaire pour interpréter le type de mesure et le paramètre SQL.
-
Revenez à l'onglet du navigateur pour l'exploration "Order Items" (Éléments de commande) et actualisez la page.
-
Développez Order Items. Vous remarquerez que les étiquettes des deux mesures ont été modifiées : % Revenue Lost From Canceled Orders (% de revenus perdus en raison des commandes annulées) et Total Revenue Lost From Canceled Orders (Total des revenus perdus en raison des commandes annulées).
-
Cliquez sur Infos (
) pour chaque mesure afin d'afficher les détails correspondants.
En plus des étiquettes, des descriptions utiles expliquent désormais aux utilisateurs professionnels comment interpréter les valeurs de ces mesures.
-
Sous Order Items > Dimensions, sélectionnez Order Is Canceled (Yes/No).
-
Sous Order Items > Mesures, sélectionnez :
- Total Revenue Lost From Canceled Orders
- Total Revenue
- % of Revenue Lost from Canceled Orders
-
Dans le volet "Données", pointez sur les noms des colonnes afin d'afficher la même description que celle fournie pour le bouton d'info pour Order Is Canceled, Total Revenue Lost From Canceled Orders et % of Revenue Lost from Canceled Orders.
-
Cliquez sur Exécuter.
La requête renvoie deux lignes en fonction de la dimension Order Is Canceled : une ligne pour Yes et une ligne pour No. Les utilisateurs professionnels qui ont des questions sur ces résultats peuvent désormais consulter les descriptions de ces dimensions et mesures pour obtenir plus de contexte.
Ajouter une étiquette et une description à une exploration
-
Fermez l'onglet de navigateur de l'exploration et revenez à l'onglet de navigateur de l'IDE Looker.
-
Ouvrez training_ecommerce.model sous models.
-
Ajoutez une étiquette et une description à l'exploration "Order Items" existante, avant la jointure pour users :
explore: order_items {
label: "Orders and Users"
description: "Use this Explore to review details for orders and users,
including information on inventory, products, and distribution centers."
join: users {
type: left_outer
sql_on: ${order_items.user_id} = ${users.id} ;;
relationship: many_to_one
}
-
Cliquez sur Enregistrer les modifications, puis sur Valider le code LookML.
-
Laissez l'onglet du navigateur contenant l'IDE ouvert, et ouvrez une nouvelle fenêtre Looker dans un nouvel onglet du navigateur.
-
Cliquez sur Explorer pour afficher la liste du menu des explorations.
L'exploration "Order Items" dispose désormais de la nouvelle étiquette Orders and Users (Commandes et utilisateurs). Notez également qu'une commande Infos apparaît à présent à côté du nom de l'exploration.
-
Maintenez le pointeur sur Infos (
) pour afficher les détails de l'exploration.
Une description claire et détaillée des données disponibles dans l'exploration est désormais disponible. Les utilisateurs professionnels peuvent ainsi déterminer facilement si cette exploration est adaptée à leurs workflows.
-
Fermez l'onglet de navigateur de l'exploration et laissez l'onglet de navigateur de l'IDE ouvert.
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.
Fournir du contexte aux champs et aux explorations avec des étiquettes et des descriptions
Tâche 3 : Limiter les champs à ceux qui sont nécessaires dans une exploration spécifique
Lorsque vous créez des objets LookML dans votre modèle, réfléchissez bien aux champs et aux explorations auxquels les utilisateurs professionnels doivent avoir accès directement. Lorsqu'un nombre bien spécifique et précis de champs et d'explorations est affiché, les utilisateurs professionnels peuvent trouver rapidement les données dont ils ont besoin.
Dans cette tâche, vous allez utiliser le paramètre hidden pour masquer les champs supplémentaires dans l'ensemble du modèle training_ecommerce. Vous allez également vous appuyer sur le paramètre fields pour limiter les champs présentés aux utilisateurs professionnels dans l'exploration "Order Items" existante.
Masquer un champ pour toutes les explorations d'un modèle LookML
-
Ouvrez une nouvelle fenêtre Looker dans un nouvel onglet du navigateur.
-
Accédez à Exploration > Events.
-
Développez Users.
-
Ouvrez une autre fenêtre Looker dans un nouvel onglet de navigateur.
-
Accédez à Exploration > Orders and Users.
-
Développez Users et comparez les deux explorations.
Notez que vous voyez les mêmes dimensions pour les utilisateurs dans l'exploration "Events" que dans "Orders and Users", y compris les dimensions Latitude et Longitude, que vous ne souhaitez peut-être pas toujours exposer aux utilisateurs professionnels.
Conseil : Vous pouvez rechercher chaque paramètre dans la documentation Looker.
-
Laissez les onglets de navigateur ouverts pour les deux explorations et revenez à l'IDE Looker.
-
Ouvrez users.view sous views.
-
Ajoutez le paramètre hidden aux dimensions de latitude et de longitude :
dimension: latitude {
hidden: yes
type: number
sql: ${TABLE}.latitude ;;
}
dimension: longitude {
hidden: yes
type: number
sql: ${TABLE}.longitude ;;
}
-
Cliquez sur Enregistrer les modifications, puis sur Valider le code LookML.
-
Revenez à l'onglet de navigateur pour l'exploration Orders and Users et actualisez la page.
-
Développez Users et examinez les dimensions disponibles.
Notez que les dimensions latitude et longitude ne sont plus visibles dans l'exploration "Orders and Users".
-
Revenez à l'onglet de navigateur de l'exploration Events et actualisez la page.
-
Développez Users et examinez les dimensions disponibles.
Les dimensions latitude et longitude ne sont plus visibles dans aucune des explorations. Imaginez maintenant que vous ne souhaitiez pas masquer une dimension ou une mesure dans toutes les explorations, mais uniquement dans certaines. Par exemple, l'exploration "Events" contient les mêmes informations sur les utilisateurs que l'exploration "Orders and Users", mais de nombreux champs fournissent plus d'informations permettant d'identifier personnellement l'utilisateur que ce qui est véritablement nécessaire dans l'exploration "Events".
Dans les étapes suivantes, vous allez masquer la plupart des dimensions et des mesures dans la vue "Users", mais uniquement dans l'exploration "Events", où seules des informations minimales sont nécessaires pour sélectionner des utilisateurs ou identifier des tendances générales.
Masquer sélectivement des champs dans des explorations spécifiques
-
Laissez l'onglet de navigateur de l'exploration ouvert et revenez à l'onglet de navigateur de l'IDE.
-
Ouvrez training_ecommerce.model.
-
Ajoutez le paramètre fields à l'exploration Events existante, avant la jointure pour event_session_facts :
explore: events {
fields: [ALL_FIELDS*, -users.city, -users.email, -users.first_name,
-users.gender, -users.last_name, -users.state]
join: event_session_facts {
type: left_outer
sql_on: ${events.session_id} = ${event_session_facts.session_id} ;;
relationship: many_to_one
}
La syntaxe du paramètre fields indique que tous les champs resteront visibles dans l'exploration, à l'exception de ceux identifiés par un signe moins (-) avant leur nom, comme users.city, qui sera masqué dans l'exploration.
-
Cliquez sur Enregistrer les modifications, puis sur Valider le code LookML.
-
Revenez à l'onglet de navigateur pour l'exploration Orders and Users et actualisez la page.
-
Développez Users et examinez les dimensions disponibles.
Notez qu'aucune dimension supplémentaire n'a été masquée dans l'exploration "Orders and Users".
-
Revenez à l'onglet de navigateur de l'exploration Events et actualisez la page.
-
Développez Users et examinez les dimensions disponibles.
Notez que seules quelques dimensions pour "Users" restent disponibles dans l'exploration "Events". Il s'agit de celles qui n'ont pas été explicitement identifiées par un signe moins (-) dans le paramètre "fields".
L'exploration "Events" permet désormais d'effectuer des analyses plus générales des utilisateurs et des événements, tandis que l'exploration "Orders and Users" contient des informations plus spécifiques sur les utilisateurs, telles que des informations permettant de les identifier personnellement.
-
Sous Users > Dimensions, sélectionnez Country.
-
Sous Users > Mesures, sélectionnez Count (Nombre).
-
Sous Events > Dimensions, sélectionnez Event Type.
-
Cliquez sur Exécuter.
La requête renvoie le nombre d'utilisateurs par pays pour chaque type d'événement, y compris les utilisateurs dont la valeur de pays est nulle.
-
Fermez les deux onglets de navigateur ouverts pour l'exploration et laissez l'onglet de navigateur de l'IDE ouvert.
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.
Limiter les champs à ceux qui sont nécessaires dans une exploration spécifique
Tâche 4 : Regrouper les champs ou les explorations similaires dans des catégories utiles
En tant que développeur LookML, vous pouvez utiliser le paramètre group_label pour faciliter la navigation dans les explorations en regroupant les champs ou explorations similaires dans des catégories logiques. Dans cette tâche, vous allez regrouper les différentes dimensions d'emplacement dans users.view et créer des groupes distincts pour les explorations "Orders and Users" et "Events" dans training_ecommerce.model sous différents en-têtes libellés par équipe.
Regrouper les champs similaires dans une vue
- Ouvrez users.view et examinez les dimensions disponibles.
Notez que plusieurs dimensions contiennent des informations de localisation, comme la ville, le pays, l'État et le code postal.
En vous basant sur la documentation du paramètre group_label pour les champs, vous pouvez ajouter la syntaxe LookML group_label: "Group Name" à plusieurs dimensions pour les regrouper dans une même catégorie.
- Ajoutez le paramètre
group_label aux dimensions city, country, state et zip pour les regrouper dans une catégorie nommée "Location" :
dimension: city {
group_label: "Location"
type: string
sql: ${TABLE}.city ;;
}
dimension: country {
group_label: "Location"
type: string
map_layer_name: countries
sql: ${TABLE}.country ;;
}
dimension: state {
group_label: "Location"
type: string
sql: ${TABLE}.state ;;
map_layer_name: us_states
}
dimension: zip {
group_label: "Location"
type: zipcode
sql: ${TABLE}.zip ;;
}
-
Cliquez sur Enregistrer les modifications, puis sur Valider le code LookML.
-
Laissez l'onglet de navigateur ouvert pour l'IDE et ouvrez une nouvelle fenêtre Looker dans un nouvel onglet de navigateur.
-
Accédez à Exploration > Orders and Users.
-
Développez Users et examinez les dimensions disponibles.
-
Sous Users > Dimension > Location, sélectionnez :
-
Cliquez sur Exécuter pour afficher les résultats.
-
Fermez l'onglet de navigateur de l'exploration Orders and Users et revenez à l'onglet de navigateur de l'IDE.
Créer des groupes d'explorations sous différents en-têtes
- Ouvrez training_ecommerce.model.
Notez qu'un paramètre d'étiquette au niveau du modèle sur la ligne 15 présente la valeur "E-Commerce Training". Il s'agit de l'en-tête actuel affiché dans le menu de l'exploration. Les explorations "Orders and Users" et "Events" sont organisées sous cet en-tête dans le menu de l'exploration.
Consultez la page de la documentation sur group_label pour les explorations, puis répondez à la question suivante.
- Avant le paramètre "label", ajoutez un paramètre
group_label appelé "E-commerce - Inventory Team" à l'exploration Order Items :
explore: order_items {
group_label: "E-commerce - Inventory Team"
label: "Orders and Users"
- Avant le paramètre "fields", ajoutez un paramètre
group_label appelé "E-commerce - Marketing Team" à l'exploration Events :
explore: events {
group_label: "E-commerce - Marketing Team"
fields: [ALL_FIELDS*, -users.city, -users.email, -users.first_name,
-users.gender, -users.last_name, -users.state]
-
Cliquez sur Enregistrer les modifications, puis sur Valider le code LookML.
-
Ouvrez une nouvelle fenêtre Looker dans un nouvel onglet du navigateur.
-
Développez le menu Explorer et examinez les options.
Notez que chaque exploration se trouve désormais sous son propre en-tête. Lorsque vous ajoutez de nouvelles explorations, vous pouvez utiliser la même valeur group_label pour continuer à développer les groupes existants ou attribuer de nouvelles valeurs group_label pour créer des groupes avec leurs propres en-têtes.
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.
Regrouper les champs ou les explorations similaires dans des catégories utiles
Félicitations !
Dans cet atelier, vous avez amélioré l'usabilité et la durabilité des projets LookML en réutilisant les objets existants, en appliquant des conventions d'attribution de noms descriptives et en utilisant des paramètres supplémentaires tels que fields et hidden. Vous avez ensuite limité les champs à ceux nécessaires dans une exploration spécifique et utilisé le paramètre group_label pour faciliter la navigation dans les explorations en regroupant les champs et les explorations similaires dans des catégories logiques.
É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 : 2 février 2026
Dernier test de l'atelier : 3 décembre 2025
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.