Vous êtes sur la page 1sur 75

Plan

! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Le marché du décisionnel
! Démonstration
2
Le contexte
! Besoin: prise de décisions stratégiques et tactiques
! Pourquoi: besoin de réactivité
! Qui: les décideurs (non informaticiens)
! Comment: répondre aux demandes d’analyse des données, dégager
des informations qualitatives nouvelles
Pourquoi et
Qui sont mes
comment le
meilleurs
chiffre d’affaire
clients?
a baissé?

A combien
Quels français
s’élèvent mes
consomment
ventes
beaucoup de
journalières?
poisson?
3
Les données utilisables par les décideurs
! Données opérationnelles (de production)
! Bases de données (Oracle, SQL Server)
! Fichiers, …
! Paye, gestion des RH, gestion des commandes…

! Caractéristiques de ces données:


! Distribuées: systèmes éparpillés
! Hétérogènes: systèmes et structures de données différents
! Détaillées: organisation des données selon les processus
fonctionnels, données surabondantes pour l’analyse
! Peu/pas adaptées à l’analyse : les requêtes lourdes peuvent
bloquer le système transactionnel
! Volatiles: pas d’historisation systématique
4
Problématique
! Comment répondre aux demandes des décideurs?
! En donnant un accès rapide et simple à l’information
stratégique
! 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 Rassembler Analyser Établir des Décider


problème les données les données solutions

Temps de prise d’une décision

6
Le processus de prise de décision

Prise de
décision

Bases de Data Base multi - Prédiction /


production warehouse dimensionnelle simulation

7
Domaines d’utilisation des DW
! Banque
! Risques d’un prêt, prime plus précise
! Santé
! Épidémiologie
! Risque alimentaire
! Commerce
! Ciblage de clientèle
! Déterminer des promotions
! Logistique
! Adéquation demande/production
! Assurance
! Risque lié à un contrat d’assurance (voiture)
! …
8
Quelques métiers du décisionnel
! Strategic Performance Management
! Déterminer et contrôler les indicateurs clé de la performance de
l’entreprise
! Finance Intelligence
! Planifier, analyser et diffuser l’information financière. Mesurer et
gérer les risques
! Human Capital Management (gestion de la relation avec les employés)
! Aligner les stratégies RH, les processus et les technologies.
! Customer Relationship Management (gestion de la relation client)
! Améliorer la connaissance client, identifier et prévoir la
rentabilité client, accroitre l’efficacité du marketing client
! Supplier Relationship Management (gestion de la relation fournisseur)
! Classifier et évaluer l’ensemble des fournisseurs. Planifier et
9
piloter la stratégie Achat.
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Le marché du décisionnel
! Démonstration
10
Définition d’un DW
! 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 »

! Principe: mettre en place une base de données


utilisée à des fins d’analyse

11
Les 4 caractéristiques des data warehouse

#Données orientées sujet:


"
! Regroupe les informations des différents métiers
! Ne tiens pas compte de l’organisation fonctionnelle
des données

Ass. Vie Ass. Auto Ass. Santé

Client
Police

12
Les 4 caractéristiques des data warehouse

$#Données intégrées:
! Normalisation des données
! Définition d’un référentiel unique
h,f

1,0 h,f

homme, femme

GBP
EUR
CHF

USD 13
Les 4 caractéristiques des data warehouse

%#Données non volatiles


! Traçabilité des informations et des décisions prises
! Copie des données de production

Bases de production Entrepôts de données

Ajout
Suppression

Accès
Modification Chargement

14
Les 4 caractéristiques des data warehouse

&#Données datées
! Les données persistent dans le temps
! Mise en place d’un référentiel temps
Image de la base en Mai 2005 Image de la base en Juillet 2006
Répertoire Répertoire
Base de Nom Ville Nom Ville
production
Dupont Paris Dupont Marseille
Durand Lyon Durand Lyon

Calendrier Répertoire
Entrepôt Code Année Mois
Code Année Mois
de
1 2005 Mai 1 Dupont Paris
données
2 2006 Juillet 1 Durand Lyon
15
2 Dupont Marseille
SGBD et DW
Service Service Service
OLTP: On-Line commercial Financier livraison
Transactional BD prod BD prod BD prod
Processing
Clientèle

