Entrepôtdedonnées( et(l ... - Hugo...

Post on 11-Jul-2020

5 views 0 download

Transcript of Entrepôtdedonnées( et(l ... - Hugo...

Entrepôt  de  données  et  l’Analyse  en  ligne  

Maguelonne  Teisseire  Hugo  Alatrista  Salas  –  hugo.alatrista-­‐salas@teledetec9on.fr  Flavien  Bouillot  

Déroulement  du  cours  •  17  janvier  :  cours  et  TD  •  20  janvier  :  cours?  et  TP  •  20  janvier  :  CC  noté  

•  ý  Une  par9e  de  l’examen  final  portera  sur  ce  cours  

2  

Plan  de  cours  1.  Systèmes  d’informa9on  décisionnelles  

2.  Entrepôt  de  données  (Data  Warehouse)  

3.  Analyse  Mul9dimensionnelle  

3  

Systèmes  d’information  décisionnelles  

4  

Contexte    

Pilotage

Indicateurs

Operations(Administratif + Métier) 5  

Contexte    

Pilotage

Indicateurs

Operations(Administratif + Métier)

Décisionnel  

Fonc9onnel  6  

Problématique  1  •  Les  entreprises  possèdent  de  nombreuses  sources  de  données  poten9ellement  exploitables    

7  

Problématique  2  •  Les  sources  de  données  sont  disséminées  sur  diverses  bases  de  données    

Ventes  

Stock  

RH  8  

Problématique  3  •  Le  besoin  d’analyse  exprimé  est  transversal  afin  de  perme`re  la  prise  de  décision  stratégique    

Ventes  

Stock  

RH  

9  

Problématique  4  •  Type  de  données  :  données  opéra9onnelles  (de  produc9on)    •  Bases  de  données,  fichiers,  9ckets  case,  bulle9ns  de  paie,  ...    

•  Caractéris9ques  des  données  :    •  Distribuées  :  systèmes  éparpillés    •  Hétérogènes  :  systèmes  et  structures  de  données  différents    •  Détaillées  :  organisa9on  de  données  selon  les  processus  fonc9onnels  et  données  trop  abondantes  pour  l’analyse    

•  Peu/pas  adaptées  à  l’analyse  :  des  requêtes  lourdes  peuvent  bloquer  le  système  transac9onnel    

•  Vola9les  :  pas  d’historisa9on  systéma9que     10  

L’idée  –  centralisation  1  

Ventes  

Stock  

RH   11  

L’idée  –  centralisation  2  

Ventes  

Stock  

RH  

Data  Warehouse  +  OLAP   12  

Du  transactionnel  au  décisionnel  

Schème opérationnelle

Données opérationnelles

Schème du Data Warehouse

Données consolidées

Schème utilisateur

Données derivées

Système OLTP Data Warehouse Applications OLAP

13  

Pour  quoi  pas  utiliser  OLTP?  OLTP   Data  Warehouse  

Données   Atomiques  Orientée  applica9on  A  jour  Dynamiques  

Résumées  Orientée  sujet  Historiques    Sta9ques    

U9lisateurs   Employés  de  bureau  Nombreux  Concurrents  Mises  à  jour  Requêtes  prédéfinies  Réponses  immédiates    

Analystes    Peu  Non  concurrents  Interroga9ons  Requetés  spécifiques  Réponses  moins  rapides  

Access  à  peu  de  données   Access  à  beaucoup  d’informa9on   14  

Métaphore  du  restaurant    

h`p://www.kimballgroup.com/2004/01/01/data-­‐warehouse-­‐dining-­‐experience/  

Raw  materials   The  kitchen   The  dinning  room  

Prepara1on  :  the  kitchen  Quality,  consistency,  and  integrity  

Presenta1on  :  the  dinning  room    Food,  decor,  service,  cost  

15  

L’entrepôt  de  données    (Data  Warehouse)  

16  

Les  fondateurs  Edgar  Frank  Codd  •  Fondateur  du  modèle  rela9onnelle  (1970)  •  Ecrit  les  douze  lois  du  traitement  analy9que  en  ligne  (1993)  

Ralph  Kimball  •  Des  premiers  travaux  sur  la  informa9que  décisionnelle  ‘70  

•  Proposé  le  modèle  Bo`on-­‐up  

Bill  Inmon  •  Formalisé  du  concept  d’entrepôt  de  données  (1994)  

•  Proposé  le  modèle  Top-­‐down  

17  

DéNinition  (B.  Inmon)  -­‐  1994  

•  «  Un  entrepôt  de  données  est  une  collec9on  de  données  orientées  sujet,  intégrées,  non  vola9les  et  historiées,  organisées  pour  le  support  d’un  processus  d’aide  à  la  décision  »    

 •  «  Un  entrepôt  de  données  ne  s’achète  pas,  il  se  construit…  »    

18  

Les  approches  académiques    

R.  Kimball  www.kimballgroup.com    

B.  Inmon  www.inmoncif.com    

Processus   Bo`om-­‐up   Top-­‐down  

Organisa9on   Data  marts   Data  Warehouse  

Schéma9sa9on   Etoile   Flocon  

19  

Approche  Top-­‐down  (Inmon)  Qui  veut  par9ciper?  

Ventes  Stock  

RH  

Nous!!!  

20  

Schéma  général    

Ventes  

Stock  

RH  

ETL  

RH  

Stock  

Ventes  

Data  Warehouse  

Datamarts  

21  

Approche  Down-­‐top  (Kimball)  Veux-­‐tu  

par9ciper?   Veux-­‐tu  par9ciper?  

Oui  Oui  

RH  Stock  

22  

Schéma  général    

Ventes  

Stock  

RH  

ETL  

RH  

Stock  

Ventes  

Data  Warehouse  

Data  marts  

Bus  

23  

Data  Mart  •  Un  magasin  de  données  (Data  mart)  est  un  sous-­‐ensemble  de  l'entrepôt  

•  Il  correspond  à  une  classe  de  décideurs  intéressés  par  le  même  thème  

•  Son  volume  réduit  permet  un  accès  plus  rapide  aux  données    •  Généralement  le  magasin  est  modélisé  sous  forme  mul9dimensionnelle    

•  Les  ou9ls  ETL  peuvent  être  u9lisés  à  ce  niveau    

24  

Les  phases  1.  La  concep9on  (et  la  phase  ETL)  2.  La  phase  de  structura9on  3.  La  phase  OLAP  

25  

Conception    •  Piloter  quelle  ac9vité́  de  l’entreprise  •  Déterminer  et  recenser  les  données  à  u9liser  •  Définir  les  aspects  techniques  de  la  réalisa9on  •  Construire  les  modelés  de  données  •  Me`re  au  point  les  démarches  d’alimenta9on  (ETL)  •  Définir  les  stratégies  d’administra9on  •  Définir  des  espaces  d’analyse  •  Définir  le  mode  de  res9tu9on  •  …   26  

ETL  Alimenta9on  du  Data  Warehouse  et  extrac9on  des  Data  marts  •  Extract  •  Accès  aux  différentes  sources  •  Selon  des  règles  (déclencheurs)  ou  requêtes    •  Périodique  

•  Transform    •  Unifica9on  des  modèles  (sources  hétérogènes)    •  Ges9on  des  inconsistances  des  données  sources,  élimina9on  des  doubles,  etc.    

•  Load  •  Chargement  dans  l'entrepôt  ou  dans  les  magasins  •  Périodicité́  parfois  longue     27  

Ex.  d’intégration  des  données  m,  f  

h,  f  

homme,  femme  

homme,  femme  

Transforma9

on  

FRF  

USD  

EUR  

EUR  Transforma9

on  

char(10)  

dec(13,3)  

numeric(7)  

numeric(7)  

Transforma9

on  

28  

La  structuration  1  1.  Extrac9on  des  données    •  Besoin  d’ou9ls  spécifiques  pour  :  

•  Accéder  aux  bases  de  produc9on  (requêtes  sur  des  BD  hétérogènes)  •  Améliorer  la  qualité́  des  données  :  ne`oyer,  filtrer,  …  •  Transformer  les  données  :  intégrer,  homogénéiser  •  Dater  systéma9quement  les  données    

29  

La  structuration  2    2.  Référen9el    •  La  métabase  con9ent  des  métadonnées  :  des  données  sur  les  données  de  l’entrepôt  de  données  •  Quelles  sont  les  données  «entreposées»,  leur  format,  leur  Significa9on,  leur  degré́  d’exac9tude  

•  Les  processus  de  récupéra9on/extrac9on  dans  les  bases  sources  •  La  date  du  dernier  chargement  de  l’entrepôt  •  L’historique  des  données  sources  et  de  celles  de  l’entrepôt  

30  

La  structuration  3    2.  Les  modèles  (ils  sont  détaillées  ensuite)  •  Modèle  en  étoile  •  Modèle  en  flocon    •  Modèle  en  constella9on  

31  

Modèle  en  étoile  •  Une  table  de  faits  :  iden9fiants  des  tables  de  dimension  ;  une  ou  plusieurs  mesures  

•  Plusieurs  tables  de  dimension  :  descripteurs  des  dimensions •  Une  granularité́  définie  par  les  iden9fiants  dans  la  table  des  faits  •  Avantages  :    •  Facilité  de  naviga9on  •  Performances  :  nombre  de  jointures  limité  ;  ges9on  des  données  creuses.  Ges9on  des  agrégats  

•  Fiabilité́  des  résultats    •  Inconvénients  :    •  Toutes  les  dimensions  ne  concernent  pas  les  mesures  Redondances  dans  les  dimensions  

•  Alimenta9on  complexe     32  

Schéma  en  étoile  

   

   

   

   

   

Table  de    faits  

Dimension  1  

Dimension  2  

Dimension  3  

Dimension  n   33  

Exemple  de  schéma  en  étoile  

Faits  

numComm  codProd  cleDate  quan9te  prix  

Commande  

numComm  detaille  

Produit  

codProd  detaille  categorie  

Date  

cleDate  jour  mois  annee   34  

Modèle  en  Nlocon  •  Le  modèle  doit  être  simple  à  comprendre  :  on  peut  augmenter  sa  lisibilité́  en  regroupant  certaines  dimensions  

•  On  définit  ainsi  des  hiérarchies  :  celles-­‐ci  peuvent  être  géographiques  ou  organisa9onnelles  

Mod.  flocons  de  neige  =  Mod.  étoile  +  normalisa5on  des  dimension    •  Avantages  :    •  Réduc9on  du  volume  •  Perme`re  des  analyse  par  pallier  (drill  down)  sur  la  dimension  hiérarchisée  

•  Inconvénients  :  •  Naviga9on  difficile  •  Nombreuses  jointures   35  

Schéma  en  Nlocon  

   

   

   

   

   

Table  de    faits  

     

 36  

Exemple  de  schéma  en  Nlocon  

Faits  

numComm  codProd  cleDate  quan9té  prix  

Commande  

numComm  detaille    

Produit  

codProd  detaille  codCate  

Categorie  

codCate  descrip9on  

Date  

cleDate  Jour  cleMois  

Mois  

cleMois  mois  cleAnnee  

Annee  

cleAnnee  annee  

37  

Modèle  en  constellation  •  La  modélisa9on  en  constella9on  consiste  à  fusionner  plusieurs  modèles  en  étoile  qui  u9lisent  des  dimensions  communes.    

•  Un  modèle  en  constella9on  comprend  donc  plusieurs  tables  de  faits  et  des  tables  de  dimensions  communes  ou  non  à  ces  tables  de  faits.    

38  

Concernant  l’hiérarchie    Hiérarchie  Simple   Hiérarchie  Mul1ple  

Produit  

Categorie  

Jour  

Mois  Semaine  

Annee  

39  

L’analyse  multidimensionnelle  

40  

L’analyse  multidimensionnelle  •  Objec9f  :  obtenir  des  informa9ons  déjà̀  agrégées  selon  les  besoins  de  l’u9lisateur  :  simplicité́  et  rapidité́  d’accès    

•  HyperCube  OLAP  :  représenta9on  de  l’informa9on  dans  un  hypercube  à  N  dimensions    

•  OLAP  (On-­‐Line  Analy9cal  Processing)  :  fonc9onnalités  qui  servent  à  faciliter  l’analyse  mul9dimensionnelle  :  opéra9ons  réalisables  sur  l’hypercube    

41  

(Hyper)Cube  de  données  1  

Faits  

numComm  codProd  cleDate  quan9te  prix  

Commande  

numComm  detaille  

Produit  

codProd  detaille  categorie  

Date  

cleDate  jour  mois  annee  

Commande  

Prod

uit  

Fait  

42  

Composantes  d’un  cube  •  Chaque  cellule  du  cube  correspond  à  une  occurrence  du  fait  •  Chaque  cellule  con9ent  des  indicateurs  (variables,  métriques  ou  mesures)  

•  Les  axes  d'analyse,  également  appelés  dimensions,  con9ennent  un  ensemble  de  valeurs  

•  Des  hiérarchies  sont  spécifiées  sur  les  dimensions  afin  de  perme`re  une  consolida9on  des  indicateurs    

•  Chaque  indicateur  a  une  fonc1on  d’agrégat  afin  d’être  exploité  sur  la  hiérarchie    

 

43  

(Hyper)Cube  de  données  2  

Commande  

Prod

uit  

Axes  d’analyse  

quan9te  prix  

Indicateurs  

Fait  44  

Exemple  1  MAGASIN

Paris

Lille

Londres

Tokyo

France

Anglaterre

Japan

Europe

Asie

PRODUITS

Sac-à-main

Bottes

Foulard

Gants

Cuir

Laine

2012Janvier

DécembreJanvier

Décembre 2013

DATES

QuantitéMontants

VENTES

45  

Exemple  2  MAGASIN

34000

34090

59100

08090

Montpellier

Lille

Ardennes

Sud

NordJEUX VIDEO

Resident Evil

Darkness 2

Fifa 2013

PES 2014

Action

Sport

2012Janvier

DécembreJanvier

Décembre 2013

DATES

Unités venduesPrix unitaire

VENTES

46  

L'implémentation  du  OLAP    •  MOLAP  (Mul9dimensional  OLAP)  •  Le  cube  est  stocké  sous  forme  propriétaire  par  un  SGBD  mul9dimensionnel  dans  une  matrice  

•  On  trouve  en  colonne  tous  les  axes,  puis  tous  les  indicateurs  •  Chaque  cellule  du  cube  est  stockée  par  une  ligne  dans  la  matrice    

•  ROLAP  (Rela9onal  OLAP)    •  Le  stockage  peut  s'effectuer  sur  un  SGBD  rela9onnel  classique  •  Le  cube  est  stocké  selon  le  modèle  en  étoile  (flocon  ou  constella9on)  

•  HOLAP  (Hybride  OLAP)    •  ROLAP  +  MOLAP   47  

Operateurs  algébriques  OLAP  •  Modèle  rela9onnel  :  projec9on,  jointure,  restric9on,  union,  division,  intersec9on,  etc.  

•  Modèle  OLAP  :  drill-­‐up,  drill-­‐down,  slice,  dice,  pivot,  switch,  etc.  

48  

Catégories  d'opérations  OLAP  1  •  Restructura9on  :  opéra9ons  liées  à  la  structure,  manipula9on  et  visualisa9on  du  cube  :    •  Rotate/pivot  :  effectuer  à  un  cube  une  rota9on  autour  d’un  de  ses  trois  axes  passant  par  le  centre  de  2  faces  opposées,  de  façon  à  présenter  un  ensemble  de  faces  différents  

•  Switch  :  consiste  à  inter-­‐changer  la  posi9on  des  membres  d’une  dimension    

•  Split  :  consiste  à  présenter  chaque  tranche  du  cube  et  de  passer  d’une  présenta9on  tridimensionnelle  d’un  cube  à  sa  présenta9on  sous  la  forme  d’un  ensemble  de  tables    

•  Nest  :  imbrica9on  des  membres  à  par9r  du  cube      •  Push  :  combiner  les  membres  d’une  dimension  aux  mesures  du  cube     49  

Catégories  d'opérations  OLAP  2  •  Granularité́  :  concerne  un  changement  de  niveau  de  détail  :  opéra9ons  liées  au  niveau  de  granularité́  des  données  :    •  Roll-­‐up  :  consiste  à  représenter  les  données  du  cube  à  un  niveau  de  granularité́  supérieur  conformément  à  la  hiérarchie  définie  sur  la  dimension.  Une  fonc9on  d’agréga9on  (somme,  moyenne,  etc.)  en  paramètre  de  l’opéra9on  indique  comment  sont  calculés  les  valeurs  du  niveau  supérieur  à  par9r  de  celles  du  niveau  inférieur    

•  Drill-­‐down  :  consiste  à  représenter  les  données  du  cube  à  un  niveau  de  granularité́  de  niveau  inférieur,  donc  sous  une  forme  plus  détaillée  (selon  la  hiérarchie  définie  de  la  dimension)    

50  

Catégories  d'opérations  OLAP  3  •  Ensembliste  :  concerne  l’extrac9on  et  lʼOLTP  classique  :    •  Slice  :  correspond  à  une  projec9on  selon  une  dimension  du  cube  •  Dice  :  correspond  à  une  sélec9on  du  cube    

51  

Rotate/pivot  

2013   Foulard   Botes   Gants  

Nimes   40   60  

Lille   20   30  

Paris   10   20  

Foulard   2010   2011   2012   2013  

Nimes   50   60   40  

Lille   70  

Paris   100   30   10  

MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

52  

Switch  

MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 20122013

50 60 40

70

100 30 10

5070

60 40

50 506040

40

50

6010

20

2013   Foulard   Botes   Gants  

Nimes   40   60  

Lille   20   30  

Paris   10   20  

2012   Foulard   Botes   Gants  

Nimes   40   50  

Lille   10   60  

Paris   20  

53  

Split  Foulard   2010   2011   2012   2013  

Nimes   50   60   40  

Lille   70  

Paris   100   30   10  

Botes   2010   2011   2012   2013  

Nimes   70   40  

Lille   20   20  

Paris   30   30  

Gants   2010   2011   2012   2013  

Nimes   50   50   60  

Lille   70   10   30  

Paris   30   20  

MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

54  

Nest  MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

Nimes   Lille   Paris  

Foulard  

2010   50   70   100  

2011   60   30  

2012   40  

2013   10  

Botes  

2010   70  

2011   20   50  

2012  

2013   40   20  

Gants  

2010   20  

2011   50   10  

2012   50  

2013   60   30   20  

nest(produit,  annee)  

55  

Push  MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

push(annee)   Foulard   Botes   Gants  

Nimes  

2010     50  2011     60  2012     40  

 

2010    70      

2013    40  

2011    50  2012    50  2013    60  

Lille  

2010   70        

2010     10  

2012    50  2013    20  

 2011    20  

 2013    30  

Paris  

2010     100  2011     30  

 2013    10  

   

2012    40  

 2011    50  

 2013    20  

56  

Roll-­‐up  et  Drill-­‐down  •  Roll-­‐up  :  représente  les  données  du  cube  à  un  niveau  de  granularité́  supérieur  conformément  à  la  hiérarchie  définie  sur  la  dimension  

•  Drill-­‐down  :  représente  les  données  du  cube  à  un  niveau  de  granularité́  de  niveau  inférieur,  donc  sous  une  forme  plus  détaillée  

tout-­‐lieu  

nord   centre   sud  

Lille   …   Paris   …   Nimes   …   57  

Exemples  de  Roll-­‐up  

Foulard   Botes   Gants  

Nimes   150   110   160  

Lille   70   80   90  

Paris   140   20   80  

tout-­‐ANNEES  

MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

220 90 40 10 1060

110

tout-MAGASIN 58  

Exemple  de  Drill-­‐down  

MAG

ASIN Nimes

Lille

Paris

PRODUITSCuir

Laine

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40100

100

50

10

MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

50 50

20

59  

Slide  (projection)  MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60 40

70

100 30 10

5070

60 40

50 50 6040

4060

3020

20

10

πannees,produits  

2010   2011   2012   2013  

Foulard   220   90   40   10  

Botes   90   20   60  

Gants   100   50   110  

220 90 40 10 10

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

6011090

5060

11010020

tout-MAGASIN

104090220

60  

Dice  (selection)  

MAG

ASIN Nimes

Lille

Paris

PRODUITS

Gants

FoulardBotes

ANNEES

2010 2011 2012 2013

50 60

70

100

5070

60

50 50 60

60

ventes  ≥  50  

MAG

ASIN Nimes

Lille

PRODUITS

FoulardBotes

ANNEES

2010 2011

50 60

70

5070

60

(MAGASIN  =  Nimes  OR  MAGASIN  =  Lille)  AND  (ANNEE  =  2010  OR  ANNEE  =  2011)  AND  (PRODUITS  =  Foulard  OR  PRODUITS  =  Botes)    

61  

Langages  pour  OLAP  •  SQL  étendu  (Extensions  de  SQL-­‐3  /  SQL-­‐99  pour  OLAP)  :    •  Nouvelles  fonc9ons  SQL  d’agréga9on:  Rank,  N_9le  •  Nouvelles  fonc9ons  de  la  clause  GROUP  BY  :    

•  ROLLUP    •  CUBE  •  GROUPING  SETS  (mul9ple  GROUP  Bys)    

•  Fenêtre  glissante  :    •  WINDOWS/OVER/PARTITION  

•  MDX  (Mul9  Dimensional  eXpression)  :    •  Langage  de  requêtes  OLAP    •  Proposé  par  Microso�  (1997)    

62  

Références  •  Cours  Systèmes  d’informa9on  décisionnels,  E.  GRISLIN-­‐LE  STRUGEON  et  D.  DONSEZ    

•  Cours  de  Entrepôts  de  données  et  analyse  en  ligne,  Bernard  ESPINASSE    

•  h`p://www.kimballgroup.com/  •  SQL  Server  Microso�  et  OLAP  •  Cours  de  Introduc9on  aux  systèmes  d’informa9on  décisionnelle,  O.  Boussaid  

63