Fusionner les résultats de différentes explorations

La fusion des résultats est une fonctionnalité de traitement post-requête qui, si elle n'est pas utilisée de façon réfléchie, peut surcharger les ressources des instances Looker et ralentir la réponse de votre instance Looker pour tous les utilisateurs. Une bonne pratique consiste à définir des fonctions et une logique dans LookML, qui génère du code SQL traité par votre base de données. Consultez la page des bonnes pratiques Optimiser les performances de Looker pour en savoir plus sur l'optimisation des performances de Looker.

Les explorations dans Looker sont conçues par vos développeurs Looker pour combiner les données de vos tables de base de données de la façon la plus efficace possible en utilisant des relations définies entre les champs de données et les tables. C'est pourquoi il est préférable d'utiliser une seule exploration pour examiner vos données.

Cependant, il peut arriver que vos développeurs Looker n'aient pas créé les relations dont vous avez besoin ou qu'ils se soient retrouvés confrontés à des limites techniques. Dans ce cas, l'option Résultats fusionnés vous permet de combiner les résultats de différentes explorations (même de modèles ou de projets différents) pour créer des tables de données sur lesquelles vous pouvez explorer et créer des visualisations. Vous pouvez utiliser les résultats fusionnés comme démonstration de faisabilité pour développer et définir plus précisément vos projets et modèles LookML.

Comprendre les résultats fusionnés

Lorsque vous fusionnez des requêtes, vous commencez par créer une seule requête à partir d'une seule exploration, puis vous combinez d'autres requêtes avec cette première requête.

Par défaut, cette première requête est considérée comme la requête principale. Il s'agit d'un concept important, car lorsque Looker met en correspondance les données pour créer les résultats fusionnés, il fait correspondre chaque requête ajoutée à la requête principale (et non à toute autre requête ajoutée). Par conséquent, chaque fois que vous ajoutez une requête, vous devez inclure une dimension pouvant être mise en correspondance avec une dimension de la requête principale.

Prenons l'exemple des requêtes suivantes.

La requête principale renvoie les résultats suivants:

Catégorie de produits Nombre de produits
Actif 5
Jean 9
Tenues de soirée 3

La requête secondaire renvoie les résultats suivants:

Catégorie de produits Objets de l'inventaire
Actif 11
Jean 16
Tenues de soirée 6

Si vous fusionnez ces requêtes dans le champ Catégorie de produits, Looker produit les résultats fusionnés suivants:

Catégorie de produits Nombre de produits Objets de l'inventaire
Actif 5 11
Jean 9 16
Tenues de soirée 3 6

Les résultats fusionnés n'effectuent pas de jointure SQL réelle. Toutefois, pour ceux qui connaissent déjà les jointures SQL, la fonctionnalité Merged Results (Résultats fusionnés) combine les résultats de plusieurs explorations de la même manière qu'une jointure gauche. Les résultats de la requête ajoutée sont combinés à ceux de la requête principale comme s'ils étaient joints à la requête principale.

Il n'est pas nécessaire de connaître l'idée de jointure gauche pour comprendre le fonctionnement des résultats fusionnés. Concrètement, voici pourquoi il est important de définir la requête principale:

Que se passe-t-il si une requête n'a pas de valeur de données correspondante ?

La requête principale est également importante en raison de la façon dont les valeurs nulles sont gérées dans les dimensions correspondantes:

  • Si une ligne existe dans la requête principale, mais pas dans la requête supplémentaire, les champs de la requête ajoutée seront NULL pour cette ligne.

  • Si une ligne existe dans la requête ajoutée, mais pas dans la requête principale, elle n'apparaîtra pas du tout dans les résultats.

Pour illustrer ces exemples, prenons les requêtes suivantes.

La requête principale renvoie les résultats suivants:

Catégorie de produits Rayon des produits Nombre de produits
Actif Enfants 522
Actif Adultes 545
Robes Adultes 878
Tenues de soirée Adultes 349

La requête secondaire renvoie les résultats suivants:

Catégorie de produits Nom de la marque des produits Objets de l'inventaire
Actif Marque 1 223
Robes Marque 2 80
Robes Marque 3 3
Jean Marque 3 8
Jean Marque 2 19

