Les entrepôts de données

Data Warehousing and Decision Systems · notes

Browse all intelligence artificielle et données documents

Les entrepôts de données

Références :

Lydie Soler U.F.R. d’informatique 2008

NEGRE Elsa , Université Paris-Dauphine 2014-2015

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Le marché du décisionnel

(cid:1) Démonstration

1

2

1

Le contexte

(cid:1) Besoin: prise de décisions stratégiques et tactiques

(cid:1) Pourquoi: besoin de réactivité

(cid:1) Qui: les décideurs (non informaticiens)

(cid:1) Comment: répondre aux demandes d’analyse des données, dégager

des informations qualitatives nouvelles

Qui sont mes

meilleurs

clients?

Quels français

consomment

beaucoup de

poisson?

Pourquoi et

comment le

chiffre

d’affaire a

baissé?

A combien

s’élèvent mes

ventes

journalières?

Les données utilisables par les décideurs

(cid:1) Données opérationnelles (de production)

(cid:1) Bases de données (Oracle, SQL Server)

(cid:1) Fichiers, …

(cid:1) Paye, gestion des RH, gestion des commandes…

(cid:1) Caractéristiques de ces données:

(cid:1) Distribuées: systèmes éparpillés

(cid:1) Hétérogènes: systèmes et structures de données différents

(cid:1) Détaillées: organisation des données selon les processus

fonctionnels, données surabondantes pour l’analyse

(cid:1) Peu/pas adaptées à l’analyse : les requêtes lourdes peuvent

bloquer le système transactionnel

(cid:1) Volatiles: pas d’historisation systématique

3

4

2

Problématique

(cid:1) Comment répondre aux demandes des décideurs?

(cid:1) En donnant un accès rapide et simple à l’information

stratégique

(cid:1) En donnant du sens aux données

Mettre en place un système d’information dédié aux

applications décisionnelles:

un data warehouse

5

Le processus de prise de décision

Champs d’application des

systèmes décisionnels

Définir le

problème

Rassembler

les données

Analyser les

données

Établir des

solutions

Décider

Temps de prise d’une décision

6

3

Le processus de prise de décision

Bases de

production

Data

warehouse

Base multi -

dimensionnelle

Prédiction /

simulation

Domaines d’utilisation des DW

(cid:1) Banque

(cid:1) Risques d’un prêt, prime plus précise

(cid:1) Santé

(cid:1) Épidémiologie

(cid:1) Risque alimentaire

(cid:1) Commerce

(cid:1) Ciblage de clientèle

(cid:1) Déterminer des promotions

(cid:1) Logistique

(cid:1) Adéquation demande/production

(cid:1) Assurance

(cid:1) Risque lié à un contrat d’assurance (voiture)

(cid:1) …

Prise de

décision

7

8

4

Quelques métiers du décisionnel

(cid:1) Strategic Performance Management

(cid:1) Déterminer et contrôler les indicateurs clé de la performance de

l’entreprise

(cid:1) Finance Intelligence

(cid:1) Planifier, analyser et diffuser l’information financière. Mesurer et

gérer les risques

(cid:1) Human Capital Management (gestion de la relation avec les employés)

(cid:1) Aligner les stratégies RH, les processus et les technologies.

(cid:1) Customer Relationship Management (gestion de la relation client)

(cid:1) Améliorer la connaissance client, identifier et prévoir la

rentabilité client, accroitre l’efficacité du marketing client

(cid:1) Supplier Relationship Management (gestion de la relation fournisseur)

(cid:1) Classifier et évaluer l’ensemble des fournisseurs. Planifier et

piloter la stratégie Achat.

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Le marché du décisionnel

(cid:1) Démonstration

9

10

5

Définition d’un DW

(cid:1) W. H. Inmon (1996):

« Le data Warehouse est une collection de

données orientées sujet, intégrées, non

volatiles et historisées, organisées pour le

support d’un processus d’aide à la décision »