H
I
Data Warehouse S
T
OLAP: On-Line O
Analitical R
Clientèle I
Processing
Q
U
16
E
OLTP VS DW
OLTP DW
Orienté transaction Orienté analyse
Orienté application Orienté sujet
Données courantes Données historisées
Données détaillées Données agrégées
Données évolutives Données statiques
Utilisateurs nombreux, Utilisateurs peu nombreux,
administrateurs/opérationnels manager
Temps d’exécution: court Temps d’exécution: long

17
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Le marché du décisionnel
! Démonstration
18
Datamart
! Sous-ensemble d’un entrepôt de données
! Destiné à répondre aux besoins d’un secteur ou
d’une fonction particulière de l’entreprise
! Point de vue spécifique selon des critères métiers

Datamarts du
service Marketing

Datamart du
DW de l’entreprise service Ressources
Humaines 19
Intérêt des datamart
! Nouvel environnement structuré et formaté en
fonction des besoins d’un métier ou d’un usage
particulier
! Moins de données que DW
! Plus facile à comprendre, à manipuler
! Amélioration des temps de réponse
! Utilisateurs plus ciblés: DM plus facile à définir

20
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Le marché du décisionnel
! Démonstration
21
Architecture générale
Zone de
Zone de préparation Zone de stockage présentation

E
X
C
T H
R A
Transformations: Data Requêtes
A R
Nettoyage warehouse Rapports
C G
T Standardisation Visualisation
E
I … Data Mining
M
O …
E
N
N
Sources de Datamart
T
données

22
Les flux de données
! Flux entrant
! Extraction: multi-source, hétérogène
! Transformation: filtrer, trier, homogénéiser, nettoyer
! Chargement: insertion des données dans l’entrepôt

! Flux sortant:
! Mise à disposition des données pour les utilisateurs
finaux

23
Les différentes zones de l’architecture
! Zone de préparation (Staging area)
! Zone temporaire de stockage des données extraites
! Réalisation des transformations avant l’insertion dans le DW:
! Nettoyage

! Normalisation…

! Données souvent détruites après chargement dans le DW


! Zone de stockage (DW, DM)
! On y transfère les données nettoyées
! Stockage permanent des données
! Zone de présentation
! Donne accès aux données contenues dans le DW
! Peut contenir des outils d’analyse programmés:
! Rapports

! Requêtes…
24
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Le marché du décisionnel
! Démonstration
25
Modélisation Entité/Association
! Avantages:
! Normalisation:
! Éliminer les redondances

! Préserver la cohérence des données

! Optimisation des transactions


! Réduction de l’espace de stockage
! Inconvénients pour un utilisateur final:
! Schéma très/trop complet:
! Contient des tables/champs inutiles pour l’analyse

! Pas d’interface graphique capable de rendre


utilisable le modèle E/A
26
! Inadapté pour l’analyse
Exemple
Mode
Transporteur
d’expédition

Produit
Contrat Commande
client
Type de Groupe de
contrat Client produits
Magasin

Famille de
Employé Région de produits
Stock ventes

Fonction Division
Fournisseurs 27
de ventes
Modélisation des DW
! Nouvelle méthode de conception autour des
concepts métiers
! Ne pas normaliser au maximum
! Introduction de nouveaux types de table:
! Table de faits
! Table de dimensions
! Introduction de nouveaux modèles:
! Modèle en étoile
! Modèle en flocon

28
Table de faits
! Table principale du modèle dimensionnel
! 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 Clé date (CE)
vers les Clé produit (CE)
dimensions Clé magasin (CE)
Quantité vendue
Faits Coût
Montant des ventes
29
Table de faits (suite)
! Fait:
! Ce que l’on souhaite mesurer
! Quantités vendues, montant des ventes…
! Contient les clés étrangères des axes d’analyse
(dimension)
! Date, produit, magasin
! Trois types de faits:
! Additif
! Semi additif
! Non additif
30
Typologie des faits
! Additif: additionnable suivant toutes les dimensions
! Quantités vendues, chiffre d’affaire
! Peut être le résultat d’un calcul:
! Bénéfice = montant vente - coût

