Architecture type de Datawarehouse
© A. EL OUARDIGHI Data warehouse 1
Datawarehouse vs Big Data
© A. EL OUARDIGHI Data warehouse 2
COURS:
DATAMINING/DATAWAREHOUSE
Pr. A. EL OUARDIGHI
[email protected]
Partie 1:
Cours Datawarehouse: conception des systèmes décisionnels
Travaux dirigés de conception des systèmes décisionnels: étude de cas
Partie 2:
Cours Datamining
Travaux dirigés et études de cas en Datamining
Evaluation;
DS en Datawarehouse
Examen en Datawarehouse / Datamining
© A. EL OUARDIGHI Datamining/Datawarehouse
Data warehouse 3
DATA WAREHOUSES
ARCHITECTURES, FONCTIONNALITES
CONCEPTION
Pr. A. EL OUARDIGHI
[email protected]
© A. EL OUARDIGHI Data warehouse 4
PLAN
Partie 1: Notions et architectures d’un DW
Partie 2: OLAP et Analyse multidimensionnelle
Partie 3: Modélisation et Conception d’un DW
Partie 4: Travaux dirigés
© A. EL OUARDIGHI Data warehouse 5
Partie 1: Notions et Architecture d’un DW
Motivations
Les concepts de Datawarehouse
Définition et caractéristiques d’un DW
Notion de Datamart
Architecture d’un DW
© A. EL OUARDIGHI Data warehouse 6
Motivations
Contexte
Besoin: prise de décisions stratégiques et tactiques
Pourquoi: besoin de réactivité
Qui: les décideurs (non informaticiens)
Explosion des données
Masse importante de données
Inexploitables par les méthodes d’analyse classiques
Besoin de traitement en temps réel de ces données
© A. EL OUARDIGHI Introduction Datamining
Data warehouse 7
Les données utilisables par les décideurs
Données opérationnelles (de production)
Bases de données (Oracle, SQL Server, MySQL …)
Fichiers plats, XML, ….
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
Volatiles: pas d’historisation systématique
© A. EL OUARDIGHI Data warehouse 8
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: Le Datawarehouse
© A. EL OUARDIGHI Data warehouse 9
Naissance du Datawarehouse
© A. EL OUARDIGHI Data warehouse 10
Datawarehouse : Définition
Définition selon Bill Inmon:
« Collection de données orientées sujets, intégrées, non volatiles et
historisées, organisées pour le support du processus d’aide à la
décision »
Base de données dans laquelle sont déposées après nettoyage et
homogénéisation les informations en provenance des différents
systèmes de production de l’entreprise OLTP
© A. EL OUARDIGHI Data warehouse 11
Caractéristiques des données d'un DW
Orientées sujet
Organisées autour de sujets ou thèmes majeurs de l’entreprise
Données pour l’analyse et la modélisation en vue de l’aide à la
décision, et non pas pour les opérations et transactions journalières
Intégrées
Construit en intégrant des sources de données multiples et
hétérogènes
BD relationnelles, fichiers, enregistrements de transactions
Phase la plus complexe (60 à 90 % de la charge totale d’un projet
DW
© A. EL OUARDIGHI Data warehouse 12
Caractéristiques des données d'un DW
Historisées
Stockage de l'historique des données, pas de mise à jour
Un référentiel temps doit être associé aux données
Non volatiles
Conséquence de l’historisation
Pas de mises à jour des données dans le DW
© A. EL OUARDIGHI Data warehouse 13
Notion de Datamart
Définition:
« C'est un sous-ensemble de données dérivées du DW ciblé sur un sujet
unique».
© A. EL OUARDIGHI Data warehouse 14
Architecture générale
© A. EL OUARDIGHI Data warehouse 15
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:
Requêtes / Rapports
Analyse (OLAP), Tableaux de bords
Datamining
© A. EL OUARDIGHI Data warehouse 16
Partie 2 : OLAP et Analyse multidimensionnelles
Concepts OLAP
Modèle conceptuel
Outils OLAP
© A. EL OUARDIGHI Data warehouse 17
OLAP
« Il s’agit d’une catégorie de logiciels axés sur l’exploration et l’analyse rapide
des données selon une approche multidimensionnelle à plusieurs niveaux
d’agrégation ».
OLAP vise à assister l’usager dans son analyse en lui facilitant l’exploration
de ses données et en lui donnant la possibilité de le faire rapidement.
L’usager n’a pas à maîtriser des langages d’interrogation et des interfaces
complexes
L’usager interroge directement les données, en interagissant avec celles-ci
© A. EL OUARDIGHI Data warehouse 18
Modèle conceptuel
Approche multidimensionnelle
Souvent représentés par une structure à plusieurs dimensions
Une dimension est un attribut ou un ensemble d’attributs:
Temps
Géographie
Produits
Clients
Les cellules contiennent des données agrégées appelées Faits ou Indicateurs:
Nombre d’unités vendues
Chiffre d’Affaire
Coût
Représentations:
Relations,
Cube de données,
hyper cube de données
© A. EL OUARDIGHI Data warehouse 19
Modèle conceptuel
Vue multidimensionnelle:
© A. EL OUARDIGHI Data warehouse 20
Agrégation des données
Plusieurs niveaux d’agrégation
Les données peuvent être groupées à différents niveaux de granularité
Les regroupements sont pré-calculés,
Par exemple, le total des ventes pour le mois dernier calculé à
partir de la somme de toutes les ventes du mois.
Granularité : niveau de détail des données emmagasinées dans un
Datawarehouse.
© A. EL OUARDIGHI Data warehouse 21
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
© A. EL OUARDIGHI Data warehouse 22
Granularité des dimensions
Granularité des dimensions
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
© A. EL OUARDIGHI Data warehouse 23
OLAP et le principe d’agrégation
© A. EL OUARDIGHI Data warehouse 24
Outils OLAP
Exemples d’outils OLAP
Exemples de moteurs R-OLAP : Microsoft Analysis Services, Oracle 10g,
MetaCube d'Informix, Mondrian de Pentaho et DSS Agent de MicroStrategy
Exemple de moteurs MOLAP : Board M.I.T., Essbase, IBM TM1, Jedox Palo,
icCube server, Infor Alea, Microsoft Analysis Services, Oracle OLAP.
Exemple de moteur HOLAP : Oracle OLAP, Microsoft Analysis Services
© A. EL OUARDIGHI Data warehouse 25
Partie 3: Modélisation et Conception d’un DW
Conception d'un DW
Etude préalable
Modélisation
Alimentation
Restitution
© A. EL OUARDIGHI Data warehouse 26
Construction d’un Datawarehouse
Caractéristiques:
Le Datawarehouse est différent des bases de données de production:
Les besoins pour lesquels on veut le construire sont différents
Il contient des informations historisées, organisées selon les métiers de
l’entreprise pour le processus d’aide à décision
Le Datawarehouse n’est pas un produit ou un logiciel mais un environnement,
qui se bâtit et ne s’achète pas.
© A. EL OUARDIGHI Data warehouse 27
Construction d’un Datawarehouse
Phases de construction d’un DW:
Les phases construction d’un Datawarehouse:
L’étude préalable qui va définir les objectifs, la démarche à suivre, le retour
sur investissement,…
L’étude du modèle de données qui représente le DW conceptuellement et
logiquement
L’étude de l’alimentation du Datawarehouse
© A. EL OUARDIGHI Data warehouse 28
Partie 3: Modélisation et Conception d’un DW
La conception d'un DW
Etude préalable
Modélisation
Alimentation
Restitution
© A. EL OUARDIGHI Data warehouse 29
Etude préalable
Etude des besoins:
Définir les objectifs du DW
Déterminer le contenu du DW et son organisation, d’après:
Les résultats attendus par les utilisateurs,
Les requêtes qu’ils formuleront,
Les projets qui ont été définie
Recenser les données nécessaires à un bon fonctionnement du DW:
Recenser les données disponibles dans les bases de production
Identifier les données supplémentaires requises
© A. EL OUARDIGHI Data warehouse 30
Etude préalable
Etude des besoins:
Choisir les dimensions
Typiquement: le temps, le client, le produit, le magasin...
Choisir les mesures de fait
De préférences des quantités numériques additifs
Choisir la granularité des faits
Niveau de détails des dimensions
L’unité de temps doit-elle être le jour, la semaine?
Récapitulatifs journaliers, mensuels
© A. EL OUARDIGHI Data warehouse 31
Partie 3: Modélisation et Conception d’un DW
La conception d'un DW
Etude préalable
Modélisation
Alimentation
Restitution
© A. EL OUARDIGHI Data warehouse 32
Modèles de données
Niveau conceptuel:
Un DW est basé sur une modélisation multidimensionnelle qui représente les
données dans un cube
Un cube permet de voir les données suivant plusieurs dimensions:
Tables de dimensions
La table des faits contient les mesures et les clés des dimensions
© A. EL OUARDIGHI Data warehouse 33
Table de faits
Table principale du modèle dimensionnel
Contient les mesures (les faits) et les clés étrangères des divers axes d’analyse
(les dimensions)
Trois type de faits: Additif, Semi additif, Non additif
Table de faits des ventes
Clé date (CE)
Clés étrangères Clé produit (CE)
vers les dimensions
Clé magasin (CE)
Quantité vendue
Faits Coût
Montant des ventes
© A. EL OUARDIGHI Data warehouse 34
Table de dimension
Dimension = axe d’analyse
Axe d’analyse selon lequel vont être étudiées les données observables (faits)
Contient souvent un grand nombre de colonnes
Dimension produit
Clé de substitution Clé produit (CP)
Code produit
Description du produit
Famille du produits
Attributs de la
Marque
dimension
Emballage
Poids
© A. EL OUARDIGHI Data warehouse 35
Les schémas de référence
Niveau Logique:
Plusieurs schémas types sont proposés pour représenter un DW:
Schéma en étoile;
Schéma en flocon;
Schéma en constellation.
© A. EL OUARDIGHI Data warehouse 36
Schéma en étoile
Une table de faits : identifiants des tables de dimension ; une ou plusieurs
mesures .
Plusieurs tables de dimension : descripteurs des dimensions.
© A. EL OUARDIGHI Data warehouse 37
Schéma en flocons
Raffinement du schéma étoile avec des tables normalisées par dimensions.
© A. EL OUARDIGHI Data warehouse 38
Modèle en constellation
Consiste à fusionner plusieurs modèles en étoile qui utilisent des dimensions
communes
Un modèle en constellation comprend donc plusieurs tables de faits et des
tables de dimensions communes ou non à ces tables de faits.
© A. EL OUARDIGHI Data warehouse 39
Partie 3: Modélisation et Conception d’un DW
Conception d'un DW
Etude préalable
Modélisation
Alimentation
Restitution
© A. EL OUARDIGHI Data warehouse 40
Alimentation
L’alimentation est la procédure qui permet de transférer des données du
système opérationnel vers le DW
La conception de cette opération est une tâche complexe
Elle doit être faite en collaboration avec l’administrateur des bases de
productions
Il est nécessaire de déterminer:
Quelles données seront chargées
Les transformations et les vérifications nécessaires
La périodicité et le moment de transferts des données
© A. EL OUARDIGHI Data warehouse 41
Alimentation du DW
Alimentation d’un DW (ETL)
Extraction (Extract)
Transformation (Transform)
Filtrer
Homogénéiser
Nettoyer
Etc …
Chargement (Loading)
© A. EL OUARDIGHI Data warehouse 42
Définition d’un ETL
Alimentation d’un DW (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
© A. EL OUARDIGHI Data warehouse 43
Extraction
Extraction:
Depuis différentes sources
Base de données,
Fichiers,
Bases propriétaires
Utilise divers connecteurs :
ODBC,
SQL natif,
Fichiers plats
Périodique et Répétée
Difficulté:
Ne pas perturber les applications OLTP
© A. EL OUARDIGHI Data warehouse 44
Transformation
C’est une suite d’opérations qui a pour but de rendre les données
cibles homogènes et puissent être traitées de façon cohérente.
Unification des modèles
Convertir / uniformiser les noms des attributs
Uniformiser les valeurs d ’attributs
Nettoyer ( Valeurs manquantes, aberrantes…)
© A. EL OUARDIGHI Data warehouse 45
Chargement
C’est l’opération qui consiste à charger les données nettoyées et préparées
dans le DW.
Insérer ou modifier les données dans l’entrepôt
Utilisation de connecteurs:
ODBC,
SQL natif,
Fichiers plats
C’est une opération qui peut être longue
Mettre en place des stratégies pour assurer de bonnes conditions à sa
réalisation
Définir la politique de rafraîchissement.
© A. EL OUARDIGHI Data warehouse 46
Aperçu d’un ETL
© A. EL OUARDIGHI Data warehouse 47
Partie 3: Modélisation et Conception d’un DW
Conception d'un DW
Etude préalable
Modélisation
Alimentation
Restitution
© A. EL OUARDIGHI Data warehouse 48
Restitution
Requêteurs : Donne une réponse à une question plus ou moins
complexe (type SQL)
EIS (Executive Information Systems): Outils de visualisation
et de navigation dans les données
Applications spécialisées : applications développées
spécialement pour les besoins de l’entreprise
Tableaux de bord
Data Mining : Outils évolués de prédiction, simulation, ...
© A. EL OUARDIGHI Data warehouse 49
Restitution
© A. EL OUARDIGHI Data warehouse 50