Éléments d’usinage et métrologie dimensionnelle TCH040 Cours 8-9.
MTI820 Entrepôts de données et intelligence d’affaires · La modélisation dimensionnelle •...
Transcript of MTI820 Entrepôts de données et intelligence d’affaires · La modélisation dimensionnelle •...
MTI820 −Entrepôtsdedonnéesetintelligenced’affaires
Modélisationdimensionnelle
1Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers
Lecycledevied’unprojetenBI• Diagrammedefluxdetravail:
2
Planificationdeprojet/programme
Définitiondes
besoinsd’affaires
Conception del’architecturetechnique
Modélisationdesdonnées
Conception desapplicationde
BI
Sélectionetinstallationdes
produits
Conceptionphysique
Conception etdéveloppementdusystèmeETL
Développementdesapplications
deBI
Déploiement
Croissance
Maintenance
Gestiondeprojet/programme
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers
Processusdeconception1. Choisirleprocessusd'affaires:– Sebasesurlamatriceenbusdedonnéesetlediagrammede
priorisation;– Doitimpliquerlescadressupérieurs.
2. Définirlegrain:– Question:"àquoicorrespondunelignedelatabledefaits?";– Dépenddesréalitésphysiquesdessourcesdedonnées.
3. Identifierlesdimensions:– Découledirectementdeladéfinitiondugrain;– Colonnesservantàrestreindrel'analyse.
4. Identifierlesfaits:– Colonnesreprésentantdesvaleursnumériquesdemesure.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 3
Questions• Quel serait legrain,lesdimensions etlesfaits
correspondant auxprocessus d’affaires suivants d’uneentreprise detélécommunications?1. Facturation clients2. Gestion dutrafficd’appel3. Inventaire4. Serviceà laclientèle
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 4
Questions• À quoicorrespondlamodélisation dimensionnelle?• Quels sont lesavantages dumodèle dimensionnel par
rapportaumodèle ER?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 5
ModèledimensionnelvsER• Modèleentité-relation(ER):
– Représentelesdonnéessouslaformed'entités(tables)etderelations(référencesoutables);
– Normalisationduschéma(ex:3FN).
• Modèledimensionnel:– Représentelesdonnéescommedesfaitsetdesdimensions;– Lesdimensionsnesontpasnormalisées.
• Avantagesdumodèledimensionnel:– Compréhensibilité:
• Lesdonnéessontregroupéesselondescatégoriesd'affairesquiontunsenspourlesutilisateursd'affaires;
– Performance:• Ladénormalisation évitelesjointurescoûteuses;• Autresoptimisations(ex:indexdejointureenétoile).
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 6
Lamodélisationdimensionnelle• Définition:– Techniquedeconceptionlogique permettantdestructurerlesdonnéesdemanièreàlesrendreintuitives auxutilisateurd'affairesetoffrirune bonneperformance auxrequêtes.
• Caractéristiques:– Diviselesdonnéesenfaits etdimensions;– Lesfaits(mesures)sontgénéralementdesvaleursnumériquesprovenantdesprocessusd'affaires;
– Lesdimensionsfournissentlecontexte(qui,quoi,quand,où,pourquoietcomment)desfaits;
– Schémaenétoile:unetabledefaitsentouréedeplusieurstablesdedimension(normalemententre8et15).
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 7
Exempledeschémaenétoile (manufacturier)
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 8
Commande
idDateCommande (FK)
idDateEnvoiDemandée (FK)
idProduit (FK)
idClientVenduÀ (FK)
idClientExpediéÀ (FK)
idClientChargéÀ (FK)
idReprésentantVente (FK)
idTypeCommande (FK)
idTypeEnvoi (FK)
noCommande (DD)
noLigneCommande (DD)
quantitéCommandée
totalBrut
totalNet
ReprésentantVente
ClientExpediéÀ
TypeCommande
ClientChargéÀ
ClientVenduÀ
Produit
DateEnvoiDemandée
DateCommande
TypeEnvoi
Tables dedimensionTables dedimension
Tables defaits
mesures
Tablesdefaits• Correspondentnormalementàunseulprocessusd'affaires:
– 1tabledefaits=1processus.
• Stockentdesmesuresgénéréesparlesévénementsduprocessus;– Ex:réceptiond'unecommande,envoid'unecommande,etc.– Lesfaits"prennentleurvaleur"aumomentoùl'évènementd'affairessurvient(aspecttemporelimportant).
• Contiennenttypiquementuntrèsgrandnombredelignes:– Jusqu'àplusieursmilliardsdelignes;– Souventplusde90%desdonnéesdumodèle.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 9
Tablesdefaits• Comprennentdeuxtypesdecolonnes:– Clésétrangèresversdestablesdedimension;– Valeursnumériquessouventadditives(mesures).
• Modélisentdesrelationsdetypeplusieurs-à-plusieurs(tabledejointureenrelationnel)
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 10
Tablesdefaits• Exemple:
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 11
Commande
idDateCommande (FK)
idDateEnvoiDemandée (FK)
idProduit (FK)
idClientVenduÀ (FK)
idClientExpediéÀ (FK)
idClientChargéÀ (FK)
idReprésentantVente (FK)
idTypeCommande (FK)
idTypeEnvoi (FK)
noCommande (DD)
noLigneCommande (DD)
quantitéCommandée
totalBrut
totalNet
mesures
Clés étrangères
???
Question• Une mesure doit-elle toujours être une valeur
numérique?• Une mesure peut-elle toujours être additionnée sur
plusieurs lignes?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 12
Typesdemesure• Mesuresadditives:– Peuventêtreagrégéesselonn'importequelledimension;– Ex:montantdevente,quantitécommandée,etc.
• Mesuressemi-additives:– Peuventêtreagrégéesseloncertainesdimensionsseulement;
– Ex:soldedecompteagrégeable selonlesclients,pasletemps.
• Mesuresnon-additives:– Valeursnumériquesnepouvantêtreagrégéesselonaucunedimension;
– Ex:pourcentagesouratios.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 13
Question• Mesure additive,semi-additiveou non-additive?
1. Quantité eninventaire2. Pourcentage deprofit:100*(vente – coût)/vente3. Nombre d’items vendus4. Produit envente (valeur binaire)
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 14
Question• Commentpeut-ondifférencier une mesure d’unattribut
dedimension?1. Coût unitaire duproduit (provient dufournisseur)2. Dimensionsduproduit3. Prixdevente duproduit4. Produit envente (valeur binaire)
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 15
Mesuresversusattributsdedimension
• Mesures:– Dépendentd'unévénementd'affaires;– Ontsouventdesvaleurscontinues(ouungrandnombredevaleursdiscrètespossibles);
– Serventdanslecalculd’indicateursdeperformance;– Ex:montanttotaletquantitéd'unecommande.
• Attributs(numériques)dedimension:– Indépendantsdesévénementsd'affaires;– Ontsouventdesvaleursdiscrètes;– Serventàfiltrerouétiqueterlesfaits;– Ex:jouretheured'unetransaction,âged'unclient,etc.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 16
Clésd’unetabledefaits• Clésprimaires:– Lacléprimaireesttypiquementuneclécomposée,forméed'unsous-ensembledesclésétrangèresverslestablesdedimension:• Ex:(idDateTransaction,idClient,idProduit).
• Clésétrangères:– Lesclésétrangèresnedevraientjamaisêtrenulles
• Sinononpeutviolerleprinciped'intégritéréférentielle;• Utiliserplutôtunevaleurspécialedanslatablededimension;
• Ex:uneligne"Aucunspécial"dansladimensionRabaisSpécial sileclientn'aeudroitàaucunrabaislorsd'unetransaction)
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 17
Graind’unetabledefaits• Legrain estladéfinitiondel'événementd'affaires
produisantleslignesdelatabledefaits;• Toutesleslignesdelatabledoiventavoirlemêmegrain;
• Doitêtreleplusfinpossible (atomique)pourleprocessusd'affaires:– Permetdefairedesrequêtesplusprécisesetimprévues;– Déterminéparlesréalitésphysiquesdessourcesdedonnées.
• Déterminelesdimensionsdumodèle.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 18
Questions• Que renferme une tablededimension?• À quoiservent lesattributs d’une dimension?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 19
Tablesdedimension• Ensemblehautementcorréléd'attributs(jusqu'àplusieurs
dizaines)regroupésselonlesobjetsclésd'uneentreprise:– Ex:produits,clients,employés,installations,etc.
• Propriétésdesattributs:– Descriptif(ex:chaînesdecaractères);– Dequalité(ex:aucunevaleurmanquante,obsolète,erronée,etc.);– Principalementdesvaleursdiscrètes(ex:jour,âged'unclient);
• Rôlesdesattributs:– Filtrer/restreindrelesrequêtes(ex:ville,catégorieproduit,etc.);– Étiqueterlesrésultats(ex:champsdescripteurs).
• Lapuissanceanalytiquedel'entrepôtestproportionnelleàlarichesseetlaqualitédesattributsdimensionnels
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 20
Hiérarchiesdimensionnelles• Unensembled'attributsayantunerelationhiérarchique(x est
inclusdansy);• Définissentlescheminsd'accèsdanslesdonnées(drill-down
paths);• Simples:
– Temps:année) mois) semaine) jour) heure;– Produit:famille) catégorie) marque) produit;– Lieu:pays) province) région) ville) codepostal.
• Multiples:
• Normalementdansuneseuletablededimension.Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 21
année trimestre
trimestrefiscal
mois
moisfiscal
jour
année fiscale
1
1
1
1
1
1
*
*
*
*
**
Questions• Hiérarchie pourlesdimensionssuivantes?
1. Client2. Vendeur3. Canaldevente
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 22
Choixdesdimensions• Demandelejugementetl'intuitiondumodélisateur;• Plusonad'attributsnon-corrélésdansunedimension
pluslatablecorrespondanteauradelignes(explosioncombinatoire):– Ex:10,000produitsx100magasins=1,000,000delignesdansunetablededimensionProduitMagasin.
• Règles:– Lesdimensionssontobservablesauniveaudugraindelatabledefaits(fontpartiedel’évènementd’affaires);
– Lesattributsnon-corrélésvontdansdesdimensionsséparées.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 23
Question• Vente:doitonmettreRégion commeunattributdeClient ou
unedimensionséparée?
• Enseignement:doitonmettreDépartement,Professeur etCours dansunemêmedimension?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 24
Clésd'unetablededimension• Cléprimaire:– Lacléprimairedevraittoujoursêtreunecléartificiellecomposéed'uneseulecolonne(surrogate key);
– Ex:mécanismedeséquencedansOracle;– Avantages:
• Performance:accèsparindexetjointuresaccélérés;• Robustesse:nechangejamaiscontrairementàuneclénaturelle;
• Cohérence:permetd'identifierlamêmeentitédansdeuxtablesmêmesilestablesontdescolonnesdifférentes.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 25
Question• Qu’est-ce qu’une dimensionconforme?• À quoiservent ces dimensions?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 26
Dimensionsconformes• Égalementappeléesmasterdimensions oucommon
reference dimensions;• Dimensionspotentiellementpartagéespardestablesde
faitsmodélisantdesprocessusd'affairesdifférents;
• Avantages:– Cohérence:lesdifférentestablesdefaitssontfiltréesetétiquetésdemanièredecohérente;
– Intégration:permetàl'entrepôtdedonnéesd'opérercommeunseulblocuni;
– Productivité:favorisel'extensiondel'entrepôtd'uneitérationdedéveloppementàl'autre.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 27
Question• Deux tablesdefaits peuvent-elles être reliées parune
dimensionconforme si elles n’ont paslemême grain?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 28
Dimensionsconformes• Desdimensionspeuventêtreconformessilesattributs
d'unetablededimensionsontunsous-ensembledesattributsd'uneautretable;
• Ex:dimensionsreprésentantdesniveauxdegranularitédifférents
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 29
Dimension:Produit
idProduit (PK)
descriptionProduit
NuméroSKU
idMarque
descriptionMarque
descriptionSousCatégorie
descriptionCatégorie
couleur
taille
Dimension:Marque
idMarque(PK)
descriptionMarque
descriptionSousCatégorie
descriptionCatégorie
Faits:Vente
Faits:PrédictionVentes
Dimensiontemporelle• Centralecarlaplupartdesfaitscorrespondentàdes
événementsd'affairesdel'entreprise;
• Mettretoutescesvaleursmêmesilaplupartpeuventêtredéduitesdesautres.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 30
Dimension:Date
idDate (PK)
date
jourDeSemaine
jourDuMois
jourDeAnnée
jourDansMoisFiscal
jourDansAnnéeFiscale
congéFérié
jourDeTravail
semaineDuMois
...
Question• Ya-t-il unproblème à définir ladimensionsuivante ?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 31
Dimension:Date
idDate (PK)
date
jour
mois
semaine
année
heure
minute
seconde
...
Dimensiontemporelle• Avoirungraintropfindansladimensiontemporelle(ex:
tempsdujour)peutcauserl'explosiondunombrederangées:– Ex:31,000,000secondesdifférentesdansuneannée.
• Solution1:mettreletempsdujour(timeofday)dansunedimensionséparée:– Dimension1:année) mois) semaine) jour;– Dimension2:heure) minute) secondes;– 86,400+365lignesVS31,000,000lignes.
• Solution2:mettreletempsdujourcommeunfait etgarderlejour,mois,annéedansunedimension;
• Lasolution2estnormalementpréférableàmoinsd’avoirdesattributssupplémentaires(ex:descripteurtexte).
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 32
Question• À quoiservent ces colonnes?• Sont elles nécessaires dans latabledefaits?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 33
Commande
idDateCommande (FK)
...
noCommande (DD)
noLigneCommande (DD)
quantitéCommandée
...
???
Dimensionsdégénérées• Clésdelatabledefaitsn'ayantaucunattributautre
qu'elles-mêmes;• Correspondentsouventàdesidentifiantsdansles
systèmessources:– Ex:nodecommande,nodebillet,etc.
• Ilfauttoujourslaisser cescolonnesdanslatabledefaits:– Ellessontlacollequi"tientensemble"lesitemsd'unelignedelatabledefaits;
– Permettentderépondreàdesquestionsplusgénéralescomme"quelestlenombremoyendelignescorrespondantàunmêmecommande?";
– Permettentégalementderetracerlaprovenanced'uneligneàunesourcededonnées.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 34
Question• Que fait-onsi unattribut dimensionnel change?
1. Adresse duclient2. Descriptionduproduit3. Catégorie duproduit4. Statusd’unclient
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 35
Dimensionsàévolutionlente• Slowly Changing Dimensions (SCD);• Mêmesiellessontplusstatiquesquelesfaits,les
dimensionspeuventégalementchanger:– Ex:adresse/status d'unclient,catégoried'unproduit,etc.
• Plusieursstratégiesd'historisation:– SCDType1:Écraserl'anciennevaleuraveclanouvelle;– SCDType2:Ajouterunelignedanslatablededimensionpourlanouvellevaleur;
– SCDType3:Avoirdeuxcolonnesdanslatablededimensioncorrespondantàl'ancienneetlanouvellevaleur.
– Hybride:OncombinelesTypes2et3.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 36
Question• Quels sont lesavantages /limitations desstratégies
d’historisation SCD1,SCD2etSCD3?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 37
Dimensionsàévolutionlente• SCDType1:
– Impossibledefairedesanalysessurl'anciennevaleur;– Àutiliserseulementpourfairedescorrectionsou lorsquel'anciennevaleurn'estpassignificativepourlesbesoinsd'affaires;
– Exigedemettreàjourlesdonnéesagrégéesavecl'anciennevaleur.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 38
idProduit description code département
1001 'BébéLala' 'ABC999-Z' 'Éducation'
idProduit description code département
1001 'BébéLala' 'ABC999-Z' 'Stratégie'
Dimensionsàévolutionlente• SCDType2:
– L'approchelaplusemployée;– Permetdefairedesanalyseshistoriques;– Demandel'ajoutd'unenouvelleligneparchangement;– Àutiliserlorsquel'anciennevaleuraunesignificationanalytiqueousilechangementestuneinformationensoi.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 39
idProduit description code département dateEffective dateExpirée
1001 'BébéLala' 'ABC999-Z' 'Éducation' '2007-10-08' '9999-12-31'
idProduit description code département dateEffective dateExpirée
1001 'BébéLala' 'ABC999-Z' 'Éducation' '2007-10-08' '2008-10-31'
1002 'BébéLala' 'ABC999-Z' 'Stratégie' '2008-11-01' '9999-12-31'
Dimensionsàévolutionlente• SCDType3:
– Moinsemployé;– Profondeurdel'historiqueestd'unseulchangement;– Àutiliserlorsqu'onveutvouloircomparerlesfaitsavecl'ancienneou lanouvellevaleur;
– Peutrajouterd'autrescolonnespouravoiruneplusgrandeprofondeur.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 40
idProduit description code oldDépartement newDépartement dateModif
1001 'BébéLala' 'ABC999-Z' 'Éducation' 'Éducation' '9999-12-31'
idProduit description code oldDépartement newDépartement dateModif
1001 'BébéLala' 'ABC999-Z' 'Éducation' 'Stratégie' '2008-11-01'
Question• Sachant que leprofil d’unclientchangesouvent (âge,
salaire,emploi,situationfamiliale, etc.),que peut-onfairepouréviter lepluspossiblelamise à jourdelatableClient?
• Mettre dans latabledefaits ?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 41
Mini-dimensions• Sertlorsquequ'unedimensionrenfermedesattributsqui
peuventchangersouventetsontsouventanalysésensemble:– Ex:leprofildémographiquedesclients(âge,revenu,etc.).
• Solution:mettrelesattributspotentiellementvolatilesdansunedimensionséparée(mini-dimension) oùlegrainestdifférent;
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 42
Dimension:Client
idClient (PK)
nom
adresse
dateDeNaissance
sexe
...
Dim:GroupeDémographique
idGroupeDémographique(PK)
groupeAge
sexe
groupeSalaire
groupeNombreEnfants
étatCivil
mini-dimension
Dimensionsàrôlesmultiples (role playing)• Dimensionsayantdesrôleslogiquesdifférentsdansune
mêmetabledefaits;• Typiquementladimensiontemporelle:
– Ex:dateCommande,dateEnvoiDemandé,dateEnvoiRéel,etc.
• Uneseuletablephysiqueréférencéeparplusieurstableslogiques(ex:àl'aidedevuesoud'alias);– Ex:CREATEVIEWDateEnvoiRéel ASSELECT*FROMDate.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 43
Question• Que doit-onfaireaveclesattributs quinecorrespondent
à aucune dimension(ex:flagsdivers)?1. Lesignorer?2. Lesmettre dans latabledefaits?3. Lesmettre dans une dimensionséparée (necontenant
que l’attribut correspondant)?4. Autre solution?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 44
Dimensionspoubelles(junk dimensions)• Proviennentdesattributsnecorrespondantàaucune
dimension:– Ex:descripteurstexteouflagsdivers.
• Àéviter:– Leslaisserdanslatabledefaits:
• Latabledefaitspeutexploserentaille;– Mettrechacundansunedimensionséparée:
• Explosiondunombrededimensionsetclésétrangères;– Leséliminer:
• Peuventavoirunesignificationanalytique.
• Solution:– Créeruneseuletableregroupanttouscesattributsorphelins(junk dimension).
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 45
Tablessansfait(factless tables)• Correspondentauxévénementsd'affairesreprésentant
unerelationplusieurs-à-plusieurs, maisquin'ontpasdemesuresquantifiables:– Ex:laprésenced’unétudiantenclasse(vrai oufaux).
• Onpeutimaginerlamesured'unetelletablecommeunecolonnefictivedontlavaleuresttoujoursà1;
• Exemple:
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 46
PrésenceEnClasse
idDate (FK)
idÉtudiant (FK)
idProfesseur (FK)
idCours (FK)
colonneFicitive =1
Question• Que fairelorsqu’une transactions’étale sur plusieurs
lignes (ex:une ligne parproduit)?• Commentpeut-onéviter derépéter lesmêmes
informations pourchaque ligne delatransaction?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 47
Tabledepont(bridgetable)• Sertnotammentàmodéliserlesdimensionsmulti-valuées;• Ex:facturesmédicalespouvantavoirplusieursdiagnostics
• LatableGroupeDiagnostic peutêtrepré-générée(sipeudecombinaisonspossibles)oupopulée aufuretàmesure.
• facteurPondération représentelacontributionrelatived’undiagnosticdanslegroupe
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 48
Faits:FacturesMédicales
idDateTraitement (FK)
idPatient (FK)
...
idGroupeDiagnostic (FK)
montantTotal
Dim:Diagnostic
idDiagnostic (PK)
description
catégorie
type
Bridge:GroupeDiagnostic
idGroupeDiagnostic (PK,FK)
idDiagnostic (PK,FK)
facteurPondération
Dim:GroupeDiagnostic
idGroupeDiagnostic(PK)
Schémaenflocon• Provientdelanormalisationdestablesdedimension;• Exemple:
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 49
Question• Quels sont lesavantages /inconvénients duschéma en
flocon parrapportauschéma enétoile?
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 50
Schémaenflocon• Avantages:– Petiteéconomied'espace;– Plusfaciledemettreàjourlesdimensionsencasdechangement.
• Désavantages:– Schémamoinsintuitifauxutilisateursd'affaires;– Dégradationdelaperformanceàcausedesjointuresadditionnelles.
• Engénéral,onpréfèrenepasnormaliserlestablesdedimension.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 51
Exempledemodélisation• Casd'étudeentélécommunications*– Matriceenbusdedonnées:
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 52
Processus/Dimension Da
te
Client
Prod
uit
Plan
d'utilis
ation
Cana
lde
vente
Ligne
tél.
Relai
Représen
tant
deven
te
Employ
é
Appe
lservice
Facturationclient X X X X X X
Gestiondutraficd'appels
X X X X X X X
Inventaire X X X
Serviceàlaclientèle X X X X X X X
...
*:TirédulivreTheDataWarehouseToolkit 2ème édition
Exempledemodélisation• Choixduprocessusd'affaires:
– Lagestiondutraficd'appelspermetdesanalysestrèsdétaillées(niveauappel),maiscomporteuneplusgrandecomplexitétechnologique(ETL,stockage,etc.);
– Processusretenu:Facturationclient.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 53
Facturation Trafic d'appels
Évènement d'affaires: Envoidefactureunefoisparmois
Appelfaitparunclient
Potentielanalytique: Bon Excellent
Complexité: Moyenne Grande
Exempledemodélisation• Modèlepréliminaire:
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 54
Faits:Facturation
noFacture (FK)
noClient (FK)
noVendeur (FK)
codePlan (FK)
nbAppels
totalMinutes
minutesLongueDistance
minutesSoir
minutesWeekend
fraisService
fraisServiceCumulatifs
fraisLongueDistance
taxes
total
Dim:ReprésentantVente
noVendeur (PKnaturelle)
nomVendeur
idDépartement (FK)
Dim:Client
noClient (PKnaturelle)
nomClient
ville
province
codePostal
datePremierService
...
Dim:Facture
noFacture (PKnaturelle)
dateFacturation
noLigne (FK)
Dim:LigneTél
noLigne (PK naturelle)
codeRégional
dateActivation
Dim:PlanUtilisation
codePlan(PK naturelle)
abbréviationPlan
minutesSemaine
minutesSoir
minutesWeekend
...
Dim:Département
idDépartement (PK)
directeur
...
Exempledemodélisation• Problèmesaveclemodèlepréliminaire:
1. Granularité:• Legrainleplusfincorrespondréellementàlafacturationd'uneligne d'unclient;
• Solution:– MettrelaclédeladimensionLigne danslatabledefaits.
2. Clésprimairesdesdimensions:• Lesclésprimairesdesdimensionsdoiventêtreartificielles(surrogate keys);
• Solution:– Remplacerlesclésprimairespardesclésartificielles;– Lorsquenécessaire,mettrelesclésnaturellesdanslatabledefaitscommedimensionsdégénérées(DD).
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 55
Exempledemodélisation• Problèmesaveclemodèlepréliminaire:
3. Dimensiontemporelle:• LadatedefacturationestmodéliséecommeunattributdeFacture aulieud'êtreunedimensionconforme;
• Solution:– CréerunedimensionàrôlesmultiplesDateFacturation,baséesurladimensionconformedeDate.
4. Dimensionsnormalisées:• LahiérarchieReprésentantVente – Département estnormalisée,causantdesjointuresinutiles;
• Solution:– MettrelesattributsdeDépartementdirectementdansReprésentantVente(i.e.,dénormaliser).
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 56
Exempledemodélisation• Problèmesaveclemodèlepréliminaire:
5. Attributsnon-descriptifs:• Certainesdimensionsontdesattributspeuinformatifs(ex:abbréviationPlan);
• Solution:– Rajouterdesattributsdescriptifspourrendrelesdonnéespluscompréhensiblesauxutilisateursd'affaires.
6. Faitsnon-additifs:• LefaitfraisServiceCumulatifs n'estpasadditif;• Solution:
– Retirercettecolonnedelatabledefaitetcalculerlesvaleurscumulativessurdemande.
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 57
Exempledemodélisation• Nouveaumodèle:
Département degénielogicieletdesTI MTI820Hiver2011– ©S.Chafki,C.Desrosiers 58
Faits:Facturation
idDateFacture (FK)
idLigne (FK)
idClient (FK)
idVendeur (FK)
idPlan (FK)
noFacture (DD)
nbAppels
totalMinutes
minutesLongueDistance
minutesSoir
minutesWeekend
fraisService
fraisLongueDistance
taxes
total
Dim:ReprésentantVente
idVendeur (PK)
noVendeur
nomVendeur
idDépartement
nomDépartement
directeurDépartement
Dim:Client
idClient (PK)
noClient
nomClient
ville
province
codePostal
datePremierService
...
Dim:DateFacturation
idDateFacture (PK)
dateFacture
mois
année
...
Dim:LigneTél
idLigne (PK)
noLigne
codeRégional
dateActivationDim:PlanUtilisation
idPlan (PK)
codePlan
abbréviationPlan
descriptionPlan
minutesSemaine
minutesSoir
minutesWeekend
...