! Semi additif: additionnable suivant certaines


dimensions
! Solde d’un compte bancaire:
! Pas de sens d’additionner sur les dates car cela
représente des instantanés d’un niveau
! ! sur les comptes: on connaît ce que nous possédons
en banque
! Non additif: fait non additionnable quelque soit la
dimension
! Prix unitaire: l’addition sur n’importe quelle dimension donne
un nombre dépourvu de sens 31
Granularité de la table de faits
! Répondre à la question :
! Que représente un enregistrement de la table de
faits?
! La granularité définit le niveau de détails de la
table de faits:
! Exemple: une ligne de commande par produit, par
client et par jour

- Précision des analyses


+ Finesse
Taille de l’entrepôt

32
Table de dimension
! Axe d’analyse selon lequel vont être étudiées les données
observables (faits)
! Contient le détail sur les faits

Dimension produit
Clé de substitution Clé produit (CP)
Code produit
Description du produit
Attributs de la Famille du produits
dimension Marque
Emballage
Poids 33
Table de dimension (suite)
! Dimension = axe d’analyse
! Client, produit, période de temps…
! Contient souvent un grand nombre de colonnes
! L’ensemble des informations descriptives des faits
! Contient en général beaucoup moins
d’enregistrements qu’une table de faits

34
La dimension Temps
! Commune à l’ensemble du Dimension Temps
DW Clé temps (CP)
! Reliée à toute table de Jour
faits Mois
Trimestre
Semestre
Année
Num_jour_dans_année
Num_semaine_ds_année

35
Granularité d’une dimension
! Une dimension contient des membres organisés
en hiérarchie :
! Chacun des membres appartient à un niveau
hiérarchique (ou niveau de granularité) particulier
! Granularité d’une dimension : nombre de niveaux
hiérarchiques
! Temps :
! année – semestre – trimestre - mois

36
Évolution des dimensions
! Dimensions à évolution lente
! Dimensions à évolution rapide

37
Évolution des dimensions
! Dimensions à évolution lente
! Un client peut se marier, avoir des enfants…
! Un produit peut changer de noms ou de
formulation:
! « Raider » en « Twix »

! « yaourt à la vanille » en « yaourt saveur vanille »

! Gestion de la situation, 3 solutions:


! Écrasement de l’ancienne valeur

! Versionnement

! Valeur d’origine / valeur courante


38
! Dimensions à évolution rapide
Dimensions à évolution lente (1/3)

! Écrasement de l’ancienne valeur :


! Correction des informations erronées
! Avantage:
! Facile à mettre en œuvre
! Inconvénients:
! Perte de la trace des valeurs antérieures des attributs
! 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
39
Dimensions à évolution lente (2/3)

! Ajout d’un nouvel enregistrement:


! Utilisation d’une clé de substitution
! Avantages:
! Permet de suivre l’évolution des attributs
! Permet de segmenter la table de faits en fonction de
l’historique
! Inconvénient:
! Accroit le volume de la table

Clé produit Description du produit Groupe de produits


12345 Intelli-Kids Logiciel
25963 Intelli-Kids Jeux éducatifs
40
Dimensions à évolution lente (3/3)

! Ajout d’un nouvel attribut:


! Valeur origine/valeur courante
! Avantages:
! Avoir deux visions simultanées des données :
! Voir les données récentes avec l’ancien attribut

! Voir les données anciennes avec le nouvel attribut

! Voir les données comme si le changement n’avait pas eu lieu


! Inconvénient:
! Inadapté pour suivre plusieurs valeurs d’attributs intermédiaires

Clé produit Description du Groupe de Nouveau groupe


produit produits de produits
12345 Intelli-Kids Logiciel Jeux éducatifs 41
Évolution des dimensions
! Dimensions à évolution lente
! Dimensions à évolution rapide
! Subit des changements très fréquents (tous les
mois) dont on veut préserver l’historique
! Solution: isoler les attributs qui changent
rapidement

42
Dimensions à évolution rapide
! Changements fréquents des attributs dont on veut garder
l’historique
! Clients pour une compagnie d’assurance
! Isoler les attributs qui évoluent vite

43
Dimensions à évolution rapide (suite)
Dim client

