48915920-data-warehouse-2009-1_2

47
Les entrepôts de données Elisabeth Métais

Upload: pablo-sene

Post on 02-Dec-2015

13 views

Category:

Documents


0 download

TRANSCRIPT

Les entrepôts de données

Elisabeth Métais

2

Sources Décideurs

L’entrepôt de données dans la ligne décisionnelleL’entrepôt de données dans la ligne décisionnelle

Entrepôt de données

Referentiel

Extracteur

ExtracteurIn

tegr

ateu

r

Extracteur

3

Définitions

Définition 1 (Goglin) : un entrepôt de données est un stockage intermédiaire de données issues des applications de production, dans lequel les utilisateurs finaux puisent avec des outils de restitution et d’analyse.

Définition 2 (Bill Inmon) : Un entrepôt de données est une collection de données thématiques, intégrées, non volatiles et historisées organisées pour la prise de décision.

Inmon et Codd sont considérés comme les auteurs du concept dans le début des années 90.

4

" Thèmatiques "

• Thématique = "Orienté sujet " .

• Orienté par thème et non plus par fonction.

• Exemples :• Dans les bases de données opérationnelles : assurance vie, assurance automobile, paye, facturation.

• Dans les bases de données décisionnelles : client, produit, réseau de distribution, médicament, marché, absences, réussite.

• Ce côté est renforcé dans les magasins.

5

• L’entrepôt n’est pas une concaténation des sources, les données sont sémantiquement intégrées.

• Exemples :

• Reconnaître qu’il s’agit de la même personne malgré un déménagement

• Reconnaître qu’il s’agit du même produit malgré des code barres différents

• Remarque : très difficile, mais indispensable.

" Intégrées "

6

• Pas de suppressions.

• Nécessité d’un référentiel de temps.

• L’historisation permet

• l’extrapolation,

• la mesure de l’impact d’une décision par comparaison de la situation avant et après la mise en application de cette décision.

• Exemple :

• Suivi des évolutions des comportements des clients.

" non volatiles, historisées"

7

• Niveau de granularité.

•Exemple :

• Stockage de tous les appels téléphoniques pour un client

APPEL_TELEPHONIQUE (n° client, horo-date, durée, correspondant, étranger, etc...)

(300 clients, 200 tuples par client, 60000 tuples d’appels).

• Stockage agrégé par client sur 1 mois

APPEL_TELEPHONIQUE (n° client, mois, nombre d’appel, durée moyenne, nombres d’appels vers l’étranger)

(300 tuples d’appels).

" agrégées "

8

• Les systèmes " opérationnels " (ou de " production ", ou de " gestion " ) sont dédiés aux métiers de l’entreprise pour les assister dans leurs tâches de gestion quotidiennes (et directement opérationnels).

ERP

• Les systèmes " décisionnels " sont dédiés au management de l’entreprise pour l’aider au pilotage de l’activité (et indirectement opérationnels).

Ils offrent au décideur une vision transversale de l’entreprise.

DW

" prise de décision"

9

• Suivi du comportement de la clientèle dans les télécommunications

• Nombre moyen d’heures par mois et par région,

• répartition des appels clients sur la semaine,

• Répartition des appels clients sur la journée,

• nombre moyen d’appels représentant 20% d’une facture,

• Durée moyenne d’une communication urbaine,

• Durée moyenne d’une communication intenationale.

• Suivi du marché (lignes installées, désinstallées, services choisis, répartition géographique)

• Comportement du réseau (pannes)

Exemples

10

• Quel est le volume des ventes par produit, par région, pour le 3ième trimestre 2003 ?

• Quel est le volume des ventes de produits laitiers, pour la région parisienne, par an, pour les 5 dernières années ?

• Quel est le type de produits dont les ventes baissent constamment dans les 6 derniers mois de l’année en cours ?

• Est-ce qu’une baisse de 10% ferait redémarrer les ventes de disques ?

Exemples

11

Transactionnel Décisionnel

Données - sur une période courte - historisées

- détaillées - agrégées

- personnelles - peuvent être anonymes

- mises à jour - recalculées

- temps de validité, de transaction

- temps de validité, de transaction, d’extraction

Traitements - requêtes simples - requêtes complexes

- répétitives - variées

- très sensible aux performances

- échelle de performance différente

Différences transactionnel / décisionnel

12

Transactionnel Décisionnel

Conception - orientée fonction - orientée sujet

- relativement statique - évolutif

Utilisateurs - agents opérationnels - manager

