Personnaliser les blocs du Marketplace Looker

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

Pour en savoir plus sur tous les blocs Looker disponibles et sur les autres méthodes de personnalisation des blocs, consultez la page de documentation Blocs Looker.

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

Avant d'installer et d'utiliser certains blocs du Looker Marketplace, veuillez noter les exigences suivantes :

  • Si vous installez votre bloc via Looker Marketplace, votre administrateur Looker doit activer la fonctionnalité Marketplace.
  • Les utilisateurs doivent disposer des autorisations develop, manage_models et deploy pour installer et gérer les packages de la place de marché.
  • Si le bloc spécifique contient un paramètre local_dependency, il utilise le processus d'importation de projet local. Pour en savoir plus sur l'importation de projets, consultez la page de documentation Importer des fichiers depuis d'autres projets. Les blocs suivants contiennent un paramètre local_dependency :

    • Analyse du marketing numérique
    • Analyses des ventes
    • Analyse d'audience Internet

Consultez la page de documentation Looker Marketplace pour savoir comment installer et gérer les blocs Looker depuis Looker Marketplace.

Accéder au code LookML d'un bloc Marketplace

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

Une fois qu'un bloc est installé depuis le Marketplace, vous pouvez accéder à son projet depuis le menu Développer en cliquant sur le nom du projet dans la liste des projets. Le nom d'un bloc d'affinements Marketplace 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 code LookML défini dans les fichiers CORE en lecture seule du bloc comme référence lorsque vous personnalisez les fichiers CONFIG du bloc. Vous pouvez afficher les fichiers CORE du bloc en accédant aux fichiers du projet du bloc dans l'IDE et en développant le répertoire imported_projects dans l'explorateur de fichiers de l'IDE.

Structure des fichiers de bloc

Lorsque vous installez un bloc conçu pour les affinements, 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 lié à l'installation du bloc. Il gère l'importation de tous les modèles 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èles entre plusieurs installations de blocs.
manifest.lkml Modifiable par les utilisateurs disposant des autorisations develop Décrit le projet et ses dépendances externes. Contient l'ID de la fiche Marketplace pour l'installation du bloc et facilite l'importation à distance des fichiers de projet CORE du bloc via le 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 des 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'interface utilisateur 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 Marketplace

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 de nouvelles vues et explorations qui ne sont pas encore définies dans le projet CORE. Tout ce qui est possible avec les affinements LookML dans d'autres projets LookML est possible dans le fichier refinements.lkml du bloc. La combinaison du raffinement et du code LookML d'origine se comporte comme le code 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 d'affinements

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 selon vos besoins 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'affinements.

Par exemple, supposons que vous ayez installé un bloc et que son fichier refinements.lkml contienne le code LookML suivant :

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 affinements 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é aircraft à une exploration pour qu'elle s'affiche dans l'interface utilisateur sous le nom Aircraft Simplified :

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

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

Le fichier refinements.lkml est inclus automatiquement 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 affinements LookML.

Personnaliser le fichier manifeste modifiable

Dans les blocs qui utilisent des affinements, les projets CORE et CONFIG comportent des fichiers manifestes. Toutefois, seul le fichier manifeste du projet CONFIG est modifiable.

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

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'UI Marketplace lors de la configuration ou en mettant à jour le bloc. Pour modifier un bloc, les utilisateurs doivent disposer des autorisations develop, manage_models et deploy.

Pour remplacer la valeur d'une constante en modifiant un bloc, procédez comme suit :

  1. Dans le Looker Marketplace, 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 bloc 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 mettre à jour le bloc avec vos modifications.

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

Conserver les personnalisations d'un bloc Marketplace qui utilise "extends"

Certains blocs disponibles sur la Marketplace Looker étaient composés de projets utilisant l'instruction LookML extends. Looker convertit tous les blocs Marketplace pour les instances sur Looker 21.8 ou version ultérieure en une structure de projet qui utilise les affinements LookML et supprimera la compatibilité avec les blocs basés sur extends.

