Relations de dimension
L'utilisation d'une dimension définit les relations entre une dimension de cube et les groupes de mesures d'un cube. Une dimension de cube est une instance d'une dimension de base de données qui est utilisée dans un cube spécifique. Un cube peut (et c'est souvent le cas) avoir des dimensions de cube qui ne sont pas directement liées à un groupe de mesures, mais qui peuvent être indirectement liées au groupe de mesures via une autre dimension ou un autre groupe de mesures. Lorsque vous ajoutez une dimension de base de données ou un groupe de mesures à un cube, Microsoft SQL Server Analysis Services tente de déterminer l'utilisation de la dimension en examinant les relations entre les tables de dimension et les tables de faits dans la vue de source de données du cube et en examinant les relations entre les attributs dans les dimensions. Analysis Services définit automatiquement les paramètres d'utilisation de la dimension pour les relations qu'il peut détecter.
Une relation entre une dimension et un groupe de mesures est constituée des tables de dimension et de faits qui participent à la relation et d'un attribut de granularité qui spécifie la granularité de la dimension dans le groupe de mesures particulier.
Relations de dimension régulières
Une relation de dimension régulière entre une dimension de cube et un groupe de mesures existe quand la colonne clé de la dimension est directement jointe avec la table de faits. Cette relation directe est basée sur une relation clé primaire - clé étrangère dans la base de données relationnelle sous-jacente, mais elle peut aussi être basée sur une relation logique définie dans la vue de source de données. Une relation de dimension régulière représente la relation entre des tables de dimension et une table de faits dans une conception de schéma en étoile traditionnelle. Pour plus d'informations sur les relations régulières, consultez Définir une relation régulière et des propriétés de relation régulière.
Relations de dimension de référence
Une relation de dimension de référence entre une dimension de cube et un groupe de mesures existe quand la colonne clé de la dimension est indirectement jointe à la table de faits par l'intermédiaire d'une clé d'une autre table de dimension, comme le montre l'illustration suivante.
Une relation de dimension de référence représente la relation entre des tables de dimension et une table de faits dans une conception de schéma en flocons. Quand des tables de dimension sont connectées dans un schéma en flocons, vous pouvez définir une seule dimension en utilisant des colonnes de plusieurs tables ou vous pouvez définir des dimensions distinctes basées sur des tables de dimension distinctes puis définir un lien entre celles-ci en utilisant une relation de dimension de référence. L'illustration suivante montre une table de faits intitulée InternetSales et deux tables de dimension Customer et Geography dans un schéma en flocon.
Vous pouvez créer une dimension avec la table Customer comme table de dimension principale et la table Geography incluse en tant que table associée. Une relation régulière est ensuite définie entre la dimension et le groupe de mesures InternetSales.
Vous pouvez également créer deux dimensions associées au groupe de mesures InternetSales : une dimension basée sur la table Customer et une dimension basée sur la table Geography. Vous pouvez ensuite lier la dimension Geography au groupe de mesures InternetSales au moyen d'une relation de dimension de référence utilisant la dimension Customer. Dans ce cas, quand les faits du groupe de mesures InternetSales sont dimensionnés par la dimension Geography, les faits sont dimensionnés par client et par localisation géographique. Si le cube contenait un deuxième groupe de mesures appelé Reseller Sales, il ne vous serait pas possible de dimensionner les faits dans le groupe de mesures correspondant par Geography car il n'y aurait pas de relation entre Reseller Sales et Geography.
Vous pouvez chaîner ensemble un nombre illimité de dimensions de référence, comme le montre l'illustration suivante.
Pour plus d'informations sur les relations référencées, consultez Définir une relation référencée et des propriétés de relation référencée.
Relations de dimension de fait
Les dimensions de fait, fréquemment appelées dimensions dégénérées, sont des dimensions standard construites à partir de colonnes d'attributs de tables de faits, et non de tables de dimension. Des données dimensionnelles utiles sont parfois stockées dans une table de faits pour réduire la duplication. Par exemple, le diagramme suivant montre la table de faits FactResellerSales de l'exemple de base de données Adventure Works DW Multidimensional 2012 .
La table contient des informations d'attribut non seulement pour chaque ligne d'une commande émise par un revendeur, mais aussi sur la commande elle-même. Les attributs entourés dans le diagramme précédent identifient les informations de la table FactResellerSales qui peuvent être utilisées en tant qu'attributs d'une dimension. Dans ce cas, deux éléments d'informations supplémentaires, le numéro de suivi du transporteur et le numéro du bon de commande émis par le revendeur, sont représentés par les colonnes d'attribut CarrrierTrackingNumber et CustomerPONumber. Ces informations offrent un intérêt : par exemple, les utilisateurs voudront sûrement voir les informations agrégées, telles que le coût total des produits, de toutes les commandes expédiées sous un numéro de suivi. Mais, sans une dimension, il est impossible d'organiser ou d'agréger les données de ces deux attributs.
Théoriquement, vous pouvez créer une table de dimension qui utilise les mêmes informations de clé que la table FactResellerSales, et transférer les deux autres colonnes d'attribut, CarrierTrackingNumber et CustomerPONumber, vers la table de dimension. Toutefois, vous dupliquez alors une partie significative des données et augmentez inutilement la complexité dans l'entrepôt de données pour juste représenter deux attributs sous la forme d'une dimension distincte.
[!REMARQUE]
Les dimensions de fait sont fréquemment utilisées pour prendre en charge des actions d'extraction. Pour plus d'informations sur les actions, consultez Actions (Analysis Services - Données multidimensionnelles).
[!REMARQUE]
Les dimensions de fait doivent être mises à jour de manière incrémentielle après chaque mise à jour du groupe de mesures référencé par la relation de fait. Si la dimension de fait est une dimension ROLAP, le moteur de traitement Analysis Services supprime les caches et traite de manière incrémentielle le groupe de mesures.
Pour plus d'informations sur les relations de faits, consultez Définir une relation de fait et des propriétés de relation de fait.
Relations de dimension plusieurs-à-plusieurs
Dans la plupart des dimensions, chaque fait joint un et un seul membre de dimension, un seul membre de dimension peut être associé à plusieurs faits. Dans la terminologie des bases de données relationnelles, on parle de relation un-à-plusieurs. Cependant, il est fréquemment utile de joindre un seul fait à plusieurs membres de dimension. Par exemple, un client d'une banque peut avoir plusieurs comptes (compte-chèque, compte d'épargne, compte de carte de crédit et compte d'investissement), et un compte peut avoir une jointure et plusieurs détenteurs. La dimension Customer créée à partir de ces relations a alors plusieurs membres qui font référence à une transaction de compte.
SQL Server Analysis Services vous permet de définir une relation plusieurs-à-plusieurs entre une dimension et une table de faits.
[!REMARQUE]
Pour pouvoir prendre en charge une relation de dimension plusieurs-à-plusieurs, la vue de source de données doit avoir établi une relation de clé étrangère entre toutes les tables impliquées, comme indiqué dans le schéma précédent. Sinon, vous ne pouvez pas sélectionner le groupe de mesures intermédiaire approprié lors de l'établissement de la relation dans l'onglet Utilisation de la dimension du Concepteur de dimensions.
Pour plus d'informations sur les relations plusieurs-à-plusieurs, consultez Définir une relation plusieurs à plusieurs et les propriétés d'une relation plusieurs à plusieurs.
Voir aussi
Concepts
Dimensions (Analysis Services - Données multidimensionnelles)