(cid:1) Principe: mettre en place une base de données

utilisée à des fins d’analyse

Les 4 caractéristiques des data warehouse

1. Données orientées sujet:

(cid:1) Regroupe les informations des différents métiers

(cid:1) Ne tiens pas compte de l’organisation fonctionnelle

des données

Ass. Vie

Ass. Auto

Ass. Santé

Client

Police

11

12

6

Les 4 caractéristiques des data warehouse

2. Données intégrées:

(cid:1) Normalisation des données

(cid:1) Définition d’un référentiel unique

h,f

1,0

homme, femme

GBP

CHF

USD

h,f

EUR

13

Les 4 caractéristiques des data warehouse

3. Données non volatiles

(cid:1) Traçabilité des informations et des décisions prises

(cid:1) Copie des données de production

Bases de production

Entrepôts de données

Ajout

Suppression

Modification

Chargement

Accès

14

7

Les 4 caractéristiques des data warehouse

4. Données datées

(cid:1) Les données persistent dans le temps

(cid:1) Mise en place d’un référentiel temps

Image de la base en Mai 2005

Image de la base en Juillet 2006

Base de

production

Entrepôt

de

données

Répertoire

Nom

Dupont

Durand

Ville

Paris

Lyon

Répertoire

Nom

Ville

Dupont

Durand

Marseille

Lyon

Calendrier

Répertoire

Code Année Mois

Code Année Mois

Code Année Mois

Code Année Mois

1

1

2

2005

2005

2006

Mai

Mai

Juillet

1

1

1

1

2

Dupont Paris

Dupont Paris

Durand Lyon

Durand Lyon

Dupont Marseille

15

SGBD et DW

OLTP: On-Line

Transactional

Processing

Service

commercial

BD prod

Service

Financier

BD prod

Clientèle

Service

livraison

BD prod

OLAP: On-Line

Analitical

Processing

Data Warehouse

Clientèle

H

I

S

T

O

R

I

Q

U

E

16

8

OLTP VS DW

OLTP

Advertisement

Orienté transaction

Orienté application

Données courantes

Données détaillées

Données évolutives

DW

Orienté analyse

Orienté sujet

Données historisées

Données agrégées

Données statiques

Utilisateurs nombreux,

administrateurs/opérationnels

Temps d’exécution: court

Utilisateurs peu nombreux,

manager

Temps d’exécution: long

17

18

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Le marché du décisionnel

(cid:1) Démonstration

9

Datamart

(cid:1) Sous-ensemble d’un entrepôt de données

(cid:1) Destiné à répondre aux besoins d’un secteur ou

d’une fonction particulière de l’entreprise

(cid:1) Point de vue spécifique selon des critères métiers

Datamarts du

service Marketing

Datamart du

service Ressources

Humaines

19

DW de l’entreprise

Intérêt des datamart

(cid:1) Nouvel environnement structuré et formaté en

fonction des besoins d’un métier ou d’un usage

particulier

(cid:1) Moins de données que DW

(cid:1) Plus facile à comprendre, à manipuler

(cid:1) Amélioration des temps de réponse

(cid:1) Utilisateurs plus ciblés: DM plus facile à définir

20

10

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Le marché du décisionnel

(cid:1) Démonstration

Architecture générale

Zone de préparation

Zone de stockage

E

X

T

R

A

C

T

I

O

N

Sources de

données

Transformations:

Nettoyage

Standardisation

C

H

A

R

G

E

M

E

N

T

Data

warehouse

Datamart

Zone de

présentation

Requêtes

Rapports

Visualisation

Data Mining

21

22

11

Les flux de données

(cid:1) Flux entrant

(cid:1) Extraction: multi-source, hétérogène

(cid:1) Transformation: filtrer, trier, homogénéiser, nettoyer

(cid:1) Chargement: insertion des données dans l’entrepôt

(cid:1) Flux sortant:

(cid:1) Mise à disposition des données pour les utilisateurs

