Personnaliser les blocs du Marketplace Looker

Les Looker Blocks™ sont des modèles de données prédéfinis pour les sources de données et les modèles d'analyse courants. Cette page explique comment les développeurs peuvent personnaliser les blocs Looker installés depuis la place de marché Looker. Looker Marketplace est un emplacement centralisé qui permet de rechercher, de déployer et de gérer de nombreux types de contenu Looker, tels que des applications, des visualisations et des plug-ins.

Pour en savoir plus sur tous les blocs Looker disponibles, y compris ceux qui ne sont pas actuellement disponibles sur le Marketplace Looker, ainsi que sur d'autres méthodes de personnalisation des blocs, consultez la page de documentation Blocs Looker.

Conditions requises pour installer et gérer des blocs Looker depuis Looker Marketplace

Avant que vous puissiez installer et utiliser certains blocs de la place de marché Looker, votre administrateur Looker doit activer les fonctionnalités suivantes:

  • Si vous installez votre bloc via Looker Marketplace, votre administrateur Looker doit activer la fonctionnalité Marketplace.
  • Si le bloc en question contient un paramètre local_dependency, votre administrateur Looker doit également activer la fonctionnalité Importation de projet local Labs. Ces blocs contiennent un paramètre local_dependency:

    • Digital Marketing Analytics
    • Analyses des ventes
    • Analyse d'audience Internet

Les utilisateurs doivent disposer des autorisations develop, manage_models et deploy pour installer et gérer des packages depuis la place de marché.

Consultez la page de documentation Looker Marketplace pour en savoir plus sur l'installation et la gestion des blocs Looker depuis Looker Marketplace.

Accéder au code LookML d'un bloc Marketplace

Les blocs basés sur des projets qui utilisent des raffinements sont installés depuis la place de marché en tant que projet CONFIG unique et modifiable qui importe à distance le projet CORE, qui contient tout le code LookML et la paramétrisation constante.

Une fois qu'un bloc a été installé depuis la place de marché, vous pouvez accéder à son projet depuis le menu Développer en cliquant sur son nom dans la liste des projets. Le nom d'un bloc de précisions sur une place de marché est généralement précédé de marketplace_, suivi de l'ID de la fiche.

Bien que vous ne puissiez pas modifier directement le projet CORE en lecture seule d'un bloc, vous pouvez utiliser le LookML défini dans les fichiers CORE en lecture seule du bloc comme référence lorsque vous personnalisez les fichiers CONFIG du bloc. Pour afficher les fichiers CORE du bloc, accédez aux fichiers de projet du bloc dans l'IDE, puis développez le répertoire imported_projects dans le navigateur de fichiers de l'IDE.

Structure de fichier de bloc

Lorsque vous installez un bloc conçu pour des améliorations, ces fichiers sont créés automatiquement dans la partie CONFIG du projet de bloc:

Nom de fichier Accès Fonction
<model_name>.model.lkml Lecture seule pour tous les utilisateurs Fichier de modèle virtuel associé à l'installation du bloc. Gère l'importation de tous les modèles à partir du projet CORE du bloc. Lorsqu'un bloc est désinstallé ou mis à jour, le ou les fichiers de modèle associés sont supprimés, ce qui évite les conflits de modèle entre plusieurs installations de blocs.
manifest.lkml Modifiable par les utilisateurs disposant des autorisations develop Décrit le projet et ses dépendances externes. Inclut l'ID de la fiche Marketplace pour l'installation du bloc et facilite l'importation à distance des fichiers de projet CORE du bloc à l'aide du mot clé marketplace.
marketplace_lock.lkml Lecture seule pour tous les utilisateurs Contient une référence au mot clé marketplace_ref du fichier manifeste qui gère l'importation à distance du projet CORE. Fournit les informations spécifiques sur la fiche, la version et le modèle associés à l'installation. Contient des informations sur les constantes configurées lors de l'installation (et qui peuvent être mises à jour à l'aide de l'option Gérer dans l'UI de Marketplace).
refinements.lkml Modifiable par les utilisateurs disposant des autorisations develop Permet aux développeurs d'affiner les vues et les explorations définies dans les fichiers de projet CORE importés.

Personnaliser un bloc de place de marché

