00 - Notion de Base
00 - Notion de Base
00 - Notion de Base
! 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…
5
Le processus de prise de décision
6
Le processus de prise de décision
Prise de
décision
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 »
11
Les 4 caractéristiques des data warehouse
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
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…
! 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
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)
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 »
! Versionnement
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
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
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
62
Le cube
! Modélisation multidimensionnelle des données
facilitant l’analyse d’une quantité selon différentes
dimensions:
! Temps
! Localisation géographique
!…
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 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
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