finaux

23

Les différentes zones de l’architecture

(cid:1) Zone de préparation (Staging area)

(cid:1) Zone temporaire de stockage des données extraites

(cid:1) Réalisation des transformations avant l’insertion dans le DW:

(cid:1) Nettoyage

(cid:1) Normalisation…

(cid:1) Données souvent détruites après chargement dans le DW

(cid:1) Zone de stockage (DW, DM)

(cid:1) On y transfère les données nettoyées

(cid:1) Stockage permanent des données

(cid:1) Zone de présentation

(cid:1) Donne accès aux données contenues dans le DW

(cid:1) Peut contenir des outils d’analyse programmés:

(cid:1) Rapports

(cid:1) Requêtes…

24

12

Architecture d’un DW (1/3)

25

Architecture d’un DW (2/3)

26

13

Architecture d’un DW (3/3)

Le processus ETL

27

28

14

Extraction (1/3)

(cid:1) Extraction

• Elle contient la découverte des données

(d’identifier dans les systèmes sources les

données à importer dans le DW )

• Extraire des données des systèmes de production

• Dialoguer avec différentes sources :

(cid:1) Base de données,

(cid:1) Fichiers,

(cid:1) Web…

29

Extraction (2/3)

Extraction

Extraction logique

Extraction physique

Traite la quantité des

données qu’on va

extraire

Traite l’aspect technique

de l’opération de

l’extraction

30

15

Extraction (3/3)

(cid:1) Extraction logique

(cid:2) L’extraction totale

Extraire toutes les données dans un seul coup

(cid:2) L’extraction incrémentale(partielle)

A chaque fois, extraire une partie des données

(cid:1) Extraction physique

(cid:2) L’extraction directe (Charger les données

directement au DW)

(cid:2) L’extraction indirecte(passer par staging area)

31

La transformation

(cid:1) Transformation

• Rendre les données cohérentes avec la structure

du DW: Transformer, nettoyer, trier, unifier les

données

(cid:1) Exemple: unifier le format des dates

(MM/JJ/AA (cid:1)JJ/MM/AA)

• Etape très importante, garantit la cohérence et la

fiabilité des données

• Pour transformer des données existants dans une

base de données :

SQL, PL/SQL, Table functions.

32

16

Le chargement (1/2)

(cid:1) Chargement

Insérer les données dans l’entrepôt de données

• Pour le chargement des données:

(cid:1) SQL*Loader

(cid:1) External tables

(cid:1) OCI and direct-path APIs

(cid:1) Export/import

(cid:1) Data Pump

33

Le chargement (2/2)

(cid:1) Exemple de chargement avec SQL* loader

Il charge un fichier plat dans une table existante

• Lors de l’utilisation de cette méthode, on ne peut

plus accéder aux données du fichier plat qu’après

le chargement de ces données.

LOAD DATA INFILE sh_sales.dat APPEND INTO

TABLE sales

FIELDS TERMINATED BY "|"

(PROD_ID, CUST_ID, TIME_ID, CHANNEL_ID,

PROMO_ID, QUANTITY_SOLD, AMOUNT_SOLD)

34

17

La structure d’un DW

1

2

3

Les données détaillées

Les données agrégées

Les méta-données

Les données

provenant des

systèmes de

production sont

intégrées à ce niveau.

Elles correspondent à

des éléments

d'analyse

représentatifs des

besoins des

utilisateurs.

Il s'agit « de

données sur les

données ».

35

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Le marché du décisionnel

(cid:1) Démonstration

36

18

Modélisation Entité/Association

(cid:1) Avantages:

(cid:1) Normalisation:

(cid:1) Éliminer les redondances

(cid:1) Préserver la cohérence des données

(cid:1) Optimisation des transactions

(cid:1) Réduction de l’espace de stockage

(cid:1) Inconvénients pour un utilisateur final:

(cid:1) Schéma très/trop complet:

