Upload
ahmed-aniked
View
13
Download
0
Embed Size (px)
Citation preview
2
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
3
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
Qui sont mes meilleurs clients?
A combien s’élèvent mes
ventes journalières?
Quels français consomment beaucoup de
poisson?
Pourquoi et comment le
chiffre d’affaire a baissé?
4
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
5
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
6
Le processus de prise de décision
Temps de prise d’une décision
Définir le problème
Rassembler les données
Analyser les données
Établir des solutions
Décider
Champs d’application des systèmes décisionnels
7
Le processus de prise de décision
Bases de production
Data warehouse
Base multi -dimensionnelle
Prédiction / simulation
Prise de décision
8
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)
…
9
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 piloter la stratégie Achat.
10
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
11
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
12
Les 4 caractéristiques des data warehouse
1. 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
13
Les 4 caractéristiques des data warehouse
2. Données intégrées: Normalisation des données Définition d’un référentiel unique
h,f
1,0
homme, femme
h,f
GBP
CHF
USD
EUR
14
Les 4 caractéristiques des data warehouse
3. Données non volatiles Traçabilité des informations et des décisions prises Copie des données de production
Ajout
Modification
Suppression
Accès
Chargement
Bases de production Entrepôts de données
15
Les 4 caractéristiques des data warehouse
4. Données datées Les données persistent dans le temps Mise en place d’un référentiel temps
Nom Ville
Dupont Paris
Durand Lyon
Nom Ville
Dupont Marseille
Durand Lyon
Image de la base en Mai 2005 Image de la base en Juillet 2006
Code Année Mois
1 2005 Mai
Base de production
Entrepôt de données
Calendrier
Code Année Mois
1 Dupont Paris
1 Durand Lyon
Répertoire
RépertoireRépertoire
Code Année Mois
1 2005 Mai
2 2006 Juillet
Code Année Mois
1 Dupont Paris
1 Durand Lyon
2 Dupont Marseille
16
SGBD et DW
Servicecommercial
ServiceFinancier
Servicelivraison
BD prod BD prod BD prod
Clientèle
Data Warehouse
Clientèle
HISTORIQUE
OLTP: On-Line Transactional Processing
OLAP: On-Line Analitical Processing
17
OLTP VS DW
OLTP DWOrienté 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, administrateurs/opérationnels
Utilisateurs peu nombreux, manager
Temps d’exécution: court Temps d’exécution: long
18
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
19
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 service Ressources Humaines
DW de l’entreprise
20
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
21
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
22
Architecture générale
Data warehouse
RequêtesRapports
VisualisationData Mining
…
Sources de données
Transformations:Nettoyage
Standardisation…
Zone de préparationZone de
présentation
Datamart
CHARGEMENT
Zone de stockage
EXTRACTION
23
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
24
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…
25
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
26
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 Inadapté pour l’analyse
27
Exemple
Mode d’expéditionTransporteur
Produit
Groupe de produits
Famille de produits
Division de ventes
Région de ventes
Magasin
Commande client
Type de contrat
Contrat
Client
Employé
Fonction
Stock
Fournisseurs
28
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
29
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é date (CE)
Clé produit (CE)
Clé magasin (CE)
Quantité vendue
Coût
Montant des ventes
Clés étrangères vers les dimensions
Faits
30
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
31
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
32
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
Taille de l’entrepôt
- + Finesse
33
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é produit (CP)
Code produit
Description du produit
Famille du produitsMarque
Emballage
Poids
Clé de substitution
Attributs de la dimension
34
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
35
La dimension Temps
Commune à l’ensemble du DW
Reliée à toute table de faits
Dimension Temps
Clé temps (CP)
Jour
Mois
Trimestre
Semestre Année
Num_jour_dans_année
Num_semaine_ds_année
36
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
38
É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
Dimensions à évolution rapide
39
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
40
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
41
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 produit
Groupe de produits
12345 Intelli-Kids Logiciel
Nouveau groupe de produits
Jeux éducatifs
42
É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
43
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
44
Dimensions à évolution rapide (suite)
Dim_démographique
Clé_démog
Revenus
Niveau_étude
Nb_enfants
Statut_marital
Profil_financier
Profil_achat
Dim client
Clé_client
Nom
Prénom
Adresse
Date_nais
…
Revenus
Niveau_étude
Nb_enfants
Statut_marital
Profil_financier
Profil_achat
Dim client
Clé_client
Nom
Prénom
Adresse
Date_naissance
…
Faits
Clé_client
…
Faits
Clé_client
Clé_démog
46
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
47
Modèle en étoileDimension Temps
ID tempsannéemoisjour…
Dimension TempsID temps
annéemoisjour…
Dimension MagasinID magasindescription
villesurface
…
Dimension MagasinID magasindescription
villesurface
…
Dimension RegionID région
paysdescription
district vente….
Dimension RegionID région
paysdescription
district vente….
Dimension produitID produit
nomcodeprix
poidsgroupefamille
…
Dimension produitID produit
nomcodeprix
poidsgroupefamille
…
Dimension ClientID client
nomprénomadresse
…
Dimension ClientID client
nomprénomadresse
…
Table de faits AchatID clientID temps
ID magasinID régionID produit
Quantité achetéeMontant des achats
Table de faits AchatID clientID temps
ID magasinID régionID produit
Quantité achetéeMontant des achats
48
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
49
Modèle en floconDimension Temps
ID tempsanneemoisjour…
Dimension TempsID temps
anneemoisjour…
Dimension MagasinID magasindescription
villesurface
…
Dimension MagasinID magasindescription
villesurface
…
Dimension produitID produitID groupe
nomcodeprix
poids…
Dimension produitID produitID groupe
nomcodeprix
poids…
Dimension ClientID client
nomprénomadresse
…
Dimension ClientID client
nomprénomadresse
…
Dimension groupeID groupeID famille
nom…
Dimension groupeID groupeID famille
nom…
Dimension FamilleID famille
nom…
Dimension FamilleID famille
nom…
Dimension Division vente
ID division ventedescription
….
Dimension Division vente
ID division ventedescription
….
Dimension RegionID région
ID division ventepays
description….
Dimension RegionID région
ID division ventepays
description….
Table de faits AchatID clientID temps
ID magasinID régionID produit
Quantité achetéeMontant des achats
Table de faits AchatID clientID temps
ID magasinID régionID produit
Quantité achetéeMontant des achats
50
Méthodologie: 9 étapes de Kimball
1. Choisir le sujet
2. Choisir la granularité des faits
3. Identifier et adapter les dimensions
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
51
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
52
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)
53
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
54
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
55
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
56
Chargement
Insérer ou modifier les données dans l’entrepôt Utilisation de connecteurs:
ODBC, SQL natif, Fichiers plats
58
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
59
OLTP VS OLAP
Pays
France
Espagne
Allemagnepommes
poiresoranges
janvier
février
avril
Temps
Produits
Vente de pommes en Allemagne
en avril
AchatPK id_achat
FK id_client
id_produit
QuantitéclientPK id_client
Nom
adresse
ProduitPK id_produit
Libellé
Famille
60
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
61
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 Hyperion
62
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
63
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
64
Manipulation des données multidimensionnelles Opération agissant sur la structure
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
65
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
06
Œuf Idf 265
Ain 245
Viande Idf 152
Ain 174
05 06 07
Œuf Idf 220 265 284
Ain 225 245 240
Viande Idf 163 152 145
Ain 187 174 184
66
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
Ain 225 245 240
Viande Idf 163 152 145
Ain 187 174 184
05 06 07
Œuf Idf 220 265 284
Ain 225 245 240
67
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
68
05-07
Fruits 623
Viande 648
1S05 2S05 1S06 2S06 1S07
Fruits 100 121 111 152 139
Viande 134 141 120 137 116
05 06 07
Fruits 221 263 139
Viande 275 257 116
05 06 07
Pomme 20 19 22
… … … …
Boeuf 40 43 48
05 06 07
Alim. 496 520 255
Roll up
Drill down
Dimension Produit
Dimension Temps
Drill down
Roll up
Drill-up, drill-down
69
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
70
MDX, exemple
Fournir les effectifs d’une société pendant les années 2004 et 2005 croisés par le type de paiement
Dimensions, axes d’analyse
SELECT {([Time].[2004]), ([Time].[2005])} ON COLUMNS,
{[Pay].[Pay Type].Members} ON ROWS
FROM RH
WHERE ([Measures].[Count])
Cube
2004 2005
Heure 3396 4015
Jour 3678 2056
71
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
74
Quelques solutions open source
IntégréPentaho (Kettle, Mondrian, JFreeReport, Weka)SpagoBI
ETL Entrepôt de données
OLAP Reporting Data Mining
OctopusKettleCloverETLTalend
MySqlPostgresqlGreenplum/Bizgres
MondrianPalo
BirtOpen ReportJasper ReportJFreeReport
WekaR-ProjectOrangeXelopes
75
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