2 Intro Entrepots 4p
2 Intro Entrepots 4p
2 Intro Entrepots 4p
Introduction aux entrepôts de données - Bernard ESPINASSE - 1 Introduction aux entrepôts de données - Bernard ESPINASSE - 2
Introduction aux entrepôts de données - Bernard ESPINASSE - 3 Introduction aux entrepôts de données - Bernard ESPINASSE - 4
Entreposage des données : avant d’être chargées dans l’entrepôt, les données sélectionnées doivent être :
• extraites des sources (internes : BD opérationnelles, externes : BD et fichiers notamment issus du Web)
• soigneusement épurées afin d’éliminer des erreurs et réconcilier les différentes sémantiques associées aux sources)
Introduction aux entrepôts de données - Bernard ESPINASSE - 5 Introduction aux entrepôts de données - Bernard ESPINASSE - 6
Introduction aux entrepôts de données - Bernard ESPINASSE - 7 Introduction aux entrepôts de données - Bernard ESPINASSE - 8
Niveau extraction :
Extraction de données des BD opérationnelles (SGBD traditionnel en OLTP) et de
l’extérieur :
• approche « push » : détection instantanée des mises à jour sur les BD
opérationnelles pour intégration dans l’ED
• approche « pull » : détection périodique des mises à jour des BD
opérationnelles pour intégration dans l’ED
Niveau fusion :
• Intégration, chargement et stockage des données dans la BD entrepôt
organisée par sujets
• Rafraîchissement au fur et à mesure des mises à jour
Niveau exploitation :
• Rapports, tableaux de bords, visualisation graphiques diverses, …
• Analyse et l’exploration des données entreposées (OLAP)
• ODS Operational Data Store : regroupe les données intégrées récupérées des sources
• Requêtes complexes pour analyse de tendance, extrapolation, découverte de
• CDW Corporate Data Warehouse : regroupe les vues agrégées connaissance, … (Fouille de données)
Introduction aux entrepôts de données - Bernard ESPINASSE - 9 Introduction aux entrepôts de données - Bernard ESPINASSE - 10
Niveau exploitation
Entrepôt
Client décisionnel
Exploration Bd entrepôt Analyse
Introduction aux entrepôts de données - Bernard ESPINASSE - 11 Introduction aux entrepôts de données - Bernard ESPINASSE - 12
Soit les données relatives aux ventes de 1999 d’une entreprise de distribution :
• Les analyses décisionnelles (OLAP) sont directement reliées à une
modélisation de l'information spécifique :
Introduction aux entrepôts de données - Bernard ESPINASSE - 13 Introduction aux entrepôts de données - Bernard ESPINASSE - 14
Un fait : Le sujet analysé, le fait, est analysé suivant différentes perspectives ou axes
• modélise le sujet de l'analyse caractérisant ses mesures de l’activité : on parle de dimensions.
• est formé de mesures correspondant aux informations de l'activité analysée.
• ces mesures sont numériques et généralement valorisées de façon continue, Une dimension :
on peut les additionner, les dénombrer ou bien calculer le minimum, le • modélise un axe d'analyse
maximum ou la moyenne.
• se compose de paramètres correspondant aux informations faisant varier les
Exemple : le fait de « Vente » peut être constitué des mesures d'activités suivantes : mesures de l'activité.
• quantité de produits vendus et Ex: Dans l'exemple précédent, le fait « Vente » peut être analysé suivant différentes
• montant total des ventes perspectives correspondant à trois dimensions : la dimension Temps, la dimension
Geographie et la dimension Categorie :
VENTE F
fait TEMPS GEOGRAPHIE CATEGORIE
quantité
année région
montant typeProduit
mesure d'activité trimestre département
saison ville gamme
mois nomProduit
jour couleur
Introduction aux entrepôts de données - Bernard ESPINASSE - 15 Introduction aux entrepôts de données - Bernard ESPINASSE - 16
• Les faits sont analysées selon les dimensions qui les caractérisent De la table … … au cube
Table Ventes : Cube Ventes :
• Nécessaire de définir pour chaque dimension ses différents niveaux VENTES pièces Régions Années quantités Dimension produit
Dimension géographique
hiérarchiques de détail (d’agrégation), écrous est 1999 50 pièces
clous
vis
est
clous est 1997 100
ouest
• Les hiérarchies de dimensions définissent des niveaux de détail de
écrous
vis ouest 1998 50 régions
70
50
… … … … sud
50
l'analyse sur les dimensions
50
écrous est total 220 années 1999 nord
60
… … … … 50
60
Ex:
40
écrous total total 390 60
40
1998 60
… … … … 70
• Dimension « temps» : total total total 1200 40 40
30
§ H1 : jour -> mois -> année ;
1997
0
(pièce, région, année) quantité 10 20
30
§ H2 : jour -> mois -> trimestre -> année ; 20
Introduction aux entrepôts de données - Bernard ESPINASSE - 17 Introduction aux entrepôts de données - Bernard ESPINASSE - 18
3 stratégies :
Niveau logique « ROLAP » :
1 - Usage d’un SGBD Relationnel (systèmes ROLAP)
§ les SGBDR représentant plus de 80% des SGBD : ils sont principalement 3 grands types de schémas :
envisagés pour le développement d’ED mais doivent être adaptés
§ Ils doivent cependant être adaptés car ils n’ont pas les caractéristiques • schéma en étoile (star schema)
adéquates pour répondre aux besoins des ED.
2 - Usage d’un SGBD Multidimensionnel (systèmes MOLAP) • schéma en flocon (snowflake schema)
§ Un SGBD Multidimensionnel (SGBDM) est un SGBD capable de stocker et
traiter des données multidimensionnelles • schéma en constellation (fact constellation)
§ A ce jour pas encore de cadre technologique commun pour le développement
de tels systèmes : chaque produit est spécifique
3 - Usage d’un SGBD Hybride (systèmes HOLAP)
Tire profit des avantages des technologies ROLAP et MOLAP :
ð le schéma en étoile est souvent
§ un ROLAP pour stocker, gérer les données détaillées ET utilisé pour l'implantation physique
§ un MOLAP pour stocker, gérer les données agrégées
Introduction aux entrepôts de données - Bernard ESPINASSE - 19 Introduction aux entrepôts de données - Bernard ESPINASSE - 20
• table des faits : normalisée, de taille très importante, avec de nombreux champs Ex 2 : Ventes d‘articles dans un supermarché
• tables de dimensions : dimensions de l'analyse, taille peu importante, avec peu BASKET PRODUCT
Associé à Ex 2 :
Evolution du schéma en étoile avec une décomposition des tables de
• un fait : dimensions du modèle en étoile selon leurs hiérarchies (normalisation des tables
• il a été acheté 3 exemplaires à 1 euro (SALE) de dimensions)
• du produit pid3 Ex 3: Vente de médicaments dans des pharmacies
• par le client cid1 VENTE F
SAISON
• à la date did3 TYPE
nomSaison jour
• dans le magasin mid2 (store) ville typeProduit
TEMPS nomProduit
• dans le chariot cid8 (basket) jour quantité
montant CATEGORIE
• correspondant à la promotion prid1 nomMois
nomSaison nomProduit
• un élément de la dimension location :
MOIS typeproduit GAMME
nomMois GEOGRAPHIE nomGame
• store id mid2 numeroMois
trimestre ville
nomCouleur nomGamme
•
TRIMESTRE
city blois trimestre COULEUR
DEPARTEMENT
• region centre année
département nomCouleur
• country France codePostal
région
ANNEE
année
REGION
région
Introduction aux entrepôts de données - Bernard ESPINASSE - 23 Introduction aux entrepôts de données - Bernard ESPINASSE - 24
• fusionne plusieurs modèles en étoile qui utilisent des dimensions communes.
• comprend en conséquence plusieurs faits et des dimensions communes ou
non
Ex : Vente de médicaments dans des pharmacies
TEMPS VENTE CATEGORIE
F
année
trimestre année typeproduit
saison typeproduit gamme
mois région nomProduit
jour quantité couleur
montant
MEDICAMENTS PRESCRIPTION F
GEOGRAPHIE
catégorie
molécule
année
catégorie région
département
4 - Alimentation d’un Entrepôt de données
effetsSecondaires région
posologie nbMédicament
honoraires
ville
§ Processus général d’alimentation d’un ED
§ Processus et outils ETL
• une constellation est constituée de 2 schémas en étoile : § Taches d’un processus ETL
§ l'un correspond aux VENTEs effectuées dans les pharmacies et
§ l'autre analyse les PRESCRIPTIONs des médecins
• les dimensions Temps et Géographie sont partagées par les faits
PRESCRIPTION et VENTE.
Introduction aux entrepôts de données - Bernard ESPINASSE - 25 Introduction aux entrepôts de données - Bernard ESPINASSE - 26
• Le processus d’alimentation d’un ED (ou entreposage des données) Après avoir conçu le modèle des données, comment alimenter l’ED ?
consiste à :
→ problématique de l’ETL (Extracting Transforming and Loading)
§ rassembler de multiples données sources souvent hétérogènes
• Homogénéisation faite selon des règles précises 1. Sélection des données sources
• Ces règles : 2. Extraction des données
§ sont mémorisées sous forme de méta-données (information sur les
3. Nettoyage et Transformation
données) stockées dans le dictionnaire de données
Introduction aux entrepôts de données - Bernard ESPINASSE - 27 Introduction aux entrepôts de données - Bernard ESPINASSE - 28
• Sont des opérations de migration de données pour les systèmes de Business Ils permettent un support et/ou automatisation des tâches suivantes :
Intelligence notamment les entrepôts de données
• Ils gèrent toutes les étapes de collecte et de transfert des données dans les ED :
Tâches Support
§ Extraction de données des applications et des bases de données de
Extraction accès aux différentes sources
gestion et de production (ERP, CRM, SGBDR, fichiers, etc.).
Nettoyage recherche et résolution des
§ Transformation de ces données pour les consolider et les mettre en inconsistances dans les sources
concordance. Transformation entre différents formats, langages, etc.
§ Chargement : distribution des données auprès des applications cibles ou Chargement des données dans l’entrepôt
des systèmes décisionnels (Data Warehouse, Data Marts, applications Réplication des sources dans l’entrepôt
OLAP ou “cubes”…). Analyse Ex : détection de valeurs non valides ou
• Différents outils logiciels sont proposés : inattendues
§ Talend : outils ETL en mode open source le plus connu Transfert de données haut débit pour les très grands entrepôts
Test de qualité Ex : pour correction et complétude
§ Autres solutions : Apatar, Jitterbit et Pentaho.
Analyse des méta données aide à la conception
§ IBM, Informatica ou SAP11 proposent également des solutions ETL
Introduction aux entrepôts de données - Bernard ESPINASSE - 29 Introduction aux entrepôts de données - Bernard ESPINASSE - 30
Quelles données de production faut-il sélectionner pour alimenter l’ED? Un extracteur (wrapper) est associé à chaque source de
→ Toutes les données sources ne sont forcément pas utiles données :
Ex : Doit-on prendre l’adresse complète ou séparer le code postal ? § Il sélectionne et extrait les données
→ Les données sélectionnées seront réorganisées pour devenir des
informations. § Il les formate dans un format cible commun
Introduction aux entrepôts de données - Bernard ESPINASSE - 31 Introduction aux entrepôts de données - Bernard ESPINASSE - 32
Objectifs du nettoyage : § fonctions de normalisation
§ résoudre le problème de consistance des données au sein de chaque § fonctions de conversion
source § usage de dictionnaires de synonymes ou d’abréviations
§ une centaine de type d’inconsistances ont été répertoriées
Définition de table de règles :
§ 5 à 30 % des données des BD commerciales sont erronées valeur source remplacé par Valeur cible
Mr M
Types d’inconsistances : monsieur M
§ présence de données fausses dés leur saisie : Masculin M
M M
§ fautes de frappe Msieur M
§ différents formats dans une même colonne Exemple de conversions :
§ texte masquant de l’information (e.g., “N/A”)
§ valeur nulle
§ incompatibilité entre la valeur et la description de la colonne
§ duplication d’information, …
§ persistance de données obsolètes
§ confrontation de données sémantiquement équivalentes mais syntaxiquement
différentes
nettoyage = jointure + projection
Introduction aux entrepôts de données - Bernard ESPINASSE - 33 Introduction aux entrepôts de données - Bernard ESPINASSE - 34
Objectifs : Objectif :
Suppression des incohérences sémantiques entre les sources pouvant charger les données nettoyées et préparées dans l’ED
survenir lors de l’intégration :
§ des schémas :
§ problème de modélisation : différents modèles de données sont utilisés C’est une opération :
§ problèmes de terminologie : un objet est désigné par 2 noms différents, un
même nom désigne 2 objets différents § qui risque d’être assez longue
§ incompatibilités de contraintes : 2 concepts équivalents ont des
§ plutôt mécanique et la moins complexe.
contraintes incompatibles
§ conflit sémantique : choix de différents niveaux d’abstraction pour un même Il est nécessaire de définir et mettre en place :
concept
§ conflits de structures : choix de différentes propriétés pour un même § des stratégies pour assurer de bonnes conditions à sa réalisation
concept
§ conflits de représentation : 2 représentations différentes choisies pour les § une politique de rafraîchissement.
mêmes propriétés d’un même objet
§ des données :
§ Equivalence de champs
§ Equivalence d’enregistrements : fusion d’enregistrements
Introduction aux entrepôts de données - Bernard ESPINASSE - 35 Introduction aux entrepôts de données - Bernard ESPINASSE - 36
§ Apparue dans les années 90 dans les entreprises
§ Façon la plus naturelle d’exploiter un ED du fait de son organisation
multidimensionnelle - cube
§ Permettent de réaliser des synthèses, des analyses et de la consolidation
dynamique de données multidimensionnelles organisé en cubes
Exemple d’analyse OLAP : un supermarché ANALYSANT l’ensemble de
ses ventes
§ 3 types d’opérations OLAP élémentaires liées à des transformations du cube :
5 – Exploitation d’un entrepôt de données (ED)
§ OLAP, OLAP versus OLTP § Restructuration : permet un changement de points de vue selon
§ Les opérations élémentaires de l’OLAP et langages pour l’OLAP différentes dimensions : opérations liées à la structure, manipulation et
§ Réalisation de rapports divers (Reporting) visualisation du cube : Rotate/pivot, Switch, Split, nest, push, pull
§ Réalisation de tableaux de bords à partir d’un ED (Dashboards) § Granularité : concerne un changement de niveau de détail : opérations
§ Visualisations autour d’un ED (visualizations) liées au niveau de granularité des données : roll-up, drill-down
§ Ensembliste : concerne l’extraction et l’OLTP classique : slice, dice,
selection, projection, jointure (drill-across)
Introduction aux entrepôts de données - Bernard ESPINASSE - 37 Introduction aux entrepôts de données - Bernard ESPINASSE - 38
70
Résumées, régions l’axe/dimension
50
Données Granularité Détail
50
sud
régions
agrégées
50
années
60
1999 nord
50
60
Nature Relationnelle Multidimentionnelle
40
60
40
60
Actualisées, mises à Historisées, 1998
70
Actualisation 40 40
jour recalculées 1997 30
0
Taille fichiers < 100 Mo/Go > 100 Go/To 10 20
30 !
Traitements Unité de travail Transaction simple Requête complexe 20
Introduction aux entrepôts de données - Bernard ESPINASSE - 39 Introduction aux entrepôts de données - Bernard ESPINASSE - 40
§ 2 langages possibles pour faire de l’OLAP : SELECT {Paris, Berlin} ON ROWS
{[Q1], [Q2].CHILDREN} ON COLUMNS
1. SQL étendu (Extensions de SQL-3 / SQL-99 pour OLAP) : FROM CubeSales
WHERE (MEASURES.SalesAmount,
• Nouvelles fonctions SQL d’agrégation: Rank, N_tile, … Time.[2014],
• Nouvelles fonctions de la clause GROUP BY : Product.Product)
Soit la requête MDX suivante : (Q=Quarter)
§ ROLLUP equivalent to “control breaks”
SalesAmount…
4,570
…
values
:
% Introduction au langage MDX pour l’OLAP - Bernard ESPINASSE - 9
Introduction aux entrepôts de données - Bernard ESPINASSE - 41
77.
77
Introduction aux entrepôts de données - Bernard ESPINASSE - 42
!
'
*
%
%
4
:
5
%
=
§ Pour des utilisateurs qui ont besoin d'un accès régulier à des informations d'une § Affichent une quantité limitée d'informations dans un format graphique facile à lire
manière presque statique 4 75
%--
7
§ Fréquemment utilisé par les cadres supérieurs qui ont besoin d'un rapide aperçu
8:
Ex: les hôpitaux doivent envoyer des rapports mensuels à des agences des changements les plus importants
%
nationales
:
en
Ex : un aperçu temps réel d’évolutions
§ Un rapport est défini par une requête (plusieurs requêtes) et une mise en page § Pas vraiment utile pour
77.
une analyse complexe et détaillée
§
61
J. Gamper, Free University of Bolzano, DWDM 2012-13 61 J. Gamper, Free University of Bolzano, DWDM 2012-13 67
Introduction aux entrepôts de données - Bernard ESPINASSE - 43 Introduction aux entrepôts de données - Bernard ESPINASSE - 44
• Facilitent l’analyse et l’interprétation de données
'
*S
1
• convertissent des données complexes en images, graphiques en 2 et 3
dimensions, voire en animations
=
• Sont de plus en plus intégrées dans les ED
1
Introduction aux entrepôts de données - Bernard ESPINASSE - 45 Introduction aux entrepôts de données - Bernard ESPINASSE - 46
Introduction aux entrepôts de données - Bernard ESPINASSE - 47 Introduction aux entrepôts de données - Bernard ESPINASSE - 48
§ Grande masse de données concernant les abonnés et les appels est enregistrée § L’exercice de base de l’assureur est de déterminer le facteur de risque
d’un assuré
§ Plusieurs mois de description détaillée des appels comprenant, pour chaque
appel appelant, appelé, heure et durée sont disponibles chez les opérateurs § Celui d’un producteur pharmaceutique est de détecter l’impact d’un
En respectant les lois de sécurité et liberté, que peut-on faire de telles données ? médicament
Couplées ou non avec des informations comptables, l’exploitation de ces § Plus généralement, le suivi des informations relatives à la liaison
données regroupées en ED par des techniques d’analyse et d’exploration permet : produit-client sur un ED est souvent synonyme de gains importants :
meilleure connaissance des produits, détection des défauts, meilleure
§ D’analyser le trafic, connaissance des clients, détection de rejets, ciblage du marketing, etc
§ De mieux cerner les besoins des clients, § Le couplage aux technologies du Web ouvre aussi des horizons
§ De classer les clients par catégories, nouveaux pour le suivi des produits, des clients, des concurrents : notion
émergente de « Data Webhouse »
§ De comprendre pourquoi certains changent d’opérateurs et mieux
répondre à leurs besoins
Introduction aux entrepôts de données - Bernard ESPINASSE - 49 Introduction aux entrepôts de données - Bernard ESPINASSE - 50
Introduction aux entrepôts de données - Bernard ESPINASSE - 51 Introduction aux entrepôts de données - Bernard ESPINASSE - 52
Exemple de France Télécom :
Le projet :
§ 12 BD sources
§ récupération des données : 1,5 année
§ données régionales et nationales
§ parfois chez des prestataires de services
§ parfois au prix d’un intense lobbying
§ en 2003 : environ 5 années de travail
Solution :
§ entreposage : SQL server
§ DW de 3 bimestres, vidé périodiquement
§ 1,2 million d’individus
§ 1 fait = 1 client
§ 250 colonnes
§ intégration faite à la main périodiquement
Exploitation : progiciel de DM développé spécifiquement