(cid:1) Contient des tables/champs inutiles pour l’analyse

(cid:1) Pas d’interface graphique capable de rendre

utilisable le modèle E/A

(cid:1) Inadapté pour l’analyse

37

Exemple

Transporteur

Mode

d’expédition

Contrat

Advertisement

Type de

contrat

Client

Commande

client

Magasin

Employé

Stock

Région de

ventes

Produit

Groupe de

produits

Famille de

produits

Fonction

Fournisseurs

Division

de ventes

38

19

Modélisation des DW

(cid:1) Nouvelle méthode de conception autour des

concepts métiers

(cid:1) Ne pas normaliser au maximum

(cid:1) Introduction de nouveaux types de table:

(cid:1) Table de faits

(cid:1) Table de dimensions

(cid:1) Introduction de nouveaux modèles:

(cid:1) Modèle en étoile

(cid:1) Modèle en flocon

39

40

Table de faits

(cid:1) Table principale du modèle dimensionnel

(cid:1) Contient les données observables (les faits) sur le sujet

étudié selon divers axes d’analyse (les dimensions)

Table de faits des ventes

Clés étrangères

vers les

dimensions

Faits

Clé date (CE)

Clé produit (CE)

Clé magasin (CE)

Quantité vendue

Coût

Montant des ventes

20

Table de faits (suite)

(cid:1) Fait:

(cid:1) Ce que l’on souhaite mesurer

(cid:1) Quantités vendues, montant des ventes…

(cid:1) Contient les clés étrangères des axes d’analyse

(dimension)

(cid:1) Date, produit, magasin

(cid:1) Trois types de faits:

(cid:1) Additif

(cid:1) Semi additif

(cid:1) Non additif

41

Typologie des faits

(cid:1) Additif: additionnable suivant toutes les dimensions

(cid:1) Quantités vendues, chiffre d’affaire

(cid:1) Peut être le résultat d’un calcul:

(cid:1) Bénéfice = montant vente - coût

(cid:1) Semi additif: additionnable suivant certaines

dimensions

(cid:1) Solde d’un compte bancaire:

(cid:1) Pas de sens d’additionner sur les dates car cela

représente des instantanés d’un niveau

(cid:1) Σ sur les comptes: on connaît ce que nous possédons

en banque

(cid:1) Non additif: fait non additionnable quelque soit la

dimension

(cid:1) Prix unitaire: l’addition sur n’importe quelle dimension donne

un nombre dépourvu de sens

42

21

Granularité de la table de faits

(cid:1) Répondre à la question :

(cid:1) Que représente un enregistrement de la table de

faits?

(cid:1) La granularité définit le niveau de détails de la

table de faits:

(cid:1) Exemple: une ligne de commande par produit, par

client et par jour

-

Précision des analyses

Taille de l’entrepôt

+ Finesse

43

Table de dimension

(cid:1) Axe d’analyse selon lequel vont être étudiées les données

observables (faits)

(cid:1) Contient le détail sur les faits

Clé de substitution

Attributs de la

dimension

Dimension produit

Clé produit (CP)

Code produit

Description du produit

Famille du produits

Marque

Emballage

Poids

44

22

Table de dimension (suite)

(cid:1) Dimension = axe d’analyse

(cid:1) Client, produit, période de temps…

(cid:1) Contient souvent un grand nombre de colonnes

(cid:1) L’ensemble des informations descriptives des faits

(cid:1) Contient en général beaucoup moins

d’enregistrements qu’une table de faits

45

La dimension Temps

(cid:1) Commune à l’ensemble du

Dimension Temps

DW

(cid:1) Reliée à toute table de

faits

Clé temps (CP)

Jour

Mois

Trimestre

Semestre

Année

Num_jour_dans_année

Num_semaine_ds_année

46

23

Granularité d’une dimension

(cid:1) Une dimension contient des membres organisés

en hiérarchie :

(cid:1) Chacun des membres appartient à un niveau