Si vous fusionnez ces requêtes dans le champ Catégorie de produits, Looker produit les résultats fusionnés suivants:

Catégorie de produits Rayon des produits Nom de la marque des produits Nombre de produits Objets de l'inventaire
Actif Adultes Marque 1 545 223
Actif Enfants Marque 1 522 223
Robes Adultes Marque 2 878 80
Robes Adultes Marque 3 878 3
Tenues de soirée Adultes 349

La requête principale comporte une ligne pour Vêtements habillés. Les résultats fusionnés afficheront donc cette ligne. La requête ajoutée ne comporte pas de ligne Formalwear. Par conséquent, tous les champs de cette requête afficheront la valeur NULL (∅) pour Formalwear.

La requête ajoutée comporte deux lignes pour Jeans, contrairement à la requête principale. Cette ligne n'apparaît donc pas du tout dans les résultats fusionnés.

Dans cet exemple, si vous changez de requête principale pour que la requête ajoutée devienne la nouvelle requête principale, Looker génère à la place les résultats fusionnés suivants:

Catégorie de produits Nom de la marque des produits Rayon des produits Objets de l'inventaire Nombre de produits
Actif Marque 1 Adultes 223 545
Actif Marque 1 Enfants 223 522
Robes Marque 2 Adultes 80 878
Robes Marque 3 Adultes 3 878
Jean Marque 2 19
Jean Marque 3 8

Looker n'affiche plus les lignes Formalwear, car elles n'existent pas dans la nouvelle requête principale. Toutefois, Looker affiche désormais les lignes Jeans, et ces lignes affichent la valeur NULL pour les dimensions et mesures qui ne figurent que dans la requête ajoutée à la requête principale.

Vous pouvez également consulter la section Pourquoi y a-t-il des valeurs nulles dans ma requête de résultats de fusion secondaire ? Bonnes pratiques pour obtenir d'autres conseils de dépannage en cas de valeurs de résultats fusionnés manquantes ou nulles.

Que se passe-t-il si une requête a plusieurs lignes pour la même valeur ?

Enfin, la désignation de la requête principale souhaitée est également importante en raison de la façon dont plusieurs lignes avec des valeurs correspondantes sont traitées. Si la requête ajoutée comporte au moins deux lignes dont les valeurs correspondent à l'une des lignes de la requête principale, la ligne de requête principale sera dupliquée ce nombre de fois.

Dans l'exemple suivant, la requête added comporte deux lignes pour Dresses. Dans les résultats fusionnés, les valeurs Dresses de la requête principale apparaissent deux fois, une fois pour chacune des lignes Dresses de la requête ajoutée.

La requête principale renvoie les résultats suivants:

Catégorie de produits Rayon des produits Nombre de produits
Actif Enfants 522
Actif Adultes 545
Robes Adultes 878
Tenues de soirée Adultes 349

La requête secondaire renvoie les résultats suivants:

Catégorie de produits Nom de la marque des produits Objets de l'inventaire
Actif Marque 1 223
Robes Marque 2 80
Robes Marque 3 3
Jean Marque 3 8
Jean Marque 2 19

La requête de résultats fusionné, avec le champ Catégorie de produits, renvoie les résultats suivants:

Catégorie de produits Rayon des produits Nom de la marque des produits Nombre de produits Objets de l'inventaire
Actif Adultes Marque 1 545 223
Actif Enfants Marque 1 522 223
Robes Adultes Marque 2 878 80
Robes Adultes Marque 3 878 3
Tenues de soirée Adultes 349

Notez que si vous changez la requête principale dans ce cas, vous aurez toujours deux lignes Dresses, car la nouvelle requête principale comporte deux lignes pour Dresses. L'essentiel est que, lorsque vous fusionnez des requêtes, les résultats peuvent comporter plus de lignes que la requête principale, mais il n'y aura jamais moins de lignes.

Fusionner des requêtes