Faits Clé_client
Dim client
Nom Faits
Clé_client Clé_client
… Prénom Clé_client
Nom
Adresse Clé_démog
Prénom
Date_naissance
Adresse

Date_nais
… Dim_démographique
Revenus Clé_démog
Niveau_étude Revenus
Nb_enfants Niveau_étude
Statut_marital Nb_enfants
Profil_financier Statut_marital
Profil_achat Profil_financier 44

Profil_achat
Les types de modèles

Modèle en étoile Modèle en flocon


45
Modèle en étoile
! Une table de fait centrale et des dimensions
! Les dimensions n’ont pas de liaison entre elles
! Avantages:
! Facilité de navigation
! Nombre de jointures limité
! Inconvénients:
! Redondance dans les dimensions
! Toutes les dimensions ne concernent pas les
mesures
46
Modèle en étoile
Dimension Temps
ID temps
année
mois
jour Dimension produit
… ID produit
Dimension Magasin
ID magasin nom
description code
Table de faits Achat prix
ville
ID client poids
surface
ID temps groupe

ID magasin famille
ID région …
ID produit
Quantité achetée Dimension Client
Dimension Region
Montant des achats
ID région ID client
pays nom
description prénom
district vente adresse
…. … 47
Modèle en flocon
! Une table de fait et des dimensions décomposées en sous
hiérarchies
! On a un seul niveau hiérarchique dans une table de
dimension
! 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
! Avantages:
! Normalisation des dimensions
! Économie d’espace disque
! Inconvénients:
! Modèle plus complexe (jointure)
! Requêtes moins performantes 48
Modèle en flocon Dimension produit
ID produit
Dimension Temps ID groupe
ID temps nom
annee code
mois prix
Dimension Magasin jour poids Dimension groupe
ID magasin … … ID groupe
description ID famille
ville Table de faits Achat nom
surface ID client …
… ID temps
ID magasin
Dimension Region ID région
ID région Dimension Famille
ID produit
ID division vente ID famille
Quantité achetée
pays nom
Montant des achats
description …
….
Dimension Client
Dimension
ID client
Division vente
nom
ID division vente
prénom
description 49
adresse
….

Méthodologie: 9 étapes de Kimball
#Choisir le sujet
"
$#Choisir la granularité des faits
%#Identifier et adapter les dimensions
&#Choisir les faits
'#Stocker les pré-calculs
(#Établir les tables de dimensions
)#Choisir la durée de la base
*#Suivre les dimensions lentement évolutives
+#Décider des requêtes prioritaires, des modes de requêtes

50
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Le marché du décisionnel
! Démonstration
51
Alimentation/ mise à jour de l’entrepôt
! Entrepôt mis à jour régulièrement
! Besoin d’un outil permettant d’automatiser les chargements
dans l’entrepôt

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

52
Définition d’un ETL
! Offre un environnement de développement
! Offre des outils de gestion des opérations et de
maintenance
! Permet de découvrir, analyser et extraire les données
à partir de sources hétérogènes
! Permet de nettoyer et standardiser les données
! Permet de charger les données dans un entrepôt

53
Extraction
! Extraire des données des systèmes de production
! Dialoguer avec différentes sources:
! Base de données,
! Fichiers,
! Bases propriétaires
! Utilise divers connecteurs :
! ODBC,
! SQL natif,
! Fichiers plats

54
Transformation
! Rendre cohérentes les données des différentes
sources
! Transformer, nettoyer, trier, unifier les données
! Exemple: unifier le format des dates
(MM/JJ/AA !JJ/MM/AA)
! Etape très importante, garantit la cohérence et la
fiabilité des données

55
Chargement
! Insérer ou modifier les données dans l’entrepôt
! Utilisation de connecteurs:
! ODBC,
! SQL natif,
! Fichiers plats

56
Aperçu d’un ETL

