Modèle de données Tableau
Chaque source de données que vous créez dans Tableau possède un modèle de données. Vous pouvez considérer un modèle de données comme un diagramme qui indique à Tableau comment interroger les données dans les tables de base de données connectées.
Les tables que vous ajoutez à l’espace de travail dans le volet Source de données créent la structure du modèle de données. Un modèle de données peut être simple, par exemple une table unique. Il peut aussi être plus complexe, avec plusieurs tables utilisant différentes combinaisons de relations, de jointures et d’unions.
Le modèle de données comporte deux couches :
- La vue par défaut que vous voyez en premier dans l’espace de travail de la page Source de données est la couche logique de la source de données. Vous combinez les données dans la couche logique à l’aide de relations (ou « noodles »). Considérez cette couche comme l’espace de travail Relations dans la page Source de données. Pour plus d’informations, consultez Utiliser les relations pour l’analyse des données multi-tables(Le lien s’ouvre dans une nouvelle fenêtre).
- La couche suivante est la couche physique. Vous combinez les données entre les tables au niveau de la couche physique à l’aide de jointures(Le lien s’ouvre dans une nouvelle fenêtre) et d’unions. Chaque table logique contient au moins une table physique dans cette couche. Considérez cette couche comme l’espace de travail Jointure/Union dans la page Source de données. Double-cliquez sur une table logique pour afficher ou ajouter des jointures et des unions.
Couche logique | Couche physique | |
---|---|---|
« Noodles » = Relations | Diagramme de Venn = Jointures | |
Vue de haut niveau d’une source de données avec plusieurs tables reliées. Il s’agit de la couche logique. Les tables logiques peuvent être combinées à l’aide de relations (« noodles »). Elles n’utilisent pas de types de jointures. Elles agissent comme des conteneurs pour les tables physiques. | Double-cliquez sur une table logique pour l’ouvrir et voir ses tables physiques. Vous pouvez combiner les tables physiques à l’aide de jointures ou d’unions. Dans cet exemple, la table logique Book est composée de trois tables physiques jointes (Book, Award, Info). |
Couche logique | Couche physique | |
---|---|---|
Espace de travail Relations dans la page Source de données | Espace de travail Jointure/Union dans la page Source de données | |
Les tables que vous faites glisser ici sont appelés tables logiques | Les tables que vous faites glisser ici sont appelés tables physiques | |
Les tables logiques peuvent être reliées à d’autres tables logiques | Les tables physiques peuvent être jointes ou réunies à d’autres tables physiques | |
Les tables logiques fonctionnent comme des conteneurs pour les tables physiques | Double-cliquez sur une table logique pour voir ses tables physiques | |
Le niveau de détail est au niveau des lignes dans la table logique | Le niveau de détail est au niveau des lignes dans les tables physiques fusionnées | |
Les tables logiques restent distinctes (normalisées), non fusionnées dans la source de données | Les tables physiques sont fusionnées en une seule table plate qui définit la table logique |
Couches du modèle de données
La vue de niveau supérieur que vous voyez d’une source de données est la couche logique du modèle de données. Vous pouvez aussi la considérer comme l’espace de travail Relations parce que vous combinez ici des tables utilisant des relations au lieu de jointures.
Lorsque vous combinez des données provenant de plusieurs tables, chaque table que vous faites glisser vers l’espace de travail doit avoir une relation avec une autre table. Il n’est pas nécessaire de préciser des types de jointures pour les relations. Pendant l’analyse, Tableau crée automatiquement les types de jointures appropriés en fonction des champs et du contexte d’analyse dans la feuille de calcul.
La couche physique du modèle de données est l’endroit où vous pouvez combiner les données à l’aide de jointures et d’unions. Vous ne pouvez utiliser que des permutations dans cet espace de travail. Vous pouvez le considérer comme l’espace de travail Jointure/Union. Dans les versions précédentes de Tableau, la couche physique était la seule couche du modèle de données. Chaque table logique peut contenir une ou plusieurs tables physiques.
Important : vous pouvez toujours créer, dans Tableau, des sources de données à table unique utilisant les jointures et les unions. Le comportement d’analyse d’une table unique dans Tableau n’a pas changé. Vos classeurs mis à niveau fonctionneront de la même façon qu’avant 2020.2.
Pour en savoir plus : pour des informations connexes sur la combinaison de données à l’aide des relations, consultez également ces rubriques et les billets de blogue :
- Différences entre relations et jointures
- Utiliser les relations pour l’analyse des données multi-tables
- Relier vos données
- Relations, 1ère partie : Présentation des nouvelles fonctionnalités de modélisation des données dans Tableau(Le lien s’ouvre dans une nouvelle fenêtre)
- Relations, 2ème partie : Conseils et astuces(Le lien s’ouvre dans une nouvelle fenêtre)
- Relations, 3ème partie : Poser des questions sur plusieurs tables reliées(Le lien s’ouvre dans une nouvelle fenêtre)
Consultez également les balados vidéo sur les relations à partir d’Action Analytics(Le lien s’ouvre dans une nouvelle fenêtre), tels que Pourquoi Tableau a-t-il inventé des relations?(Le lien s’ouvre dans une nouvelle fenêtre) Cliquez sur « Balado vidéo » dans la bibliothèque(Le lien s’ouvre dans une nouvelle fenêtre) pour en voir plus.
Comprendre le modèle de données
Dans les versions précédentes de Tableau (pré-2020.2), le modèle de données n’avait qu’une couche physique. Dans Tableau 2020.2 et ultérieur, le modèle de données possède une couche logique (sémantique) et une couche physique. Vous disposez ainsi de davantage d’options pour combiner des données à l’aide de schémas en fonction de votre analyse.
Dans les versions antérieures de Tableau (pré-2020,2), le modèle de données dans votre source de données était constitué d’une seule couche physique où vous pouviez spécifier des jointures et des unions. Les tables ajoutées à la couche physique (par jointure ou union) créent une seule table aplatie (dénormalisée) pour l’analyse.
Versions précédentes | 2020.2 et ultérieur | |
---|---|---|
Dans Tableau 2020.2 et versions ultérieures, le modèle de données dans votre source de données comprend maintenant une nouvelle couche sémantique au-dessus de la couche physique - appelée la couche logique - où vous pouvez ajouter plusieurs tables et les relier les unes aux autres. Les tables au niveau de la couche logique ne sont pas fusionnées dans la source de données, elles restent distinctes (normalisées) et gèrent leur niveau de détail natif.
Les tables logiques agissent comme des conteneurs pour les tables physiques fusionnées. Une table logique peut contenir une seule table physique. Elle peut aussi contenir plusieurs tables physiques fusionnées par le biais de jointures ou d’unions.
Créer un nouveau modèle
Lorsque vous ajoutez une ou plusieurs tables à la couche logique, vous créez essentiellement le modèle de données pour votre source de données. Une source de données peut être constituée d’une seule table logique ou vous pouvez faire glisser plusieurs tables sur l’espace de travail pour créer un modèle plus complexe.
- La première table que vous faites glisser vers l’espace de travail devient la table racine pour le modèle de données dans votre source de données.
- Après avoir fait glisser la table racine, vous pouvez faire glisser des tables supplémentaires dans n’importe quel ordre. Vous devrez prendre en compte les tables à relier les unes aux autres, et les paires de champs correspondants que vous définissez pour chaque relation.
- Si vous créez un schéma en étoile, il peut être utile de faire glisser la table de faits en premier, puis de relier les tables de dimensions à cette table.
- La suppression d’une table dans l’espace de travail supprime également automatiquement ses descendants reliés. Si vous supprimez la table racine, toutes les autres tables du modèle sont également supprimées.
- Chaque relation doit être constituée d’au moins une paire assortie de champs. Ajoutez plusieurs paires de champs pour créer une relation composée. Les paires assorties doivent avoir le même type de données. La modification du type de données dans la page Source de données ne modifie pas cette exigence. Tableau continuera d’utiliser le type de données dans la base de données sous-jacente pour les requêtes.
- Les relations peuvent être basées sur des champs calculés.
- Vous pouvez spécifier comment comparer les champs utilisés dans les relations à l’aide d’opérateurs lorsque vous définissez la relation.
Pour plus d’informations sur les relations, consultez Créer et définir les relations dans Relier vos données.
Modèle multi-tables
- Pour créer un modèle multi-tables, faites glisser des tables sur la couche logique de l’espace de travail de la page Source de données.
Les tables que vous faites glisser sur la couche logique de l’espace de travail de la page Source de données doivent être reliées entre elles. Lorsque vous faites glisser des tables supplémentaires sur l’espace de travail de la couche logique, Tableau tente automatiquement de créer la relation en fonction des contraintes de clés existantes et des champs correspondants pour définir la relation. S’il ne peut pas déterminer les champs correspondants, vous devrez les sélectionner.
Si aucune contrainte n’est détectée, une relation de plusieurs à plusieurs est créée et l’intégrité référentielle est définie sur Certains enregistrements correspondent. Ces paramètres par défaut sont un choix sûr et offrent une flexibilité optimale pour votre source de données. Les paramètres par défaut prennent en charge les jointures externes complètes et optimisent les requêtes en agrégeant les données de table avant de former des jointures lors de l’analyse. Toutes les données des lignes et des colonnes de chaque table restent disponibles pour l’analyse.
Vous pouvez ajouter des données supplémentaires dans n’importe quelle table logique en double-cliquant sur la table. La couche physique de l’espace de travail de la page Source de données s’ouvre alors. Si vous avez besoin d’utiliser des jointures ou des unions, vous pouvez faire glisser les tables que vous voulez lier ou réunir dans l’espace de travail de la couche physique. Les tables physiques sont fusionnées dans leur table logique.
Suivez les étapes de la section Créer et définir des relations pour combiner plusieurs tables.
Modèles à table unique
- Pour créer un modèle à table unique, faites glisser une table dans l’espace de travail de la couche logique de la page Source de données. Vous pouvez ensuite utiliser les champs de cette table dans le volet Données pour l’analyse.
Modèle à table unique contenant d’autres tables
Vous pouvez ajouter des données supplémentaires dans la table logique unique en double-cliquant sur la table. La couche physique de l’espace de travail de la page Source de données s’ouvre alors. Si vous avez besoin d’utiliser des jointures ou des unions, vous pouvez faire glisser les tables que vous voulez lier ou réunir dans l’espace de travail de la couche physique. Les tables physiques sont fusionnées dans leur table logique.
Cet exemple montre la table Book dans l’espace de travail Relations (couche logique) de la source de données. Double-cliquez sur la table logique Book pour ouvrir l’espace de travail Jointure/Union (couche physique).
Dans cet exemple, les jointures fusionnent les tables Award et Info avec la table Book. Dans ce cas, la jointure entre Book et Award sera de type un à plusieurs, au niveau de détail des prix. Les valeurs de mesures seraient dupliquées pour Book et Info. Pour éviter les duplications, vous pouvez relier Award et Info à Book au lieu de les lier à l’intérieur de la table logique Book.
Schémas de modèle de données pris en charge
Les fonctionnalités de modélisation des données dans Tableau (version 2020.2 et ultérieures) sont conçues pour faciliter l’analyse dans le cas de scénarios de données multi-tables courants, y compris les modèles de données en étoile et en flocon. Les types suivants de modèles sont pris en charge dans les sources de données Tableau.
Table unique
L’analyse d’une seule table logique contenant un mélange de dimensions et de mesures fonctionne comme dans Tableau pré-2020.2. Vous pouvez créer une table logique à l’aide d’une combinaison de jointures, d’unions, de SQL personnalisé, etc.
Étoile et flocon
Dans les entrepôts de données d’entreprise, il est courant d’avoir des données structurées en des schémas en étoile ou en flocon où les mesures sont contenues dans une table de faits centrale et où les dimensions sont stockées séparément dans des tables de dimensions indépendantes. Cette organisation de données prend en charge de nombreux flux d’analyse courants, y compris le déploiement et l’exploration en cascade.
Ces modèles peuvent être directement représentés avec les relations dans les fonctionnalités de modélisation des données disponibles dans Tableau 2020.2 et ses versions ultérieures.
Commencez par faire glisser la table de faits vers le modèle, puis reliez les tables de dimensions à la table de faits (dans un schéma en étoile) ou à d’autres tables de dimensions (dans un schéma en flocon).
Typiquement, dans un schéma en étoile ou en flocon correctement modélisé, les relations entre la table de faits et les tables de dimensions fonctionneront sur la base de plusieurs à un. Si ces informations sont codées dans votre entrepôt de données, Tableau l’utilisera automatiquement pour définir les options de performance de la relation. Si ce n’est pas le cas, vous pouvez définir ces informations vous-même. Pour plus d’informations, consultez Optimiser les requêtes des relations à l’aide des options de performance.
Dans un schéma en étoile ou en flocon correctement modélisé, chaque ligne dans la table de faits aura une entrée correspondante dans chacune des tables de dimensions. Si cela est vrai et est saisi dans vos contraintes d’intégrité d’entrepôt de données, Tableau utilisera automatiquement ces informations pour définir le paramètre d’intégrité référentielle dans les options de performance. Si certaines lignes de la table de faits n’ont pas de ligne correspondante dans une table de dimensions (parfois appelée « dimensions d’arrivée tardive » ou « faits d’arrivée précoce »), Tableau ne peut pas conserver toutes les lignes lors du calcul des mesures, mais peut abandonner des valeurs lorsqu’il s’agit d’afifcher des en-têtes de dimensions. Pour plus d’informations, consultez Optimiser les requêtes des relations à l’aide des options de performance.
Étoile et flocon avec des mesures dans plus d’une table
Dans certains schémas en étoile ou en flocon, toutes les mesures de votre analyse sont contenues dans la table de faits. Il arrive toutefois souvent que des mesures intéressantes supplémentaires soient reliées aux tables de dimensions dans votre analyse. Même si les tables de dimensions ne contiennent pas de mesures, il est courant en analyse de vouloir totaliser ou agréger des valeurs de dimensions. Dans ces cas, la distinction entre les tables de faits et les tables de dimensions est moins claire. Pour pour plus de clarté lors de l’affichage de votre modèle de données, nous avons recommandé d’ajouter d’abord la table au grain le plus fin à l’espace de travail du volet Source de données, puis de relier toutes les autres tables à cette première table.
Si vous deviez lier ces tables ensemble dans une seule table logique, les mesures dans les tables de dimensions seraient répliquées, résultant en des agrégations déformées à moins que vous n’ayez pris des précautions pour dédupliquer les valeurs à l’aide de calculs LOD ou COUNT DISTINCT. Toutefois, si vous créez plutôt des relations entre ces tables, Tableau agrège les mesures avant d’effectuer des jointures, évitant ainsi le problème de duplication inutile. Vous n’avez ainsi pas à suivre scrupuleusement le niveau de détail de vos mesures.
Analyse multi-facteurs
Dans la version 2024.2 et les versions ultérieures, les fonctionnalités de modélisation des données de Tableau prennent en charge l’analyse multi-facteurs grâce à l’utilisation de relations multi-faits. Pour obtenir des informations détaillées sur la création de modèles de données de relations multi-faits, consultez :
Quand utiliser un modèle de relations multi-faits(Le lien s’ouvre dans une nouvelle fenêtre)
Créer un modèle de données avec des relations multi-faits(Le lien s’ouvre dans une nouvelle fenêtre)
Un modèle de relations multi-faits (modèle de données avec plusieurs tables de base) autorise l’utilisation de tables non connexes dans le modèle lorsque celui-ci contient également des tables partagées. Au cours de l’analyse, les champs d’une table partagée « assemblent » conjointement des tables de données non connexes en fonction des dimensions partagées qu’elles ont en commun (comme le fait de se produire au même endroit ou au même moment). Les avantages des relations sont tous conservés, y compris la granularité ou le niveau de détail natif de chaque table.
Comme dans le cas d’un modèle de données avec une table de base unique, Tableau détermine en arrière-plan le meilleur type de jointure à utiliser en fonction de la structure de la visualisation. Mais dans un modèle de relations multi-faits, les options de jointure sont développées afin d’inclure des jointures externes et des jointures croisées et de prendre en charge plusieurs niveaux de relations. Pour plus d’informations, consultez À propos des modèles de données avec des relations multi-faits(Le lien s’ouvre dans une nouvelle fenêtre).
Remarque : Dans les versions 2020.2 à 2024.1, vous pouvez ajouter des tables de faits (contenant des mesures) aux modèles en étoile et en flocon uniquement s’ils sont liés à une table avec une seule dimension.
Par exemple, vous pouvez intégrer deux tables de faits ou plus afin d’analyser une dimension partagée, par exemple les analyses de clients de type 360. Ces tables de faits peuvent être à un niveau de détail différent de la table de dimensions, ou les unes par rapport aux autres. Elles peuvent également avoir une relation de plusieurs à plusieurs avec la table de dimensions. Dans ces scénarios, Tableau fera en sorte que les valeurs ne soient pas répliquées avant l’agrégation.
Si vous n’avez pas de table de dimension partagée qui relie vos tables de faits, vous pouvez parfois en créer de manière dynamique en utilisant SQL personnalisé ou en utilisant des jointures ou des unions d’autres tables de dimensions.
Deux tables de faits peuvent être reliées directement l’une à l’autre sur une dimension commune. Ce type d’analyse fonctionne mieux lorsque l’une des tables de faits contient un super-ensemble de la dimension commune.
Plusieurs scénarios semblent indiquer que vous devez créer un modèle de relations multi-faits avec plusieurs tables de base plutôt qu’une source de données avec une table de base unique :
- Relations circulaires. Les relations circulaires ne sont pas prises en charge. Si vous essayez de créer une source de données avec un cycle, utilisez des relations multi-faits et faites de la table en aval une autre table de base.
- Dimensions conformes et Relations OU contextuelles. Si vous avez une série de tables connexes dans les mêmes ensembles de clauses de relation (telles que la date et le lieu), ces dimensions doivent être extraites et transformées en tables partagées.
- Ceci s’avère très utile, car les clauses de relation multiples doivent toutes être vraies (une logique ET) pour que les tables soient connexes pour ces enregistrements.
- Si, au contraire, vous souhaitez analyser des enregistrements dont l’un peut être vrai à un moment donné (un OU contextuel), cette flexibilité est assurée en configurant un modèle de données avec des tables de dimensions partagées.
- Combinaisons équivalentes. Si vous utilisez une combinaison mais souhaitez obtenir une combinaison équivalente sans aucune source de données primaire et secondaire, créez un modèle de données qui combine les sources de données de la combinaison avec leurs champs de liaison dans une ou plusieurs tables partagées.
Exigences pour les relations dans un modèle de données
- Lorsque vous reliez des tables, les champs qui définissent les relations doivent présenter le même type de données. La modification du type de données dans la page Source de données ne modifie pas cette exigence. Tableau continuera d’utiliser le type de données dans la base de données sous-jacente pour les requêtes.
- Vous ne pouvez pas définir les relations en fonction de champs géographiques.
- Les relations circulaires ne sont pas prises en charge dans le modèle de données.
- Vous ne pouvez pas définir des relations entre des sources de données publiées.
Facteurs qui limitent les avantages de l’utilisation de tables reliées
- Les données « sales » dans les tables (c’est-à-dire les tables qui n’ont pas été créées avec un modèle bien structuré à l’esprit et contiennent un mélange de mesures et de dimensions dans plusieurs tables) peuvent rendre l’analyse multi-tables plus complexe.
- L’utilisation de filtres de sources de données limitera la capacité de Tableau à éliminer les jointures dans les données. Le terme « élimination des jointures » désigne la façon dont Tableau simplifie les requêtes en supprimant les jointures inutiles.
- Tables avec beaucoup de valeurs sans correspondances entre les relations.
- Dans les versions 2020.2 à 2024.1 : Interrelier plusieurs tables de faits avec plusieurs tables de dimensions (tenter de modéliser des dimensions partagées ou conformes). Dans la version 2024.2 et versions ultérieures, vous pouvez utiliser des relations multi-faits pour résoudre ces cas.