hiérarchique (ou niveau de granularité) particulier

(cid:1) Granularité d’une dimension : nombre de niveaux

hiérarchiques

(cid:1) Temps :

(cid:1) année – semestre – trimestre - mois

Évolution des dimensions

(cid:1) Dimensions à évolution lente

(cid:1) Dimensions à évolution rapide

47

48

24

Évolution des dimensions

(cid:1) Dimensions à évolution lente

(cid:1) Un client peut se marier, avoir des enfants…

(cid:1) Un produit peut changer de noms ou de

formulation:

(cid:1) « Raider » en « Twix »

(cid:1) « yaourt à la vanille » en « yaourt saveur vanille »

(cid:1) Gestion de la situation, 3 solutions:

(cid:1) Écrasement de l’ancienne valeur

(cid:1) Versionnement

(cid:1) Valeur d’origine / valeur courante

(cid:1) Dimensions à évolution rapide

49

Dimensions à évolution lente (1/3)

(cid:1) Écrasement de l’ancienne valeur :

(cid:1) Correction des informations erronées

(cid:1) Avantage:

(cid:1) Facile à mettre en œuvre

(cid:1) Inconvénients:

(cid:1) Perte de la trace des valeurs antérieures des attributs

(cid:1) Perte de la cause de l’évolution dans les faits mesurés

Clé produit Description du produit Groupe de produits

12345

Intelli-Kids

Logiciel

Jeux éducatifs

50

25

Dimensions à évolution lente (2/3)

(cid:1) Ajout d’un nouvel enregistrement:

(cid:1) Utilisation d’une clé de substitution

(cid:1) Avantages:

(cid:1) Permet de suivre l’évolution des attributs

(cid:1) Permet de segmenter la table de faits en fonction de

l’historique

(cid:1) Inconvénient:

(cid:1) Accroit le volume de la table

Clé produit Description du produit Groupe de produits

12345

25963

Intelli-Kids

Intelli-Kids

Logiciel

Jeux éducatifs

51

Dimensions à évolution lente (3/3)

(cid:1) Ajout d’un nouvel attribut:

(cid:1) Valeur origine/valeur courante

(cid:1) Avantages:

(cid:1) Avoir deux visions simultanées des données :

(cid:1) Voir les données récentes avec l’ancien attribut

(cid:1) Voir les données anciennes avec le nouvel attribut

(cid:1) Voir les données comme si le changement n’avait pas eu lieu

(cid:1) Inconvénient:

(cid:1) Inadapté pour suivre plusieurs valeurs d’attributs intermédiaires

Clé produit Description du

12345

produit

Intelli-Kids

Groupe de

produits

Logiciel

Nouveau groupe

de produits

Jeux éducatifs

52

26

Évolution des dimensions

(cid:1) Dimensions à évolution lente

(cid:1) Dimensions à évolution rapide

(cid:1) Subit des changements très fréquents (tous les

mois) dont on veut préserver l’historique

(cid:1) Solution: isoler les attributs qui changent

rapidement

Dimensions à évolution rapide

(cid:1) Changements fréquents des attributs dont on veut garder

l’historique

(cid:1) Clients pour une compagnie d’assurance

(cid:1) Isoler les attributs qui évoluent vite

53

54

27

Dimensions à évolution rapide (suite)

Faits

Clé_client

Clé_démog

Dim client

Clé_client

Nom

Prénom

Adresse

Date_nais

Revenus

Niveau_étude

Nb_enfants

Statut_marital

Profil_financier

Profil_achat

Faits

Clé_client

Dim client

Clé_client

Nom

Prénom

Adresse

Date_naissance

Dim_démographique

Clé_démog

Revenus

Niveau_étude

Nb_enfants

Statut_marital

Profil_financier

Profil_achat

Les types de modèles

Advertisement

Modèle en étoile

Modèle en flocon

55

56

28

Modèle en étoile

(cid:1) Une table de fait centrale et des dimensions