57
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Accès à l’information
! Démonstration
58
OLTP VS OLAP
Produits Pays
oranges
Produit poires
Espagne
PK id_produit
pommes Allemagne
Libellé
Famille
Achat France
PK id_achat
FK id_client
id_produit Vente de
client janvier avril pommes en
Quantité
PK id_client Allemagne
février
Temps en avril
Nom
adresse
59
ROLAP
! Relational OLAP
! Données stockées dans une base de données
relationnelles
! Un moteur OLAP permet de simuler le
comportement d’un SGBD multidimensionnel
! Plus facile et moins cher à mettre en place
! Moins performant lors des phases de calcul
! Exemples de moteurs ROLAP:
! Mondrian

60
MOLAP
! Multi dimensional OLAP:
! Utiliser un système multidimensionnel « pur » qui
gère les structures multidimensionnelles natives
(les cubes)
! Accès direct aux données dans le cube
! Plus difficile à mettre en place
! Formats souvent propriétaires
! Conçu exclusivement pour l’analyse
multidimensionnelle
! Exemples de moteurs MOLAP:
! Microsoft Analysis Services
61

! Hyperion
HOLAP
! Hybride OLAP:
! tables de faits et tables de dimensions stockées
dans SGBD relationnel (données de base)
! données agrégées stockées dans des cubes

! Solution hybride entre MOLAP et ROLAP


! Bon compromis au niveau coût et performance

62
Le cube
! Modélisation multidimensionnelle des données
facilitant l’analyse d’une quantité selon différentes
dimensions:
! Temps
! Localisation géographique
!…

! Les calculs sont réalisés lors du chargement ou de


la mise à jour du cube

63
Manipulation des données
multidimensionnelles
! Opération agissant sur la structure
! Rotation (rotate): présenter une autre face du cube

05 06 07 05 06 07
Œuf 221 263 139 Idf 101 120 52
Viande 275 257 116 Ain 395 400 203

64
Manipulation des données
multidimensionnelles
! Opération agissant sur la structure
! 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 Œuf Idf 265
Ain 225 245 240 Ain 245
Viande Idf 163 152 145 Viande Idf 152
Ain 187 174 184 Ain 174

65
Manipulation des données
multidimensionnelles
! Opération agissant sur la structure
! 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

66
Manipulation des données
multidimensionnelles
! Opération agissant sur la granularité
! Forage vers le haut (roll-up): « dézoomer »
! Obtenir un niveau de granularité supérieur
! Utilisation de fonctions d’agrégation
! Forage vers le bas (drill-down): « zoomer »
! Obtenir un niveau de granularité inférieur
! Données plus détaillées

67
Drill-up, drill-down
Roll up
05 06 07
Dimension
Roll up Alim. 496 520 255 Temps

05-07 05 06 07 1S05 2S05 1S06 2S06 1S07


Fruits 623 Fruits 221 263 139 Fruits 100 121 111 152 139
Viande 648 Viande 275 257 116 Viande 134 141 120 137 116

05 06 07
Drill down
Pomme 20 19 22
… … … …
Boeuf 40 43 48 Drill down
Dimension
Produit 68
MDX (Multidimensional Expressions)
! Langage permettant de définir, d'utiliser et de récupérer
des données à partir d'objets multidimensionnels
! Permet d’effectuer les opérations décrites précédemment
! Equivalent de SQL pour le monde OLAP
! Origine: Microsoft

69
MDX, exemple
! 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 Dimensions,
axes d’analyse
WHERE ([Measures].[Count])

2004 2005
Heure 3396 4015
Jour 3678 2056 70
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Le marché du décisionnel
! Démonstration
71
Le marché du décisionnel

72
Quelques solutions commerciales

73
Quelques solutions open source
ETL Entrepôt OLAP Reporting Data Mining
de données
!Octopus !MySql !Mondrian !Birt !Weka
!Kettle !Postgresql !Palo !Open Report !R-Project
!CloverETL !Greenplum/Biz !Jasper !Orange
!Talend gres Report !Xelopes
!JFreeReport
Intégré
!Pentaho (Kettle, Mondrian, JFreeReport, Weka)
!SpagoBI

74
Plan
! Introduction
! Les entrepôts de données
! Les datamart
! Architecture
! Modélisation
! Alimentation
! Les bases de données multidimensionnelles
! Accès à l’information
! Démonstration
75
Exemples
! Rapports
! Sales by customer
! Dashboard

! Analyse

76

Vous aimerez peut-être aussi