Nbres : . utilisateurs - milliers - centaines

. tuples accédés - dizaines/centaines - millions

. base de données - centaines de MB/GB - centaines de GB/TB

Différences transactionnel / décisionnel

13

• En général les "legacy systems", c'est-à-dire principalement les bases de données de production.

• exemples : factures, fichier des nouveaux clients.

• On extrait justement les données pour ne pas travailler directement sur les sources.

- "Décisionnel et transactionnel ne font pas bon ménage ",

- perturbations,

- supports physiques différents,

- outils et utilisateurs différents.

Les sources

14

• Mais aussi des sources extérieures :

• météo,

• calendrier des jours fériés,

• cours de la bourse,

• Géographie (études épidémiologiques, accidents de la route),

• études INSEE.

• Vieilles sources.

Les sources

15

• a pour but d'extraire les données et de les mettre dans un format commun.

• choisit d'extraire ce qui est nécessaire

• on n'importe pas la totalité des sources,

• satisfaire les "vues utilisateurs".

• applique une stratégie de rafraîchissement

• périodicité,

• ou déclenchement.

• peuplement initial.

L'extraction des données

16

3 principales techniques :

• Ecrire des interfaces entre les sources et l'entrepôt,

• Exploiter les fonctionnalités de réplication offertes par les SGBD,

• loader, triggers, passerelles, copies, logs, vues, etc …

• Utiliser un outil ETL

• génère les programmes d'alimentation,

• peut gérer leur déroulement,

• intégration de données.

L'extraction des données

17

• Intégration des données dans l'entrepôt en résolvant les conflits entre les différentes sources d'information

• codages, fautes d'orthographe, etc…

• tables de conversion, etc …

L'intégration des données

ETUDIANTS nom sexe adresseFigue 1 ParisFraise 2 Toulouse

PROF nom sexe adresseFigue M 4, av. Foch ParisFraise F 4, av. Foch Paris

18

Les meta-données

• Les méta-données regroupent l'ensemble des informations concernant l'entrepôt et les processus associés.

Destinées

Aux utilisateurs Aux équipes et outils responsables du processus de transformation des données de production vers l'entrepôt.

SGBD

19

Les meta-données

2 principales utilités

Carte routière pour l'interrogation

Utilisateurs

Pour les algorithmes d'extraction, intégration, nettoyage, rafraîchissement, historisation, qualité.(localisation, règles de transformation, flux)

Responsables des processus (équipes, outils)

+ méta-données habituelles (types, autorisations)

SGBD

20

Les meta-données

• Elles sont stockées dans un référentiel :

• Interface de navigation,

• lien avec les autres systèmes.

• Besoin de standardisation :

• Metadata Council (95, groupe de vendeurs),

• OIM (96, « Open Information Model » de

microsoft)

• CWMI (98, « Common Warehouse Metadata

Exchange » OMG)

21

Les magasins

• sous-ensemble de l’entrepôt,

• temps d’accès réduits, volume réduit, coût réduit,

• orienté vers un sujet particulier,

• les données sont adaptées à une classe de décideurs ou à un usage particulier (ex: fortement agrégées, DM)

généralement modélisé sous forme multidimensionnelle,

• nécessité de définir ne stratégie d’extraction de l’entrepôt,

• on peut avoir des sous-magasins.

22

Outils de restitution

• sur les magasins, ou directement sur l’entrepôt,

• requêtes SQL, SQL/OLAP

• tableurs,

• outils requêteurs spécialisés (outils de reporting),

• progiciels spécialisés,

• sortie web,

• logiciels de datamining,

• sortie système expert.

23

Variantes dans l’architecture

• architecture médiateur (entrepôt virtuel),

• architecture à plusieurs niveaux de stockage (ODS, CDW, etc.),

• architecture à magasins matérialisés et entrepôt virtuel,

• Architecture mixte

• choix des vues à matérialiser,

• choix d’un ODS,

• choix des niveaux de data marts.

24

Le modèle multidimensionnel

• Souvent appelé modèle OLAP (On Line Analytical Processing) (Codd, 1993).

• Présenté comme une alternative au modèle relationnel.

• Correspond mieux aux besoins du décideur.

• "Orienté sujet".

• " Cube" centré sur une activité.

• Exemple : vente.

25

Les faits

• Un cube relate un fait. L’activité est caractérisée par des faits qui se produisent (événements).

• Exemples :

• fait de vente,

• fait de notation,