Looker vous recommande d'installer la version basée sur les affinements de tous les blocs Marketplace que vous avez sur votre instance, à mesure qu'ils sont disponibles, en remplaçant les blocs qui ont été créés avec des extensions. Bien que ce processus de remplacement soit simple (vous pouvez installer le nouveau bloc "refinements" à partir de la fiche du bloc Looker Marketplace et désinstaller le bloc "extends" d'origine sur la page Gérer de Looker Marketplace), il ne conservera aucune des personnalisations qui ont pu être apportées au bloc créé avec "extends". Looker ne transférera pas non plus de contenu ni de fonctions Looker basés sur ce contenu (tableaux de bord, Explorations, envois de contenu planifiés, alertes) du bloc d'origine vers le nouveau bloc.

Cette section explique comment conserver les personnalisations d'un bloc créé avec des projets qui utilisent l'extension, ce qui serait autrement difficile ou long à reproduire à partir de zéro.

Pour conserver les personnalisations de votre bloc, un utilisateur ayant la possibilité d'installer et de gérer des packages depuis Marketplace doit procéder comme suit :

  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 Place de marché
  4. Recréer du contenu Looker en fonction du bloc d'origine
  5. Désinstallez la version du bloc qui a été créée avec "extends".

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

Cette section explique comment mettre à jour les fichiers clés d'un bloc créé avec "extends" afin de pouvoir copier les personnalisations du bloc dans une nouvelle version basée sur les affinements. Un bloc basé sur un projet qui utilise "extends" est installé depuis le Marketplace en tant que projet CORE en lecture seule et projet CONFIG modifiable.

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

    • Cliquez sur l'option 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 n'a 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. Dans le mode Développement, procédez comme suit :

    1. Supprimez les lignes extends et extension dans leur intégralité.
    2. Supprimez _config des noms explore.
    3. Faites précéder les noms explore de +.

    L'exemple de fichier de modèle précédent se présenterait 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 Marketplace en tant que projet LookML unique et modifiable qui importe à distance le projet contenant tous les paramètres LookML et constants.

  1. Sélectionnez l'icône de boutique dans la barre de menu Looker pour accéder à la place de marché Looker.
  2. Cliquez sur la fiche du nouveau bloc Marketplace basé sur les affinements. 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 Marketplace

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

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

    • Cliquez sur l'option 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 d'affinements Marketplace 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 (extends). Veillez à conserver toutes les instructions include qui se trouvent déjà dans le fichier d'affinements.

Recréer du contenu Looker en fonction du bloc d'origine

La dernière étape pour adopter la version basée sur les affinements d'un bloc Marketplace consiste à désinstaller la version d'origine basée sur les extensions. Certains blocs basés sur des extensions contiennent des tableaux de bord et des explorations LookML prédéfinis. Si les utilisateurs ont créé des alertes ou des livraisons planifiées basées sur des tableaux de bord LookML définis dans le bloc d'origine (extends), ces alertes ou planifications seront respectivement désactivées ou échoueront une fois ce bloc désinstallé de Looker Marketplace.

Vous devez recréer ces alertes ou ces livraisons planifiées dans les tableaux de bord LookML du nouveau bloc (affinement). Les administrateurs et les utilisateurs Looker disposant des autorisations appropriées pour les planifications et les alertes peuvent utiliser les pages Alertes et planifications de la section "Admin" pour rechercher les noms des tableaux de bord du bloc (extends), puis créer de nouvelles alertes ou planifier des livraisons si nécessaire sur les tableaux de bord correspondants du bloc (refinements).

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 (extensions) pour qu'il pointe vers le nouveau bloc (affinement), si nécessaire.

Désinstaller le bloc d'origine

Pour désinstaller la version du bloc qui a été créée avec "extends", procédez comme suit :

  1. Sélectionnez l'icône de 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 de corbeille pour désinstaller le bloc d'origine (extensions). Vous pouvez différencier la liste des blocs d'extension de celle des blocs d'affinements en examinant 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 en version 1.0.4 et le bloc "refinements" en version 2.0.0.

Résoudre les problèmes liés à un blocage

Si un bloc Marketplace 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é correctement définies. Pour ce faire, procédez comme suit :

  1. Sélectionnez l'icône de 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 principal 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é. Après avoir apporté des modifications, cliquez sur Mettre à jour pour les enregistrer et fermer la fenêtre de configuration du bloc.