Pour fusionner les résultats de plusieurs requêtes, procédez comme suit:

  1. Créez la première requête source, appelée requête principale.
  2. Ajoutez la requête source suivante.
  3. Vérifiez les règles de fusion de ces requêtes et exécutez la fusion.
  4. Si vous le souhaitez, vous pouvez:

    • Triez, faites pivoter et créez des visualisations pour les résultats.
    • Réutilisez et partagez les résultats à l'aide de l'URL.
    • Modifiez les résultats en modifiant les requêtes sources ou en ajoutant des requêtes sources.

Créer la requête principale

Pour fusionner les résultats de plusieurs requêtes, commencez par préparer la requête principale en procédant comme suit:

  1. Sélectionnez une exploration dans le menu Explorer.
  2. Sélectionnez les dimensions et les mesures qui vous intéressent dans le sélecteur de champs. Ne faites pas pivoter les dimensions au cours de cette étape.

    C'est tout ce dont vous avez besoin pour commencer à fusionner les résultats. Cependant, vous pouvez également utiliser des techniques d'exploration avancées pour affiner davantage votre requête. Vous pouvez :

  3. Si vous le souhaitez, ajoutez des filtres pour les données.

  4. Vous pouvez également inclure des calculs de table pour créer des métriques ad hoc.

  5. Si vous le souhaitez, cliquez sur Exécuter pour afficher les résultats de votre requête principale et tester vos filtres et vos calculs de table.

Ajouter la requête source suivante

Une fois que vous avez créé votre exploration principale, ajoutez une autre requête source en procédant comme suit:

  1. Dans l'exploration, cliquez sur l'icône en forme de roue dentée.
  2. Sélectionnez Fusionner les résultats. La fenêtre Sélectionner une exploration s'ouvre.
  3. Dans la fenêtre Choose an Explore (Sélectionner une exploration), cliquez sur le nom de l'exploration dans laquelle vous allez créer votre prochaine requête.

    Looker ouvre l'exploration dans la fenêtre Modifier la requête, où vous pouvez créer la nouvelle requête à fusionner avec votre requête principale.

    Pour fusionner des requêtes, Looker trouve dans les requêtes des dimensions dont les valeurs peuvent être mises en correspondance. Assurez-vous que vos requêtes contiennent au moins une dimension commune dont les valeurs peuvent être mises en correspondance avec exactitude. Par exemple, si les deux requêtes ont une dimension Date, mais qu'une requête utilise la valeur "2017-10-01" et l'autre "Octobre 2017", Looker ne pourra pas utiliser cette dimension pour fusionner les requêtes.

  4. Sélectionnez les dimensions et les mesures qui vous intéressent dans le sélecteur de champs. Veillez à inclure au moins une dimension qui correspondra exactement à une dimension de la requête principale. Ne faites pas pivoter les dimensions au cours de cette étape.

  5. Vous pouvez également inclure des filtres pour affiner les données.

  6. Vous pouvez aussi intégrer des calculs de table pour créer des champs basés sur les champs de la requête.

  7. Si vous le souhaitez, cliquez sur Exécuter pour afficher les résultats de la requête source et tester vos filtres et vos calculs de table.

  8. Cliquez sur Enregistrer pour fusionner la requête avec votre requête principale.

Vérifier les règles de fusion et exécuter la fusion

Looker trouve automatiquement les meilleures dimensions à utiliser pour faire correspondre les requêtes et affiche ces correspondances dans la section Merge Rules (Règles de fusion). Looker affiche les champs à utiliser pour chaque fusion.

  1. Examinez les dimensions utilisées par Looker pour faire correspondre les requêtes. Pour en savoir plus, consultez Modifier les règles de fusion.

  2. Cliquez sur Run (Exécuter) pour afficher les résultats de requête fusionnés.

Notez que tous les calculs de table provenant des requêtes sources sont affichés sous forme de dimensions standards dans les résultats fusionnés.

Utiliser et modifier les résultats fusionnés

Vous pouvez utiliser les résultats fusionnés pour:

  • Examiner et trier les données, y compris en détaillant les données Toutefois, si vous affichez le détail de la dimension utilisée pour fusionner les deux explorations, Looker n'affiche que les champs d'exploration de l'exploration principale.
  • Affichez les totals. Looker calcule les totaux sur chacune des requêtes individuelles et les utilise dans les résultats fusionnés. Par conséquent, les totaux peuvent sembler trop élevés, car ils sont calculés avant la fusion des résultats. Pour éviter cela, vous pouvez aligner les filtres sur chaque requête.
  • Créez des visualisations.
  • Faites pivoter des dimensions dans les résultats fusionnés en sélectionnant Tableau croisé dynamique dans le menu en forme de roue dentée situé dans la colonne correspondant à la dimension du tableau de données. Notez que vous ne pouvez pas faire pivoter les dimensions dans les requêtes sources.