• fait de passage de transaction boursière,

• fait de consultation médicale,

• fait de dépense dans un hôpital,

• fait d’absence de cours,

• fait de marquage de but,

• fait de fréquentation d’un cinéma.

26

Les indicateurs

• Les faits sont quantifiés par des indicateurs, également appelés "métriques", ou "mesures", ou "variables". Par exemple le fait de vente se caractérise par la quantité vendue et le montant de la vente.

• Ce sont les cellules du cube. Les indicateurs représentent une quantité mesurable, un fait observé.

• Chaque indicateur a une fonction d’agrégat (on peut les additionner, ou calculer le minimum, ou la moyenne).

• Ils sont généralement numériques et additifs :

Le montant des vente est additif (se somme sur toutes les dimensions), le niveau du stock est semi-additif (se somme sur les produits, mais pas sur le temps), la moyenne de fréquentation est non additive.

27

• Exemples :

• CA par produit/agence/dans le temps,

• coût moyen d’une hospitalisation par pathologie,

• le nombre de visiteurs moyens dans un établissement,

• taux d’occupation des lits,

• nombre d’articles en stock,

• satisfaction,

• taux de remplissage des avions par vol,

• temps d’attente moyen au supermarché,

• nombre de connexions sur un site web,

• durée des communications sur un site web.

Les indicateurs (suite)

28

• Formule : On appelle "formule" une mesure non stockée, obtenue à partir des mesures stockées.

• Exemples : prix moyen = total ventes / nombre vendu

• Remarque : il existe des faits sans mesures, les "dummy measures"

• Exemple : location d'une voiture, consultation à hôpital, réservation d'un livre.

• L'agrégation sera le comptage des faits.

Les indicateurs (suite)

29

Les dimensions

• Les "dimensions" sont les axes d'analyse.

• Exemples : produits, temps, région, promotion, fournisseur, joueur, élève, hôpital.

• Chaque dimension est associée à une hiérarchie.

• Exemples :

• continent -> pays -> région -> ville -> magasin

• année -> trimestre -> mois -> jour

• catégorie-> sous-catégorie -> produit

30

Opérateurs multidimensionnels

• Roll-up, ou agrégation, ou consolidation, ou drill-up, ou scale-up, ou forage vers le haut.

• Drill-down, ou désagrégation, ou segmentation, ou roll_down, ou drill-trough, ou forage vers le bas.

• Slice, ou projection.

• Dice, ou selection, ou filtering, ou screening.

• Pivot, ou rotation.

• Switch, ou permutation.

31

Implémentation

• MOLAP : Stocké sous forme multidimensionnelle propriétaire; avec stockage de toutes les agrégations.

• ROLAP : Stockage dans un SGBD relationnel (modèle en étoile).

• HOLAP : Hybride.

32

Sources

Modèles util isésModèles util isés

Entrepôt de données

Référentiel

Modèle d'intégration

Magasin de données

Modèle de diffusion

Modèle de présentation

33

Magasins de données (data marts)en constellation d’étoiles ROLAP

Lieux Age du patient

Type de maladie

Indicateurs

Nombre de patientsNombre de guérisonCoûtEtc ….

Date

Type de soins

Sexe du patient

Etc.

Modèle de Modèle de diffusiondiffusion

34

Table de faitsTable de faits

Effectif concerné

PatientsPatientsSexeTranche d’age

Type du cathéterType du cathéterArtèreVeineuxSwan GanzEtc.

Coté du cathéterCoté du cathéterDroitGauche

Acte sur cathéterActe sur cathéterPoseChangementChangement sur siteEtc.

Site du cathéterSite du cathéterAxillaireFémoraleHuméralEtc.

RésistanceRésistanceOuiNon

Date infectionDate infectionJourMoisAnnée

Jour infectionJour infectionJour 1 du séjourEtc.

GermesGermesstaphylococcus aureusstaphylococcus epidermidisstaphylococcus coagulase négatifenterococcus faecalis, faeciumstreptococcus, A groupEtc.

35

Modélisation en étoiles

Temps

clé_tempsheurejoursemainemoisannéefériéévénement

Fait de Vente

clé_tempsclé_produitclé_magasin

montant_ventesquantité_vendue Magasin

clé_magasinadressevilledépartementsecteur_ventesurface

Produit

clé_produitdescriptionmarquecatégoriesous_catégoriecouleurtaille

36

Modélisation en flocons

Temps

clé_tempsheurejoursemainemoisannéefériéévénement

