F.                   GÉRER LES RELATIONS

Les relations permettent d'utiliser globalement les données, quelle que soit la table les contenant. Elles sont créées automatiquement mais peuvent être créées ou modifiées manuellement. Elles obéissent aux lois issues de l'algèbre relationnelle exploitées dans les sgbdr mais les modèles Power BI n'acceptent qu'une relation active entre 2 tables.

1.            THÉORIE

a)            BASES

Le domaine (X, Y…) est un ensemble fini ou infini de valeurs. On le représente par une liste d'éléments ou bien une condition nécessaire et suffisante d'appartenance.

Le modèle relationnel permet de représenter les relations à l'aide de tables :

  • Chaque colonne a un identificateur qui appartient à un domaine.
  • Une ligne du tableau représente une occurrence ; on l'appelle tuple
  • Chacune des cases représente un attribut ; on appelle attribut le nom des colonnes qui représentent les constituants de la relation (un attribut est repéré par un nom et un domaine de définition, c'est-à-dire l'ensemble des valeurs qu'il peut prendre).

Une image contenant table

Description générée automatiquement

(1)          DOMAINE

Il caractérise un ensemble de valeurs.

couleur = { bleu , gris , rouge }
booléen = { vrai , faux }
prix = { 26000 , 34950 }
entier
réel
chaine

Un produit cartésien de domaines est l'ensemble de tous les couples, dont la première composante appartient à X (ex : couleur) et la seconde à Y (ex : vrai/faux).

Si X = {bleu, blanc, rouge} et Y = {vrai, faux}
Alors le produit cartésien X * Y donne :

Une image contenant table

Description générée automatiquement

(2)          RELATION

C'est un sous-ensemble du produit cartésien d’une liste de domaines.

COULEURS DE VOITURES

X = Modèle
Y = Couleur

Une image contenant table

Description générée automatiquement

(3)          ATTRIBUT

C'est le nom donné à une colonne d’une relation.

Une image contenant table

Description générée automatiquement

 


 

 

(4)          ATTRIBUT CLÉ PRIMAIRE

Une clé primaire est un groupe d’attributs minimum (un ou plusieurs) qui identifie un tuple de manière unique dans une relation. Elle est obligatoire.


 

 

La voiture N°9 est une Toyota Rav4 noire au prix de 26990 € émettant 202 g de Co2 au km

Le propriétaire tel que N°Pro=2 s'appelle Marc Perez et habite 12 rue des rosiers à Marseille.

 

Une relation étant un ensemble de tuples, il ne peut y avoir deux tuples de même clé dans une relation

(5)          ATTRIBUT CLÉ ÉTRANGÈRE

Une clé étrangère est un groupe d’attributs minimum d'une relation (un ou plusieurs) qui identifie une association vers une autre relation.

Il existe une relation entre les propriétaires de véhicules et les véhicules :
À chaque propriétaire appartient un ou plusieurs véhicules et chaque véhicule appartient à un seul propriétaire ; cette relation d'appartenance est matérialisée par la présence de l'identifiant du propriétaire dans la table véhicule sous forme d'une clé étrangère

(6)          CONTRAINTE D’ENTITÉ

Toute relation doit posséder une clé primaire non nulle (ex : N° dans Véhicule).

Une image contenant table

Description générée automatiquement

(7)          CONTRAINTE D'INTÉGRITÉ RÉFÉRENTIELLE

Une référence est un groupe d’attributs (partie d’une clé) qui référence une clé d’une autre relation ; lors d’une insertion, la valeur de la clé étrangère doit exister dans la relation référencée. Elle traduit les liens sémantiques entre deux relations.

Une image contenant table

Description générée automatiquement

b)            ALGÈBRE RELATIONNELLE (bases)

L'algèbre relationnelle est constituée d'un ensemble d'opérations formelles sur les relations. Elle permet de créer de nouvelles relations résultantes de ces opérations.

LES OPÉRATEURS SONT DE DEUX TYPES :

  • Les opérateurs ensemblistes (Union, Différence, Intersection, Produit cartésien étendu)
  • Les opérateurs relationnels (Restriction, Projection, Jointure, Division)
(1)          EXEMPLES D'OPERATEUR ENSEMBLISTE

L'union, la différence et l'intersection nécessite des relations (tables) de structure compatible.

Union : Rel1 U Rel2  Rel1

L'opérateur "union" noté "U" fusionne deux relations en une seule.

VÉHICULE-1

Une image contenant table

Description générée automatiquement

VÉHICULE-2

Une image contenant table

Description générée automatiquement

VÉHICULE-1 U VÉHICULE-2

Une image contenant table

Description générée automatiquement

INTERSECTION : REL1 ∩ REL2  REL1

L'opérateur "intersection" noté "" isole les occurrences communes entre les relations 1 et 2.

VÉHICULE-1

Une image contenant table

Description générée automatiquement
VÉHICULE-2

Une image contenant table

Description générée automatiquement