Activez le mode Développement pour personnaliser les fichiers modifiables du bloc.

Si vous disposez des autorisations develop, vous pouvez personnaliser le LookML dans le fichier refinements.lkml du projet CONFIG du bloc. Vous pouvez affiner les vues et les explorations déjà définies dans le projet CORE du bloc, ou même ajouter des vues et des explorations qui ne sont pas encore définies dans le projet CORE. Tout ce qui est possible avec les perfectionnements LookML dans d'autres projets LookML est possible dans le fichier refinements.lkml du bloc. La combinaison du raffinement et du LookML d'origine se comporte comme si elle était le LookML d'origine de l'objet.

Vous pouvez également modifier le fichier manifest.lkml du projet CONFIG pour spécifier les dépendances à capturer pour ce bloc.

Vous n'êtes pas limité à la modification de ces fichiers pour obtenir les personnalisations souhaitées. Vous pouvez également créer des fichiers dans le projet CONFIG. Veillez simplement à include les nouveaux fichiers dans le fichier refinements.lkml.

Personnaliser le fichier de raffinements

Si vous disposez des autorisations develop, vous pouvez ajouter du code LookML personnalisé au projet CONFIG pour intégrer des données supplémentaires ou modifier le modèle analytique de base du bloc. Vous pouvez créer des vues et les joindre à des explorations existantes, définir de nouveaux champs ou redéfinir des champs existants, ou appliquer des libellés si nécessaire pour créer un modèle pour l'analyse que vous souhaitez fournir. Si vous avez créé des fichiers dans le projet CONFIG, vous devez les include dans le fichier d'affinage.

Par exemple, supposons que vous ayez installé un bloc et que son fichier refinements.lkml contienne les éléments suivants:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

listing_id correspond à la valeur du paramètre listing du fichier manifest.lkml.

Vous pouvez utiliser des raffinements pour ajouter une dimension à une vue appelée flights:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

view: +flights {
  dimension: air_carrier {
    type: string
    sql: ${TABLE}.air_carrier ;;
  }
}

Vous pouvez également appliquer un libellé à une exploration appelée aircraft afin qu'elle s'affiche dans l'interface utilisateur sous le nom Avions simplifiés:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

explore: +aircraft {
  label: "Aircraft Simplified"
}

Le fichier refinements.lkml est automatiquement inclus dans le fichier de modèle "virtuel" du bloc, qui importe essentiellement les modèles du projet CORE.

Pour en savoir plus sur ce sujet avancé, consultez la documentation sur les affinages LookML.

Personnaliser le fichier manifeste modifiable

Dans les blocs qui utilisent des raffinements, les projets CORE et CONFIG disposent tous deux de fichiers manifestes. Toutefois, seul le fichier manifeste du projet CONFIG est modifiable.

Vous pouvez modifier le fichier manifest.lkml CONFIG pour ajouter des paramètres de projet à ceux qui apparaissent déjà dans le fichier manifeste du projet CORE. Par exemple, vous pouvez ajouter un local_dependency pour associer votre bloc à un autre bloc de la même instance Looker.

Avant de pouvoir utiliser ou créer un bloc contenant un paramètre local_dependency, un administrateur Looker doit d'abord activer la fonctionnalité Importation de projet local des ateliers.

Mettre à jour les valeurs des constantes

Les constantes du bloc sont définies dans le fichier manifeste du projet CORE importé. Si vous êtes autorisé à remplacer la valeur d'une constante, vous devez le faire dans l'interface utilisateur de Marketplace lors de la configuration ou en mettant à jour le bloc. Pour mettre à jour un bloc, les utilisateurs doivent disposer des autorisations develop, manage_models et deploy.

Pour remplacer la valeur d'une constante en mettant à jour un bloc:

  1. Dans le Marketplace de Looker, accédez au bloc que vous souhaitez mettre à jour.
  2. Cliquez sur le bouton Gérer.
  3. À côté du nom du bloc que vous souhaitez modifier, cliquez sur l'icône en forme de roue dentée. La fenêtre de configuration du blocage s'ouvre.
  4. Modifiez les valeurs constantes si nécessaire.
  5. Cliquez sur Mettre à jour pour fermer la fenêtre de configuration du bloc et appliquer vos modifications.