Pour réutiliser les résultats fusionnés, vous pouvez:

  • Partagez les résultats à l'aide de l'URL du navigateur.
  • Ajoutez l'URL aux favoris dans votre navigateur pour exécuter à nouveau la même requête fusionnée. Vous ne pouvez pas enregistrer les résultats fusionnés en tant que Look.
  • Enregistrez les résultats fusionnés sous forme de vignette dans un tableau de bord (consultez Enregistrer vos résultats fusionnés dans un tableau de bord).

Si vous souhaitez modifier les résultats fusionnés, vous pouvez:

  • Pour fusionner les requêtes d'explorations supplémentaires, cliquez sur le bouton Add Query (Ajouter une requête) et suivez la même procédure.
  • Modifiez les requêtes sources ou configurez leur fusion. Pour en savoir plus, consultez Modifier des résultats fusionnés.
  • Créez des filtres en les ajoutant aux requêtes sources, soit lors de la création et de la fusion des requêtes, soit en les modifiant à partir de la page Résultats fusionnés. Notez que vous ne pouvez pas ajouter de filtre directement aux résultats fusionnés.

Si vous souhaitez vider le cache et récupérer de nouveaux résultats de votre base de données, sélectionnez l'option Vider le cache et actualiser dans le menu représenté par une roue dentée en haut à droite de la fenêtre Résultats fusionnés.

Pour télécharger votre requête de résultats fusionnés, vous pouvez l'enregistrer dans un tableau de bord, puis télécharger ce tableau de bord au format PDF ou sous forme de collection de fichiers CSV.

Modification des résultats fusionnés

Une fois vos résultats fusionnés, vous pouvez les modifier comme suit:

Modifier les requêtes sources

Dans la fenêtre Résultats fusionnés, vous pouvez revenir en arrière et modifier les requêtes sources en cliquant sur leur nom dans le volet de gauche ou en sélectionnant Modifier dans le menu en forme de roue dentée de la requête. Ces options vous font revenir à l'écran Modifier la requête.

Vous pouvez ajouter ou supprimer des champs, ajouter des calculs de table ou modifier les filtres de la requête source. Cliquez sur Enregistrer pour revenir à vos résultats fusionnés.

