ESCT/ISAMM 3e LBDAD
TP 3 : Création d’un cube
Le TP précédent nous a permis de construire le Datamart « Facturation ». Ce TP utilisera la
base décisionnelle « DistrisysDW » qui décrit l’ensemble des tables de notre Data warehouse.
Elle est composée de 6 tables de faits et de 7 tables de dimensions.
I. Restauration de la base de données décisionnelle
La restauration d’une base de données se fait via SSMS. Il suffit d’importer le fichier « .bak »
contenant la description des différentes tables.
L’importation se fait comme suit :
Faire un clic droite sur « bases de données » et choisir l’option « Restaurer la base de
données »
Il suffit, par la suite d’importer le fichier « [Link] » comme illustré ci-
dessous :
Figure 72: Restauration d'une base de données
Entrepôts de données 171
ESCT/ISAMM 3e LBDAD
Remarque :
Il est possible de cliquer sur « options » et de cocher la case Remplacer la base de données
existante si on désire réaliser une opération de type CREATE WITH REPLACE.
Une fois importée, on peut constater que la base DistrisysDW est déjà remplie.
II. Création du cube de données
La création d’un cube de données se fait à travers Analysis Services accessible depuis Visual
Studio 2022 → Créer un projet → Projet multidimensionnel Analysis Services.
Les étapes à suivre sont :
Définition d’une source de données via l’explorateur de solutions (à droite de l’écran) :
importation de la base de données « DistrisysDW » comme illustré par la figure
suivante :
Figure 73: Importation de la source de données
On sélectionne, par la suite, l’option « Utiliser le compte de service ».
Entrepôts de données 172
ESCT/ISAMM 3e LBDAD
Toujours à partir de l’explorateur de solutions, on crée une nouvelle vue des sources
de données en sélectionnant les tables du Datamart Facturation (les tables créées lors
du TP précédent)
Figure 74: Sélection des tables
Enfin, on crée un nouvel cube à partir de l’option « Cubes ».
La création se fait comme suit :
➢ Sélectionner « Utiliser des tables existantes »
➢ Cliquer sur le bouton « Suggérer » ou sélectionner tout simplement la table
FactFacture.
➢ Sélectionner toutes les mesures de la table des faits sauf la clé artificielle Fact
Facture Nombre
Entrepôts de données 173
ESCT/ISAMM 3e LBDAD
Figure 75: Sélection des mesures
On obtient, enfin, la structure suivante :
Figure 76: Structure du cube « DistrisysDW »
Il suffit de cliquer sur « [Link] » et de sélectionner « Traiter »
Entrepôts de données 174
ESCT/ISAMM 3e LBDAD
La figure suivante illustre le déroulement de l’opération :
Figure 77: Traitement du cube
Remarque :
Si, lors de la génération du cube, une erreur de type :
Erreur OLEDB : erreur OLEDB ou ODBC
Erreur dans le moteur relationnel de haut niveau. Une
connexion n’a pas pu être établie à la source de données avec
la DataSourceID ‘Distrisys DW’ nom de ‘Distrisys DW’
On doit procéder comme suit :
À partir du menu démarrer, Sélectionner Gestionnaire de configuration SQL Server
2022 ;
Double cliquer sur Services SQL Server ;
Entrepôts de données 175
ESCT/ISAMM 3e LBDAD
Sélectionner SQL Server Analysis Services ;
Copier le nom du compte.
Figure 78: Sélection du nom du compte
Dans SSMS, cliquer sur « Sécurité » sélectionner « Nouveau » puis « Connexion » et
coller le nom du compte dans le champ « Nom d’accès »
Entrepôts de données 176
ESCT/ISAMM 3e LBDAD
Figure 79: Création d'un nouveau rôle de sécurité
Cliquer enfin sur Rôles du serveur (a gauche) et cocher l’option « sysadmin ».
Entrepôts de données 177
ESCT/ISAMM 3e LBDAD
Figure 80: Affectation du rôle sysadmin
III. Définition des hiérarchies
Une fois créé, il est important de mieux organiser les données stockées dans le cube en
identifiant les différents attributs et les organiser en hiérarchies.
Entrepôts de données 178
ESCT/ISAMM 3e LBDAD
III.1) Définition de la hiérarchie Temps
III.1.A) Préparation
À partir de l’interface principale de Visual Studio 2022, cliquer sur Dimtemps (à gauche de
l’écran) et choisir « Modifier la dimension ». On aura une interface similaire à celle-ci :
Figure 81: Interface de modification de la dimension Temps
Pour commencer, nous allons modifier l’attribut de clé Temps PK, afin que ce soit un attribut
qui affiche le jour de l’année à l’utilisateur, plutôt que IdDate.
On clique sur Temps PK → propriétés. On sélectionne la propriété NameColumn et, en
cliquant sur l’icône des 3 points, on choisit l’attribut Jour.
Entrepôts de données 179
ESCT/ISAMM 3e LBDAD
Figure 82: Modification de la clé "Temps PK"
N’oublions pas de traiter le cube après chaque modification.
III.1.B) Création de la hiérarchie
On ajoute les attributs Année, Mois, Trimestre, Semaine comme suit :
On glisse le champ_code (AnnéeCode, MoisCode, etc.) dans la zone attribut tout en
modifiant la propriété NameColumn en AnneeNom, MoisNom, etc. ;
Dans la propriété OrderBy, on choisit l’option Key.
Entrepôts de données 180
ESCT/ISAMM 3e LBDAD
Figure 83: Définition des champs de la hiérarchie Temps
Il est possible de créer un grand nombre de hiérarchies. On se limitera à en définir 2 :
Année → Trimestre → Mois → Semaine → jour
Année → Mois → Jour
Il suffit de glisser chaque élément concerné par la hiérarchie vers la fenêtre centrale appelée
Hiérarchies
Entrepôts de données 181
ESCT/ISAMM 3e LBDAD
Figure 84: Création des hiérarchies Temps
Afin de traiter l’avertissement affiché, on clique sur l’onglet Relations d’attributs.
On clique sur Mois et on choisit l’option « Créer une relation d’attribut ». On choisit Année
comme Attribut associé en choisissant un type de relation rigide.
Entrepôts de données 182
ESCT/ISAMM 3e LBDAD
N’oublions pas de réaliser la même opération entre Trimestre et Année. On obtient, comme
résultat :
Figure 85: Création d'une relation d'attributs
III.2) Définition de la hiérarchie Produit
De même que la dimension Temps, on traite la hiérarchie Produit comme suit :
On renomme la clé Produit_PK en Produit et on affecte à la propriété NameColumn la
valeur Produit. On choisit aussi la propriété de tri (Order by) par nom ;
On ajoute aussi les attributs Sous famille et famille ;
On définit la hiérarchie suivante : Produit → Sous Famille → Famille.
NB :
Ne pas oublier de cliquer sur Relations d’attributs et de mettre à jour la hiérarchie comme on
l’a définie.
Entrepôts de données 183
ESCT/ISAMM 3e LBDAD
Figure 86: Définition de la hiérarchie Produit
III.3) Définition de la hiérarchie Site
On traite la hiérarchie Site comme suit :
On renomme la clé Site_PK en Produit et on affecte à la propriété NameColumn la
valeur Site. On choisit aussi la propriété de tri (Order by) par nom ;
On supprime l’attribut Geographie_PK visible par défaut et on la réinsère de nouveau
en lui renommant par Ville. On affecte à la propriété NameColumn la valeur Ville ;
On ajoute aussi les attributs Departement et Pays.
On définit la hiérarchie suivante : Site → Ville → Departement → Pays.
Entrepôts de données 184
ESCT/ISAMM 3e LBDAD
Figure 87: Définition de la hiérarchie Site
III.4) Définition de la hiérarchie Client
On traite la hiérarchie Client comme suit :
On renomme la clé Client_PK en Client et on affecte à la propriété NameColumn la
valeur Client. On choisit aussi la propriété de tri (Order by) par nom ;
On supprime l’attribut Geographie_PK visible par défaut et on la réinsère de nouveau
en lui renommant par Ville. On affecte à la propriété NameColumn la valeur Ville ;
On ajoute aussi les attributs Departement, Pays, Segmentation Client et Type Client ;
On définit les hiérarchies suivantes :
➢ Client → Ville → Departement → Pays
➢ Client → Segmentation Client
➢ Client → Type Client
Entrepôts de données 185
ESCT/ISAMM 3e LBDAD
Figure 88: Définition de la hiérarchie Client
En définissant les relations d’attributs comme suit :
Figure 89: Définition des relations d'attributs de la
dimension Client
Entrepôts de données 186
ESCT/ISAMM 3e LBDAD
IV. Exploitation du cube
Une fois tout est paramétré, on clique sur l’onglet d’accueil « DistrisysDW » et on traite le
cube une dernière fois.
Il suffit d’aller à l’onglet Navigateur et de glisser des mesures vers la fenêtre centrale afin de
voir le résultat.
Ci-dessous un exemple :
Figure 90: Génération des données à partir du cube
Entrepôts de données 187