VÉHICULE-1 VÉHICULE-2

(2)          EXEMPLE D'OPERATEUR RELATIONNEL

JOINTURE : REL1  REL2 REL3

C'est une restriction du produit cartésien des deux relations.

  • jointure naturelle

La jointure naturelle réalise une liaison logique entre deux tables. La condition de sélection est l’égalité entre la clé primaire d'une relation et la clé étrangère lui correspondant dans une autre relation. La notation est de la forme : r1  r2 et s'écrit Join ( r1, r2).

VÉHICULE




PROPRIETAIRE

Une image contenant table

Description générée automatiquement

VÉHICULE  PROPRIETAIRE

c)             MODÈLE POWER BI

Ces notions sont globalement reprises dans le modèle Power Bi et utilisées dans les formules DAX. Power Bi distingue 2 types de tables : la table "facts" et les tables "dimensions"

Une image contenant texte

Description générée automatiquement

(1)          LA TABLE "FACT"

Elle contient des données factuelles liées à l'observation, chaque donnée unique étant stockée dans une ligne.

Dans une gestion d'entreprise, elle va par exemple contenir les données de vente

Une image contenant texte

Description générée automatiquement

(2)          LES TABLES "DIMENSIONS"

Elles contiennent les éléments qui vont permettre de classifier, regrouper, illustrer la table "facts". Une colonne à valeur unique va permettre de l'associer à la table "facts".

Dans une gestion d'entreprises, elles vont contenir les clients, les produits et toutes les informations complémentaires liées

Une image contenant texte

Description générée automatiquement 

(3)          COMPARAISON

Les types de tables sont souvent faciles à distinguer.

Principales différences

Caractéristiques

table "Dimension"

table "Fact"

Objectif du modèle

Données complémentaires

Observations, événements

Structure

Inclut une colonne "clé unique" et des colonnes complémentaires descriptives pour filtrage et regroupement

Inclut des colonnes reprenant les valeurs des colonnes "clés" des tables "dimension" et des valeurs numériques pouvant faire l'objet de calculs

Volume

Assez peu volumineuses relativement à la table "fact"

Volumineuse à très volumineuse

Requêtes

Filtres, regroupement

Totalisation, statistiques

(4)          TYPE DE RELATIONS

Deux cas de figure :

  • Un à plusieurs - le + fréquent
    une valeur de la table "dimensions" est liée à plusieurs valeurs de la table "fact"
  • Un à Un - plus rare
    chaque élément d’une clé à deux tables n’est présent qu’une seule fois dans chaque table
(5)          SENS DE LA RELATION

 Là aussi, deux possibilités :

  • Unidirectionnelle
    les tables "dimensions" permettent de filtrer et trier la table "fact"
  • Bidirectionnelle
    les tables se comportent alors comme une seule table

2.            RELATIONS

Les relations vont définir le comportement des tables de données.

a)            MODE D'AFFICHAGE

Le mode d'affichage adapté à la gestion des relations est le mode "modèle".

Une image contenant appareil

Description générée automatiquementBOUTON GAUCHE
<clic g> sur dans le volet gauche
les onglets "champs" et "propriétés" s'affichent dans le volet droit.

La fenêtre principale affiche les tables et leurs éventuelles relations.

b)            AFFICHER LES RELATIONS

 Il est souvent nécessaire de les déplacer pour que la représentation soit plus claire.

Une image contenant appareil

Description générée automatiquementBOUTON GAUCHE
pointer sur le titre de la table
le pointeur prend la forme d'une croix
<faire glisser> à la nouvelle position

 

Afficher correctement les tables de "base.pbix"

c)             CRÉER UNE RELATION

Power BI les reconnaît correctement la plupart du temps mais dans certains cas, il faut lui indiquer.

Une image contenant appareil

Description générée automatiquementBOUTON GAUCHE
<faire glisser> le champs lié de la table "dimensions" vers la table "fact"

Dans "base.pbix", modifier le champ "dates" de la table "ventes" en type "date/heure" format court puis créer une relation entre les champs "dates"

 

 

 

Il est aussi possible de passer par un menu.

ONGLET ACCUEIL
groupe "relations" (4ème bloc)
<clic g> sur
sélectionner la relation
<clic g> sur un des boutons
<clic g> sur
les relations existantes s'affichent

 

La commande est aussi disponible dans les autres modes d'affichage ou dans le volet droit en cliquant sur puis sur  

 

d)            MODIFIER LES RELATIONS

La relation est symbolisée par une flèche et son détail s'affiche en pointant dessus.

Il est ici possible d'afficher le détail de la relation.

OUTIL
<clic g> sur

 

 

Une image contenant appareil

Description générée automatiquementBOUTON GAUCHE
<double clic> sur la relation
son détail s'affiche et peut être modifié ici

 

 

Dans "base.pbix", modifier la relation "produits" "outils" en "bidirectionnel"

Modifié le: lundi 24 octobre 2022, 11:02