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
Publicité
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
Publicité
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
Publicité
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
Publicité
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