(cid:1) Les dimensions n’ont pas de liaison entre elles

(cid:1) Avantages:

(cid:1) Facilité de navigation

(cid:1) Nombre de jointures limité

(cid:1) Inconvénients:

(cid:1) Redondance dans les dimensions

(cid:1) Toutes les dimensions ne concernent pas les

mesures

57

Modèle en étoile

Dimension Temps

ID temps

année

mois

jour

Table de faits Achat

ID client

ID temps

ID magasin

ID région

ID produit

Quantité achetée

Montant des achats

Dimension produit

ID produit

nom

code

prix

poids

groupe

famille

Dimension Client

ID client

nom

prénom

adresse

58

Dimension Magasin

ID magasin

description

ville

surface

Dimension Region

ID région

pays

description

district vente

….

29

Modèle en flocon

(cid:1) Une table de fait et des dimensions décomposées en sous

hiérarchies

(cid:1) On a un seul niveau hiérarchique dans une table de

dimension

(cid:1) La table de dimension de niveau hiérarchique le plus bas

est reliée à la table de fait. On dit qu’elle a la granularité la

plus fine

(cid:1) Avantages:

(cid:1) Normalisation des dimensions

(cid:1) Économie d’espace disque

(cid:1) Inconvénients:

(cid:1) Modèle plus complexe (jointure)

(cid:1) Requêtes moins performantes

59

Modèle en flocon

Dimension Temps

ID temps

annee

mois

jour

Dimension produit

ID produit

ID groupe

nom

code

prix

poids

Table de faits Achat

ID client

ID temps

ID magasin

ID région

ID produit

Quantité achetée

Montant des achats

Dimension groupe

ID groupe

ID famille

nom

Dimension Famille

ID famille

nom

Dimension Magasin

ID magasin

description

ville

surface

Dimension Region

ID région

ID division vente

pays

description

….

Dimension

Division vente

ID division vente

description

….

Dimension Client

ID client

nom

prénom

adresse

60

30

Méthodologie: 9 étapes de Kimball

1. Choisir le sujet

2. Choisir la granularité des faits

Identifier et adapter les dimensions

3.

4. Choisir les faits

5. Stocker les pré-calculs

6. Établir les tables de dimensions

7. Choisir la durée de la base

8. Suivre les dimensions lentement évolutives

9. Décider des requêtes prioritaires, des modes de requêtes

61

Recap Modélisation d’un DW (1/3)

(cid:1) Faits

Un sujet d’analyse. Il est formé de mesures

correspondant aux informations de l’activité

analysée.

(cid:1) Dimensions

Les critères suivant lesquels on souhait évaluer le

fait.

62

31

Recap Modélisation d’un DW (2/3)

(cid:1) Le modèle en étoile

63

Recap Modélisation d’un DW (3/3)

(cid:1) Le modèle en flocon

64

32

TAF Exercice modélisation (1/2)

(cid:1) Soit une entreprise « ACH Automobile Co » qui

voulait construire un entrepôt de données.

(cid:1) La mesure utilisée est le prix de la voiture

(cid:1) On veut répondre aux requêtes suivantes:

(cid:2) Trouver le total des ventes par semaine ,mois

,…pour chaque vendeur

(cid:2) Trouver le total des ventes par semaine ,mois

,…pour chaque modèle de voiture

(cid:2) Trouver le total des ventes pour tous les vendeurs

pour une ville donnée, région et état

65

TAF Exercice modélisation (2/2)

(cid:1) Les dimensions:

(cid:2) Temps ( jour, semaine, mois, année )

(cid:2) Vendeur ( nom, ville, état, région, téléphone )

(cid:2) Voiture ( numSerie, modèle, couleur, catégorie )

TAF

Etablir le schéma conceptuel de l’éventuel DW

66

33

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Le marché du décisionnel

(cid:1) Démonstration

67

Alimentation/ mise à jour de l’entrepôt

(cid:1) Entrepôt mis à jour régulièrement