Le menu en forme de roue dentée de la requête offre également les options suivantes:

  • Rename (Renommer) : spécifiez un autre nom à afficher pour la requête dans la fenêtre Merged Results (Résultats fusionnés).
  • Définir comme requête principale: faites de la requête la base des résultats fusionnés. Consultez la section Comprendre les résultats fusionnés pour comprendre le rôle de la requête principale.
  • Supprimer: supprime la requête des résultats fusionnés. (Si vous souhaitez ajouter de nouveau la requête aux résultats fusionnés après l'avoir supprimée, vous pouvez utiliser le bouton Retour de votre navigateur.)

Modifier les règles de fusion

Lorsque vous ajoutez une requête, Looker trouve automatiquement les dimensions qu'il peut utiliser pour faire correspondre la requête ajoutée à la requête principale. Chaque requête ajoutée doit comporter au moins une dimension dont les valeurs correspondent exactement à une dimension de la requête principale. Looker affiche ces correspondances dans la section Merge Rules (Règles de fusion), qui indique les champs qui seront utilisés pour fusionner les requêtes.

Vous pouvez utiliser la section Merge Rules (Règles de fusion) pour modifier ou ajouter les champs que Looker utilise pour fusionner les requêtes.

  1. Utilisez le menu déroulant pour afficher d'autres options de dimension permettant de faire correspondre les données.
  2. Si d'autres dimensions peuvent être utilisées pour la mise en correspondance, Looker affiche + Ajouter une dimension. Cliquez sur + Ajouter une dimension pour configurer un ensemble supplémentaire de dimensions à utiliser dans la fusion des requêtes.
  3. Cliquez sur X si vous ne souhaitez pas faire correspondre les données entre les deux dimensions.

Changer de requête principale

Lors de la fusion de requêtes, vous commencez par créer une seule requête à partir d'une seule exploration, puis vous ajoutez d'autres requêtes en les combinant avec cette première requête. Par défaut, cette première requête est considérée comme la requête principale, mais vous pouvez désigner n'importe quelle requête comme requête principale en sélectionnant Définir comme requête principale dans le menu en forme de roue dentée de la requête.

Chaque requête ajoutée doit comporter au moins une dimension dont les valeurs peuvent être mises en correspondance exactement avec une dimension de la requête principale.

Lorsque vous changez de requête principale, les résultats fusionnés sont susceptibles de changer. Consultez la section Comprendre les résultats fusionnés pour comprendre le rôle de la requête principale.

Enregistrer vos résultats fusionnés dans un tableau de bord

Une fois que vous avez ajouté votre requête de résultats fusionnés à un tableau de bord, vous pouvez ajouter ou appliquer des filtres de tableau de bord à votre vignette de résultats fusionnés, réorganiser la vignette, modifier la vignette ou ajouter de nouvelles vignettes à votre tableau de bord. Vous ne pouvez pas télécharger les données d'une vignette basée sur des résultats fusionnés, mais vous pouvez télécharger le tableau de bord au format PDF ou sous forme de collection de fichiers CSV.

Tous les filtres de tableau de bord appliqués à une vignette de résultats fusionnés seront désactivés si la requête fusionnée est modifiée d'une manière ou d'une autre. Vous pouvez rétablir les filtres en les réactivant dans la fenêtre de configuration des filtres.

Vous pouvez également utiliser une requête de résultats fusionnés sur un tableau de bord LookML en enregistrant d'abord la requête dans un tableau de bord défini par l'utilisateur, puis en convertissant ce tableau de bord en LookML. Pour convertir un tableau de bord défini par l'utilisateur en code LookML, suivez la procédure décrite sur la page de documentation Créer des tableaux de bord LookML.

Fusion de requêtes dans des Looks, des tableaux de bord et des explorations intégrés

Vous pouvez fusionner des requêtes dans des Looks, tableaux de bord et explorations intégrés, si vous disposez des autorisations appropriées. Pour fusionner la requête d'un Look intégré avec une autre requête:

  1. Passez la souris sur le titre de la présentation pour afficher son menu en forme de roue dentée, puis cliquez dessus.
  2. Sélectionnez Merge Results (Fusionner les résultats), puis suivez la procédure pour fusionner des requêtes.

Pour fusionner la requête d'une vignette de tableau de bord intégré:

  1. Placez le pointeur de la souris sur la vignette du tableau de bord pour consulter le menu déroulant qui lui est associé.
  2. Dans le menu déroulant, sélectionnez Explorer à partir d'ici. Looker ouvre l'exploration correspondant à la requête de cette vignette.
  3. Cliquez sur le menu en forme de roue dentée de l'exploration et sélectionnez Merge Results (Fusionner les résultats).
  4. Suivez la procédure pour fusionner des requêtes.

Notes

  • La fonctionnalité Résultats fusionnés est limitée à 5 000 lignes de données pour chacune des requêtes fusionnées. Si vous incluez des requêtes qui renvoient plus de 5 000 lignes de données, seules les 5 000 premières lignes renvoyées sont incluses dans les résultats fusionnés.

  • Tous les champs de la requête principale sont affichés dans les résultats fusionnés, sous le nom de ces champs. Cela signifie que si la requête principale et une autre requête utilisent des noms différents pour une dimension correspondante, seul le nom de la dimension de la requête principale s'affichera dans les résultats.

Conclusion

Dans la mesure du possible, vous devez utiliser les données d'une seule exploration, car vos développeurs Looker ont soigneusement réfléchi à la manière de combiner les données des différentes tables de base de données. Toutefois, si nécessaire, la fusion des résultats est une technique efficace qui vous permet de combiner des données provenant de plusieurs explorations et bases de données.