Vos modifications sont répercutées dans le fichier marketplace_lock.lkml en lecture seule de votre projet installé.

Préserver les personnalisations d'un bloc Marketplace qui utilise des extensions

Certains des blocs disponibles sur la place de marché Looker étaient composés de projets qui utilisent des extensions LookML. Looker convertit tous les blocs du marché pour les instances sur Looker 21.8 ou version ultérieure en une structure de projet qui utilise les affinements LookML et supprime la prise en charge des blocs basés sur extends.

Looker vous recommande d'installer la version basée sur les améliorations de tous les blocs Marketplace que vous avez sur votre instance dès qu'ils sont disponibles, en les remplaçant par des blocs créés avec des extensions. Bien que ce processus de remplacement soit simple (vous pouvez installer le nouveau bloc (affinements) à partir de la liste des blocs du Marketplace Looker et désinstaller le bloc d'origine (étend) sur la page Gérer du Marketplace Looker), aucune des personnalisations apportées au bloc créé avec extends ne sera conservée. Looker ne transfère pas non plus les contenus ou fonctions Looker basés sur ce contenu (tableaux de bord, explorations, diffusions de contenu planifiées, alertes) du bloc d'origine vers le nouveau bloc.

Cette section explique comment conserver les personnalisations apportées à un bloc créé avec des projets qui utilisent des extensions qui seraient autrement difficiles ou longues à reproduire à partir de zéro.

Pour préserver les personnalisations de votre bloc, un utilisateur autorisé à installer et à gérer des packages depuis Marketplace doit:

  1. Mettre à jour le projet CONFIG du bloc d'origine pour préparer la migration
  2. Installer la nouvelle version du bloc depuis le Marketplace Looker
  3. Transférer les personnalisations vers le nouveau bloc de place de marché
  4. Recréer du contenu Looker à partir du bloc d'origine
  5. Désinstaller la version du bloc créée avec extends

Mettre à jour un bloc personnalisé pour préparer la migration

Cette section explique comment mettre à jour les fichiers de projet clés d'un bloc créé avec des extensions afin de pouvoir copier les personnalisations du bloc dans une nouvelle version du bloc basée sur des raffinements. Un bloc basé sur un projet qui utilise des extensions est installé à partir de la place de marché en tant que projet CORE en lecture seule et en tant que projet CONFIG modifiable.

  1. Accédez au projet CONFIG du bloc à partir de la section Développer de l'une des manières suivantes:

    • Cliquez sur l'option Projects (Projets), puis sur le nom du projet.
    • Cliquez sur le nom du projet CONFIG du bloc dans la liste des projets.

    Les noms de projet CONFIG se terminent généralement par _config, tandis que le nom du projet CORE ne comporte généralement pas de suffixe.

  2. Ouvrez le fichier de modèle du projet, qui peut ressembler à ceci:


    explore: ga_sessions_config {
      extends: [ga_sessions_core]
      extension: required
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: future_input_config {
      extends: [future_input_core]
      extension: required
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. En mode développement:

    1. Supprimez l'intégralité des lignes extends et extension.
    2. Supprimez _config des noms explore.
    3. Ajoutez + au début des noms explore.

    L'exemple de fichier de modèle précédent se présente comme suit:


    explore: +ga_sessions {
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: +future_input {
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. Copiez et conservez le contenu de ce fichier pour une étape ultérieure.

Installer le nouveau bloc Marketplace

Un bloc basé sur un projet qui utilise des perfectionnements est installé depuis la place de marché en tant que projet LookML unique et modifiable qui importe à distance le projet contenant l'ensemble du code LookML et la paramétrisation des constantes.

  1. Sélectionnez l'icône de la boutique dans la barre de menu Looker pour accéder à la place de marché Looker.
  2. Cliquez sur la fiche du nouveau bloc de place de marché basé sur les améliorations. Ce bloc porte le même nom que le bloc existant créé avec extends.
  3. Cliquez sur Installer pour installer le nouveau bloc. Une fois ce bloc installé, deux fiches identiques s'affichent sur la page Gérer de la place de marché Looker.

Transférer les personnalisations vers le nouveau bloc de place de marché

Cette section explique comment transférer les modifications que vous avez apportées au bloc d'origine (étend) vers le nouveau bloc (améliorations).

  1. Dans la section Développer, ouvrez le projet du nouveau bloc de l'une des manières suivantes:

    • Cliquez sur l'option Projects (Projets), puis sur le nom du projet.
    • Cliquez sur le nom du projet du bloc dans la liste des projets.

    Le nom d'un bloc de précisions sur une place de marché est généralement précédé de marketplace_, suivi de l'ID de la fiche.

  2. Dans le fichier refinements.lkml, collez le contenu mis à jour du fichier de modèle du bloc d'origine (étend). Veillez à conserver toutes les instructions include déjà présentes dans le fichier de raffinements.

Recréer un contenu Looker à partir du bloc d'origine

La dernière étape de l'adoption de la version basée sur les améliorations d'un bloc Marketplace consiste à désinstaller la version d'origine basée sur les extensions du bloc. Certains blocs basés sur des extensions contiennent des tableaux de bord et des explorations LookML prédéfinis. Si des utilisateurs ont créé des alertes ou des diffusions planifiées basées sur des tableaux de bord LookML définis dans le bloc d'extension d'origine, ces alertes ou ces planifications seront désactivées ou échoueront, respectivement, une fois ce bloc désinstallé de la place de marché Looker.

Vous devez recréer ces alertes ou diffusions planifiées dans les tableaux de bord LookML du nouveau bloc "Améliorations". Les administrateurs et les utilisateurs Looker disposant des autorisations appropriées pour les plannings et les alertes peuvent utiliser les pages Alertes et planifications de la section "Administration" pour rechercher les noms des tableaux de bord du bloc (étend) et créer des alertes ou des diffusions planifiées si nécessaire sur les tableaux de bord correspondants du bloc (affinages).

Vous devez également modifier tout autre contenu Looker qui fait référence aux explorations ou aux tableaux de bord LookML du bloc d'origine (étend) pour qu'il pointe vers le nouveau bloc (affinements), si nécessaire.

Désinstaller le blocage d'origine

Pour désinstaller la version du bloc créée avec extends:

  1. Sélectionnez l'icône de la boutique dans la barre de menu Looker pour accéder à la place de marché Looker.

  2. Dans la place de marché Looker, sélectionnez Gérer dans le panneau de navigation de gauche pour ouvrir la page Gérer.

  3. Sur la page Gérer, cliquez sur l'icône en forme de corbeille pour désinstaller le bloc d'origine (étend). Vous pouvez différencier la liste de blocage des extensions de la liste de blocage des améliorations en regardant les numéros de version. Le bloc "extends" sera une version majeure en retard par rapport au bloc "refinements". Par exemple, le bloc "extends" peut être la version 1.0.4 et le bloc "refinements" la version 2.0.0.

Une fois le bloc désinstallé, la liste du bloc d'origine (étend) disparaît de la barre de navigation de gauche de l'instance Looker, ses explorations disparaissent de la section Explorer, ses tableaux de bord LookML disparaissent du dossier Tableaux de bord LookML, et toutes les alertes ou diffusions planifiées basées sur les tableaux de bord LookML du bloc sont désactivées ou échouent, respectivement.

Résoudre les problèmes de blocage

Si un bloc de place de marché affiche des erreurs, il est possible que votre schéma ne corresponde pas à la structure du bloc.

Vous pouvez également vérifier que les constantes fournies lors de l'installation du bloc, qui représentent la connexion, la base de données ou le schéma du bloc, ont été définies correctement. Pour ce faire, vous pouvez procéder comme suit:

  1. Sélectionnez l'icône de la boutique dans la barre de menu Looker pour accéder à la place de marché Looker.

  2. Dans la place de marché Looker, sélectionnez Gérer dans le panneau de navigation de gauche pour ouvrir la page Gérer.

  3. Sur la page Gérer, cliquez sur l'icône en forme de roue dentée du bloc pour afficher ses paramètres de configuration.

  4. Dans la fenêtre Mettre à jour les configurations, vérifiez que le bloc est correctement configuré. Une fois les modifications effectuées, cliquez sur Mettre à jour pour les enregistrer et fermer la fenêtre de configuration du bloc.