(cid:1) Besoin d’un outil permettant d’automatiser les chargements

dans l’entrepôt

Utilisation d’outils ETL (Extract, Transform, Load)

68

34

Définition d’un ETL

(cid:1) Offre un environnement de développement

(cid:1) Offre des outils de gestion des opérations et de

maintenance

(cid:1) Permet de découvrir, analyser et extraire les données

à partir de sources hétérogènes

(cid:1) Permet de nettoyer et standardiser les données

(cid:1) Permet de charger les données dans un entrepôt

Extraction

(cid:1) Extraire des données des systèmes de production

(cid:1) Dialoguer avec différentes sources:

(cid:1) Base de données,

(cid:1) Fichiers,

(cid:1) Bases propriétaires

(cid:1) Utilise divers connecteurs :

(cid:1) ODBC,

(cid:1) SQL natif,

(cid:1) Fichiers plats

69

70

35

Transformation

(cid:1) Rendre cohérentes les données des différentes

sources

(cid:1) Transformer, nettoyer, trier, unifier les données

(cid:1) Exemple: unifier le format des dates

(MM/JJ/AA (cid:1)JJ/MM/AA)

(cid:1) Etape très importante, garantit la cohérence et la

fiabilité des données

Chargement

(cid:1) Insérer ou modifier les données dans l’entrepôt

(cid:1) Utilisation de connecteurs:

(cid:1) ODBC,

(cid:1) SQL natif,

(cid:1) Fichiers plats

71

72

36

Aperçu d’un ETL

73

74

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Accès à l’information

(cid:1) Démonstration

37

OLTP VS OLAP

Produits

oranges

poires

pommes

Achat

PK id_achat

FK id_client

id_produit

Quantité

janvier

avril

février

Temps

Advertisement

Produit

PK id_produit

Libellé

Famille

client

PK

id_client

Nom

adresse

Pays

Espagne

Allemagne

France

Vente de

pommes en

Allemagne

en avril

75

ROLAP

(cid:1) Relational OLAP

(cid:1) Données stockées dans une base de données

relationnelles

(cid:1) Un moteur OLAP permet de simuler le

comportement d’un SGBD multidimensionnel

(cid:1) Plus facile et moins cher à mettre en place

(cid:1) Moins performant lors des phases de calcul

(cid:1) Exemples de moteurs ROLAP:

(cid:1) Mondrian

76

38

MOLAP

(cid:1) Multi dimensional OLAP:

(cid:1) Utiliser un système multidimensionnel « pur » qui

gère les structures multidimensionnelles natives

(les cubes)

(cid:1) Accès direct aux données dans le cube

(cid:1) Plus difficile à mettre en place

(cid:1) Formats souvent propriétaires

(cid:1) Conçu exclusivement pour l’analyse

multidimensionnelle

(cid:1) Exemples de moteurs MOLAP:

(cid:1) Microsoft Analysis Services

(cid:1) Hyperion

HOLAP

(cid:1) Hybride OLAP:

(cid:1) tables de faits et tables de dimensions stockées

dans SGBD relationnel (données de base)

(cid:1) données agrégées stockées dans des cubes

(cid:1) Solution hybride entre MOLAP et ROLAP

(cid:1) Bon compromis au niveau coût et performance

77

78

39

Le cube

(cid:1) Modélisation multidimensionnelle des données

facilitant l’analyse d’une quantité selon différentes

dimensions:

(cid:1) Temps

(cid:1) Localisation géographique

(cid:1) …

(cid:1) Les calculs sont réalisés lors du chargement ou

de la mise à jour du cube

Manipulation des données

multidimensionnelles

(cid:1) Opération agissant sur la structure

(cid:1) Rotation (rotate): présenter une autre face du cube

05

06

07

Œuf

221 263 139

Viande 275 257 116

05

06

07

Idf 101 120 52

Ain 395 400 203

79

80

40

Manipulation des données

