Vous êtes sur la page 1sur 7

TP de data Warehouse

N° 01 : Création des tables de faits et de dimensions.


4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur
Pr. I SALHI

Présentation :

Lors de ce TP, nous utiliserons les outils SQL Server pour réaliser la première brique de
notre système décisionnel.

Nous commencerons par mettre en œuvre le système d’analyse des factures qui permettra à
la société Distrisys, d’analyser son chiffre d’affaires (CA), ses marges et ses coûts. Dans une
entreprise commerciale, commencer par mettre en œuvre l’analyse des factures est
généralement un bon choix, pour deux raisons :

• Raison technique : généralement le système de facturation est assez bien maitrisé par le
service informatique et les données sont structurées, présentes et accessibles dans le
système d’informations de l’entreprise.
• Raison métier : les données de facturation intéressent la plupart des services tels que la
direction générale, la direction des ventes, la finance, le marketing... et la mise à
disposition d’un système d’analyse des factures est souvent assez riche en informations
et donc en valeur ajoutée.

Les données de facturation seront analysables par les utilisateurs suivant quatre axes
principaux :

• L’axe produit ;
• L’axe client ;
• L’axe site, qui permettra de connaître le site à l’origine de la vente ; L’axe temps.

Nous allons commencer par créer l’entrepôt de données. Nous appellerons cette base de
données : DistrisysDW.

4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur- Page 1 sur 7
Création de l’entrepôt de données

• Ouvrez la console SQL Server Management Studio.


• Créez une nouvelle base de données DistrisysDW.
• Assurez-vous que le compte de service de votre serveur SQL Server a les droits en
lecture sur DistrisysDW.

Attribuer les droits en lecture au compte de service SQL Server

Nous allons maintenant nous assurer que le compte de service de SQL Server a les droits de
lire cette nouvelle base de données DistrisysDW.

• Dans les outils d’administration, ouvrez la console de gestion des services :

• Identifiez le nom du compte qui démarre le service SQL

Dans mon cas, le compte de service est contoso\svc-sqlserver.

4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur- Page 2 sur 7
• Dans SQL Server Management Studio, aidez­vous de la copie d’écran ci­dessous pour
identifier le login correspondant au compte de service et ouvrez ses propriétés :

Dans l’onglet User Mapping, sélectionnez la base de données DistrisysDW. Si vous


voulez donner simplement les droits de lecture, sélectionner le rôle dbo_datareader. Si vous
souhaitez donner tous les droits (lecture, écriture, création de tables…), sélectionner le rôle
db_owner. Remarque : les droits du rôle db_owner englobe ceux du rôle de dbo_datareader.

Création d’une table de faits FactFacture

Les quatre axes pour analyser les factures sont les suivants :

• DateFacturation_FK permettra d’identifier la date de facturation et fera la liaison avec


la dimension Temps.
• Site_FK permettra d’identifier le site de facturation et fera la liaison avec la dimension
Site.
• Produit_FK permettra d’identifier le produit facturé et fera la liaison avec la dimension
Produit.
• Client_FK permettra d’identifier le client facturé et fera la liaison avec la dimension
Client.

4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur- Page 3 sur 7
La granularité de la table de faits FactFacture correspond à une ligne : par jour (date de
facturation), par site de facturation, par produit et par client. Cela signifie que, potentiellement,
nous pourrons regrouper et sommer en une seule ligne, les lignes de facture ayant les mêmes
critères.

• Créez une nouvelle table de données FactFacture.


Nom de la colonne Type de données Autoriser les valeurs NUll

DateFacturation_FK int -

Site_FK int -

Produit_FK int -

Client_FK int -

PrixCatalogue Numeric(9,2) -

Remise Numeric(9,2) -

CA Numeric(9,2) -

Marge Numeric(9,2) -

CoutDirectMatiere Numeric(9,2) -

CoutDirectMainOeuvre Numeric(9,2) -

CoutIndirect Numeric(9,2) -

Quantite Numeric(9,2) -

NumFacture Varchar(6) oui

Création des tables de type dimension

Maintenant que nous avons créé la table de faits des factures, nous allons nous atteler à
construire les tables de type dimension utilisées dans l’analyse des factures. De même que les
tables de faits sont préfixées par Fact, les tables de type dimension seront préfixées par Dim.

Nous allons créer les tables de type dimension suivantes :


DimProduit, pour la dimension produit.

4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur- Page 4 sur 7
DimSite, pour la dimension site.
DimClient, pour la dimension client.

DimProduit

• Créez la Table DimProduit comme suit :


Nom de la colonne Type de données

Produit_PK int

ProduitCode Varchar (10)

Produit Varchar (20)

SousFamilleCode Varchar (10)

SousFamille Varchar (20)

FamilleCode Varchar (10)

Famille Varchar (20)

• Positionnez une clé primaire sur la première colonne Produit_PK et enregistrez les
modifications :
• Remplissez la table en utilisant le script SQL (RemplirDimProduit.sql) et générez la liste
suivante :

DimSite

• Créez la Table DimSite comme suit :

4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur- Page 5 sur 7
Nom de la colonne Type de données

Site_Pk int

GeographieSite_FK int

SiteCode varchar(5)

Site Varchar(20)

• Après le remplissage (RemplirDimSite.sql) de la table DimSite, Faites une capture du


résultat.

DimGeographie

• Créez la Table DimGeographie comme suit :


Nom de la colonne Type de données

geographie_PK Int

PaysCode Varchar (10)

Pays Varchar (20)

DepartementCode Varchar (10)

Departement Varchar (20)

CodePostal Varchar (10)

Ville Varchar (20)

• Après le remplissage de la table DimGeographie, Faites une capture du résultat.

DimClient

• Créez la Table DimClient comme suit :

Nom de la colonne Type de données

4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur- Page 6 sur 7
Client_PK Int

GeograpgieClient_FK Int

ClientCode Varchar(10)

Client Varchar(20)

TypeClient Varchar(20)

SegmentationClient Varchar(20)

• Après le remplissage de la table DimClient, Faites une capture du résultat.

Au final, Vous devez avoir au sein de SQL Server Management Studio, le résultat suivant :

4éme année Ingénierie Informatique et Réseaux - École Marocaine des Sciences de l'Ingénieur- Page 7 sur 7

Vous aimerez peut-être aussi