Fait de Vente

clé_tempsclé_produitclé_magasin

montant_ventesquantité_vendue

Magasin

clé_magasinclé_localisationsecteur_ventesurface

Produit

clé_produitdescriptionmarqueclé_sous_catégoriecouleurtaille

Sous_catégorie

clé_sous_catégoriesous_catégoriecatégorie

Localisation

clé_localisationadressevilledépartement

Les tables de dimension sont normalisées

37

Modélisation en constellations

Les tables de dimensions sont partagées par plusieurs tables de faits

Temps

clé_tempsheurejoursemainemoisannéefériéévénement

Fait de Vente

clé_tempsclé_produitclé_magasin

montant_ventesquantité_vendue

Magasin

clé_magasinclé_localisationsecteur_ventesurface

Produit

clé_produitdescriptionmarqueclé_sous_catégoriecouleurtaille

38

Différentes catégories de tables de faits

• Type "transaction"

• fait = activité de la transaction (ex: une vente)

• date = date de la transaction

• 1 ligne par événement

•Type "instantané périodique"

• fait = performance dans un intervalle prédéfini (ex: total

des entrées en fin de journée)

• date = date fin de période

•1 ligne par période

39

• Type "instantané récapitulatif"

• fait = performance dans un intervalle de temps

correspondant à une activité (ex: évaluation d'un cours,

séjour d'un patient)

• dates = date début, date fin

•1 ligne par activité

40

Modèle de présentation

Nbre de patients femmes de moins de 30 ans

Infectieuse chronique etc.

Nord 300 200

PACA 50 150

Bretagne 45 120

Etc.

41

Nbre de patients femmes de moins de 30 ans

Infectieuse chronique etc.

Nord

PACA 50 150

Bretagne 45 120

Etc.

Lille 150 110Caen 30 25Calais 43 40Rouen 77 25

42

Nbre de patients femmes de moins de 30 ans

InfectieusePneumo. Grippe

chronique etc.

Nord

PACA 50 150

Bretagne 45 120

Etc.

Lille 140 10 110Caen 15 15 25Calais 23 20 40Rouen 40 37 25

43

Méthodologie de conception

• Méthodologie basée sur une matrice (préconisée par les

vendeurs d'outils MOLAP).

• Lister les faits et les mesures pertinents,

• Définir pour chaque mesure les dimensions dont elle

dépend,

• Donner les hiérarchies, Choisir le niveau d'agrégation.

44

Méthodologie de conception

• Méthodologie basée sur l'analyse des requêtes• Attributs du group by : dimensions• Attributs agrégés : mesures• Attributs du "where" : attributs des tables de fait ou de

dimensions.• Exemple :

Select vente.n°magasin, vente.n°produit, sum(vente.prix)

from vente, produit

Where produit.n°produit = vente.n°produit

and produit.description = "livre"

group by vente.n°magasin, vente.n°produit;

45

Méthodologie de conception

• Méthodologie basée sur un modèle conceptuel des données

(approche MAP Akoka, Prat, Comyn_Wattiau)

•Effectuer la modélisation en entité-association,

•Les associations (m-n) deviennent des tables de faits,

•Les entités participantes deviennent des tables de dimensions,

•Les propriétés des associations deviennent les variables

multidimensionnelles,

• deux entités reliées par une associations 1-n acquièrent un lien

de hiérarchie.

46

Gestion des changements dans les dimensions

• Exemples : le client change d'adresse, un vendeur change d'affectation.

• Remarque : distinguer les changements fréquents et les changements moins

fréquents (SCD).

• Solution 1: Vraie MAJ (écrasement de l'ancienne valeur)-> Correction d'une erreur, ou historique de changement sans intérêt.

• Solution 2 : Stockage des différentes versions :Clé-artificielle, version 1 ………, clé naturelle, dern.version (O/N), date-début, date-fin

Clé-artificielle, version 2 ………, clé naturelle, dern.version (O/N), date-début, date-fin

Clé-artificielle, version n ………, clé naturelle, dern.version (O/N), date-début, date-fin

47

• Solution 3 : Conservation des deux dernières valeurs

Clé-artificielle, …,valeur précédente d'un attribut, nouvelle valeur de cet attribut,

……

Solution 4 : Changements réguliers prévus

Clé-artificielle, … , valeur 2000, valeur 2001, valeur 2002, valeur 2003, …

Solution 5 : Mini dimensions

Une dimension client, une dimension profil_client

-> pour les changements fréquents