multidimensionnelles

(cid:1) Opération agissant sur la structure

(cid:1) Tranchage (slicing): consiste à ne travailler que sur une

tranche du cube. Une des dimensions est alors réduite à une

seule valeur

05

06

07

06

Œuf

Idf 220 265 284

Ain 225 245 240

Viande Idf 163 152 145

Ain 187 174 184

Œuf

Idf 265

Ain 245

Viande Idf 152

Ain 174

81

Manipulation des données

multidimensionnelles

(cid:1) Opération agissant sur la structure

(cid:1) Extraction d’un bloc de données (dicing): ne travailler que

sous un sous-cube

05

06

07

Œuf

Idf 220 265 284

05

06

07

Ain 225 245 240

Œuf

Idf 220 265 284

Viande Idf 163 152 145

Ain 225 245 240

Ain 187 174 184

82

41

Manipulation des données

multidimensionnelles

(cid:1) Opération agissant sur la granularité

(cid:1) Forage vers le haut (roll-up): « dézoomer »

(cid:1) Obtenir un niveau de granularité supérieur

(cid:1) Utilisation de fonctions d’agrégation

(cid:1) Forage vers le bas (drill-down): « zoomer »

(cid:1) Obtenir un niveau de granularité inférieur

(cid:1) Données plus détaillées

83

Drill-up, drill-down

Roll up

05

06

07

Roll up

Alim. 496 520 255

Dimension

Temps

05-07

05

06

07

1S05 2S05 1S06 2S06 1S07

Fruits

623

Fruits

221 263 139

Fruits

100

Viande 648

Viande 275 257 116

Viande 134

121

141

111

120

152

137

139

116

05 06 07

Pomme

20 19 22

… … …

Boeuf

40 43 48

Dimension

Produit

Drill down

Drill down

84

42

MDX (Multidimensional Expressions)

(cid:1) Langage permettant de définir, d'utiliser et de récupérer

des données à partir d'objets multidimensionnels

(cid:1) Permet d’effectuer les opérations décrites précédemment

(cid:1) Equivalent de SQL pour le monde OLAP

(cid:1) Origine: Microsoft

85

MDX, exemple

(cid:1) Fournir les effectifs d’une société pendant les années 2004

et 2005 croisés par le type de paiement

SELECT {([Time].[2004]), ([Time].[2005])} ON COLUMNS,

{[Pay].[Pay Type].Members} ON ROWS

FROM RH

Cube

WHERE ([Measures].[Count])

Dimensions,

axes d’analyse

2004 2005

Heure 3396 4015

Jour

3678 2056

86

43

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Le marché du décisionnel

(cid:1) Démonstration

Le marché du décisionnel

87

88

44

Quelques solutions commerciales

89

Quelques solutions open source

ETL

(cid:1)Octopus

(cid:1)Kettle

(cid:1)CloverETL

(cid:1)Talend

Entrepôt

de données

(cid:1)MySql

(cid:1)Postgresql

(cid:1)Greenplum/Biz

gres

OLAP

Reporting

Data Mining

(cid:1)Mondrian

(cid:1)Palo

(cid:1)Birt

(cid:1)Open Report

(cid:1)Jasper Report

(cid:1)JFreeReport

(cid:1)Weka

(cid:1)R-Project

(cid:1)Orange

(cid:1)Xelopes

Intégré

(cid:1)Pentaho (Kettle, Mondrian, JFreeReport, Weka)

(cid:1)SpagoBI

90

45

Plan

(cid:1) Introduction

(cid:1) Les entrepôts de données

(cid:1) Les datamart

(cid:1) Architecture

(cid:1) Modélisation

(cid:1) Alimentation

(cid:1) Les bases de données multidimensionnelles

(cid:1) Accès à l’information

(cid:1) Démonstration

Exemples

(cid:1) Rapports

(cid:1) Sales by customer

(cid:1) Dashboard

(cid:1) Analyse

91

92

46