Créer un modèle de données avec relations multi-faits
L’analyse implique souvent de rassembler des tables de données sans relation directe les unes avec les autres, mais se rapportant toutes deux à des informations identiques, communes, telles que la date ou le lieu. Ce type d’analyse est parfois appelé analyse multi-faits avec dimensions partagées.
Pour effectuer ce type d’analyse dans Tableau, vous devez créer une source de données qui utilise plusieurs tables de base connectées par des tables partagées.
- Les tables de base sont les tables les plus à gauche du modèle de données dans l’onglet Source de données. Pour des conseils qui vous aideront à déterminer les tables à utiliser comme tables de base, consultez Dans quels cas utiliser un modèle avec relations multi-faits.
- Les tables partagées sont des tables en aval avec plusieurs relations entrantes. Ces tables contiennent des champs qui peuvent être utilisés pour assembler des champs non liés lors de l’analyse dans une visualisation. La date et le lieu sont des exemples de tables couramment partagées.
Créer le modèle
Construire un modèle de données de relations multi-faits revient essentiellement à créer une autre source de données utilisant des relations, mais avec deux éléments supplémentaires : des tables de base supplémentaires et plusieurs relations entrantes vers des tables partagées.
- Se connecter à vos données. Vous pouvez utiliser plusieurs connexions de données si vos tables ne sont pas toutes dans la même base de données.
- Faites glisser une table vers l’espace de travail pour créer la première table de base.
- Faites glisser une autre table du volet de gauche vers la zone de dépôt Nouvelle table de base.
Tableau affiche un avertissement indiquant que vous créez un modèle de données avec plusieurs tables de base. Nous vous recommandons de configurer un modèle de tables de base multiples uniquement si vos données en ont besoin. Sinon, utilisez un modèle de table de base unique pour éviter les complexités liées à un modèle de tables de base multiples.
- Faites glisser un autre champ vers l’espace de travail et associez-le à l’une des tables de base. Configurez chaque relation si nécessaire.
- Survolez la table de base qui n’est pas encore liée pour afficher un signe plus (appelé familièrement « boulette de viande »).
- Faites glisser l’icône de signe plus vers la table partagée pour créer une nouvelle relation entrante (également appelée « fil »).
Facultatif : continuez à ajouter des tables en aval et des tables de base. Cliquez sur l’icône du signe plus et faites-la glisser pour créer des tables partagées selon vos besoins.
Remarque : plutôt que de commencer par les tables de base, vous pouvez également commencer par créer un modèle de table de base unique et ajouter des tables de base supplémentaires ultérieurement.
Découvrir le modèle
Un modèle de données avec plusieurs tables de base est créé avec des relations, mais toutes les tables ne sont pas liées les unes aux autres au même degré. Chaque table de base définit une arborescence, qui contient toutes les tables liées à cette table de base, soit directement liées, soit en aval d’une table liée. Les tables partagées existent dans plusieurs arborescences. Pour plus d’informations sur les degrés de relation, consultez À propos des modèles de données avec relations multi-faits.
Lorsque vous affichez un modèle avec plusieurs tables de base, vous disposez de différentes options pour explorer et gérer le modèle de données. Ces options sont particulièrement utiles lorsqu’un modèle de données est complexe.
La version 2024.2 a introduit de nouveaux détails de disposition pour le modèle de données. Dans un modèle de données avec relations multi-faits, les relations sont regroupées pour permettre de suivre le nombre de relations entrantes d’une table, et les tables partagées (et les tables partagées en aval) ont un contour plus épais que les tables non partagées.
Terminologie
Les tables dans un modèle de données à tables de base multiples ont des rôles spécifiques. Les tables de base et les tables partagées sont les seules tables qui doivent exister dans un modèle de données avec relation multi-faits. (S'il n’y a pas plus d’une table de base, ce n’est pas un modèle de données avec relations multi-faits. Sans une table partagée reliant les tables de base, ce n'est pas un modèle de données valide.)
En raison de la nature souvent complexe de ces modèles, il est utile de disposer d'une terminologie commune pour discuter d'autres types de tables selon la manière dont ils s'intègrent dans le modèle de données.
- Les Tables de base sont à l'extrême gauche et n'ont aucune relation entrante.
- Dans l'exemple, Inventaire, Marketing, Ventes et Support sont des tables de base.
- Les Tables de sous-base se situent entre une table de base et une table partagée.
- Dans l'exemple, Pièces est une table de sous-base.
- Les Tables partagées ont plus d'une relation entrante.
- Dans l'exemple, Produits, Dates, Client et Fournisseur sont des tables partagées.
- Les Tables partagées en aval ont exactement une relation entrante et une table partagée quelque part en amont.
- Dans l'exemple, Sous-catégorie et Catégorie sont des tables partagées en aval.
- Les Tables non partagées en aval ont exactement une relation entrante et aucune table partagée en amont.
- Dans l'exemple, il n'y a pas de tables non partagées en aval.
- Tables de base : Inventaire, Marketing, Ventes et Support
- Table de sous-base : Pièces
- Tables partagées : Produits, Dates, Client et Fournisseur
- Tables partagées en aval : Sous-catégorie et Catégorie
- Tables non partagées en aval : aucune
Identifier une arborescence relationnelle
Survolez une table pour surligner les tables auxquelles elle est liée. Tableau met l’accent sur l’arborescence de cette table et minimise les tables non liées.
Afficher les détails de la relation
Survolez une relation ou un ensemble de relations pour voir les détails dans une infobulle.
Sélectionner une relation
Lorsqu’une relation est sélectionnée, elle est surlignée en bleu dans l’espace de travail du modèle de données et ses détails apparaissent dans le volet Détails de la table sous l’espace de travail du modèle de données. C’est dans le volet Détails de la table que vous pouvez inspecter ou modifier la clause de relation.
Il existe de nombreuses façons de sélectionner une relation :
- Cliquez sur une ligne de relation (fil) dans l’espace de travail. Chaque relation possède une zone cliquable qui sélectionne uniquement ce fil.
- Faites un clic droit ou Contrôle+clic sur un tableau dans l’espace de travail pour ouvrir son menu. Sélectionnez l’option Sélectionner la relation et choisissez la relation de table souhaitée.
- Cliquez sur un ensemble de relations dans l’espace de travail pour afficher une infobulle persistante (le survol d’un ensemble fait apparaître l’infobulle, vous devez cliquer pour qu’elle persiste). Sélectionnez ensuite une ligne dans les détails de l’infobulle pour surligner cette relation dans le modèle.
- Ouvrez le menu dans la barre d’outils du volet Détails de la table et sélectionnez la relation souhaitée. Vous pouvez également utiliser ce menu pour sélectionner une table spécifique et voir son aperçu dans le volet.
Échanger avec une table de base
Les tables intermédiaires dans une relation entre une table de base et des tables partagées vous offrent la possibilité d’échanger la table en aval avec la table de base. Il s’agit simplement d’un changement visuel destiné à faciliter la compréhension conceptuelle. Il ne modifie pas la structure du modèle de données.
Faites un clic droit ou Contrôle+clic sur une table en aval et sélectionnez Échanger avec la table de base (nom de la table). En outre, l’option d’échange n’est présente que sur la table en aval et non sur la table de base.
L’option d’échange n’est pas disponible pour les tables qui modifieraient le modèle de données si elles étaient échangées, telles que les tables partagées ou les tables partagées en aval. Seules les tables non partagées en aval ou les tables de sous-base peuvent être échangées avec les tables de base.
Exemple
Dans cet exemple, les tables Parlor Info et Ice Cream Sales peuvent être échangées sans modifier la structure fondamentale du modèle de données. Aucune autre table ne peut être échangée.
- Les ventes de glaces sont liées à la fois à Parlor Info et à la table partagée Date.
- La table Parlor Info est liée à la fois à la table Ice Cream Sales et à la table partagée Location.
- La météo est liée à la fois aux tables partagées Date et Location.
Ces deux modèles sont conceptuellement équivalents :
Réduire une table de base
Vous pouvez également réduire un chemin de relation, ou arborescence, à sa seule table de base pour simplifier temporairement l’affichage du modèle de données.
Cliquez sur les boutons Réduire ou Agrandir dans une table de base pour réduire ou développer toute son arborescence. Vous pouvez faire un clic droit ou Ctrl-clic sur une table en aval et sélectionner Réduire ce chemin d’accès ou Réduire d’autres chemins d’accès. Cette option n’est pas disponible sur les tables partagées ou les tables en aval des tables partagées.
La réduction d’une arborescence en sa table de base est purement visuelle et ne déclenchera pas l’alerte Tables non liées. Un chemin réduit est indiqué par une table de base avec une table empilée et un bouton Développer. La réduction affecte toutes les tables et relations qui concernent uniquement cette arborescence, de sorte que les tables partagées avec un chemin non réduit ne sont pas masquées.
Utilisez le bouton Développer pour rouvrir la table de base et tout ce qui se trouve dans l’arborescence.
Résolution des problèmes
Créer une source de données unique
Toutes les tables doivent être liées à l’ensemble de la source de données d’une manière ou d’une autre. S’il existe des tables qui ne sont pas liées au modèle de données global, une alerte s’affiche. L’alerte persiste jusqu’à ce qu’aucune table ou arborescence ne soit complètement séparée du reste du modèle de données. Lorsque l’alerte est active, la source de données ne peut pas être publiée et vous ne pouvez pas l’utiliser dans une analyse.
Vous pouvez ouvrir l’alerte et définir des tables non liées, séparées visuellement pour identifier les tables qui ont déclenché l’alerte. Cette option est utile lorsque vous disposez d’un modèle complexe et que vous devez identifier la ou les tables qui ne sont pas encore liées au reste du modèle de données.
Exemple
Dans les étapes ci-dessous Créer un modèle, une alerte s’affiche à l’étape 4 avant qu’une relation soit ajoutée pour connecter la deuxième table de base.
Si vous activez l’option Séparer visuellement les tables non liées, la table Clubs sera déplacée sous la ligne Tables non liées. Vous pouvez résoudre l’alerte en liant Clubs à Students.
Résoudre un cycle
Même si certaines tables ne sont pas directement liées les unes aux autres, l’ensemble du modèle de données doit former un tout cohérent. Dans cet exemple, chaque table de base définit une arborescence mais aucune table partagée ne les connecte. Ce n’est pas un modèle valide pour l’analyse.
Les deux groupes de tables liées doivent être combinés via une table partagée...
... ou le modèle de données doit être créé en tant que deux sources de données distinctes.
Restrictions du modèle de données
Certains chemins de relation entre les tables ne sont pas pris en charge dans un modèle à plusieurs tables de base. En cas d’échec lorsque vous tentez de créer une deuxième relation entrante sur une table, vérifiez que la structure que vous essayez de créer est prise en charge dans Tableau. Voici des exemples de modèles non pris en charge :
Cycles
Les cycles (dans lesquels il existe plusieurs chemins de relation entre une table en amont et la même table en aval) ne sont pas pris en charge. Cette structure non prise en charge est parfois appelée un « nœud papillon ». Pour modéliser ce type de relation entre les tables dans Tableau, utilisez plusieurs tables de base au lieu d’un nœud papillon en convertissant la table en aval en une autre table de base.
Le modèle de données doit être un graphique acyclique orienté. Cela signifie que chaque relation entrante vers une table doit être traçable en amont vers une table de base différente.
Non pris en charge. La table X a deux relations entrantes qui proviennent toutes deux de tables en aval de la table de base A. | Pris en charge. Les tables S et T ont toutes deux plusieurs relations entrantes, mais chacune provient d’une table de base différente. | Pris en charge. Bien que cela puisse visuellement ressembler à un cycle, les relations entrantes pour la table S et la table T peuvent être retracées vers différentes tables de base. |
Tables partagées imbriquées
Les tables partagées imbriquées ne sont pas prises en charge. Toutes les tables en aval d’une table partagée (une table avec plusieurs relations entrantes) ne peuvent avoir qu’une seule relation entrante.