• Aucun résultat trouvé

Entrepôts de données

N/A
N/A
Protected

Academic year: 2022

Partager "Entrepôts de données"

Copied!
139
0
0

Texte intégral

(1)

Entrepˆ ots de donn´ ees

Premi`ere partie

Thierry Hamon

Bureau H202 Institut Galil´ee - Universit´e Paris 13

&

LIMSI-CNRS hamon@limsi.fr

https://perso.limsi.fr/hamon/Teaching/P13/DWH-AIR3-2020- 2021/

AIR3 – DWH

(2)

Sources des transparents

F. Boufares, LIPN, Universit´e Paris Nord P. Marcel, LI, Universit´e de Tours

Bernard Espinasse, Ecole Polytechnique Universitaire de Marseille

Melanie Herschel, Universit´e Paris Sud

(3)

Pr´ esentation du cours

Dans la suite du cours de AIR2 et AIR3 sur les BD Objectifs de l’enseignement :

Connaˆıtre et manipuler des notions li´ees aux Entrepˆots de donn´ees (ED/DWH)

Introduction et d´efinition d’un entrepˆot de donn´ees Mod´elisation et Architecture d’un entrepˆot de donn´ees OLAP et impl´ementation des entrepˆots de donn´ees R´epartition des enseignements

3×3h de cours Partiel

4×3h de TP

Evaluation lors du dernier TP

(4)

Pr´ esentation du cours

Dans la suite du cours de AIR2 et AIR3 sur les BD Objectifs de l’enseignement :

Connaˆıtre et manipuler des notions li´ees aux Entrepˆots de donn´ees (ED/DWH)

Programme des enseignements

Introduction et d´efinition d’un entrepˆot de donn´ees Mod´elisation et Architecture d’un entrepˆot de donn´ees OLAP et impl´ementation des entrepˆots de donn´ees

3×3h de cours Partiel

4×3h de TP

Evaluation lors du dernier TP

(5)

Pr´ esentation du cours

Dans la suite du cours de AIR2 et AIR3 sur les BD Objectifs de l’enseignement :

Connaˆıtre et manipuler des notions li´ees aux Entrepˆots de donn´ees (ED/DWH)

Programme des enseignements

Introduction et d´efinition d’un entrepˆot de donn´ees Mod´elisation et Architecture d’un entrepˆot de donn´ees OLAP et impl´ementation des entrepˆots de donn´ees R´epartition des enseignements

3×3h de cours Partiel

4×3h de TP

Evaluation lors du dernier TP

(6)

Historique

en´erations de SGBD

Volume de données Type de données Indépendance physique Portabilité

Hiérarchies, Réseaux

SGBD 1 1960 − 1970 − 1980

1970 − 1980 − 1990 Relationnels

SGBD 2

SGBD 3 1980 − 1990 − 2000

Avancés

Avancés

SGBD4/5 2004/5 − 2010

2010 − 202X?

Big Data

Puissance

(7)

Historique

Applications BD, ED, FD, ...

Entrepôts de Données Intégration de Données Bases de Données

Applications : Paie, Marketing, Financière (50 tables de quelques milliers de lignes) 50 Mo

Fouille de données

(Analyse du comportement des clients, etc.)

Intégration de plusieurs systèmes d’information nationaux et internationnaux) Entrepôts de données (grosses masses de données)

(milliers de tables de quelques millions de lignes) > 100 Go

Applications : Gestion des risques, Analyse des ventes (100 tables de quelques millions de lignes) 2 Go

Téraoctets par jour, Pétaoctets par an (Applications analytique, prise de décision, analyse prédictive) BigData / Datamasse

Volume de données Type de données

Performance

(8)

Historique

Applications BD, ED, FD, ...

Entrepôts de Données Intégration de Données Bases de Données

Applications : Paie, Marketing, Financière

Entrepôts de données

(OLTP : < 10 secondes) (OLAP < 1 heure)

( MV : agrégation, ...) (Batch : Quotidien ou mensuel < 1h) Grosse volumétrie : travail d’optimisation et suivi des activités du DWh nécéssaire

Par expérience, certains traitements ne se terminent pas Nécessité de modifications techniques et fonctionnelles au bout de quelques jours

Applications : Gestion des risques, Analyse des ventes (Batch : < 1 heure)

Applications : Génome, Astronomie Analyse climatique, Physique quantique, Analyse tendancielle

(Temps réel)

Volume de données Type de données

(9)

Historique

Structure et type de donn´ees

Volume de données Type de données Indépendance physique Portabilité

Relationnelle

& objet

Structure de données TABULAIRE Relations

Hiérarchique

& Réseau

Structure de données en RESEAU

Stockage et calcul distribués

Puissance

Cohérence Performance Structure HIERARCHIQUE

des données

Type de données COMPLEXE

Cloud computing

(10)

Historique

Exemples de SGBD

Volume de données Type de données Indépendance physique Portabilité

SGBD 1

COADSYL, SOCRATE, ...

ORACLE 5/6 INGRES, DB2, ...

SGBD 2

SGBD 3

ORACLE 7/8, INGRES, DB2, Sybase, Verssant Enjin (O2), ObjectStore, Orlent, SQLServer, ACCESS, ...

MySQL, PostGreSQL,

Bases de données Entrepôts de données Intégration de Données

SGBD4/5

ORACLE 9i, 10g, 11g, 12c DB2, ...

XML, ...

MapReduce, Hadoop Teradata, Oracle

Puissance

(11)

Quelle quantit´ e d’information ? sous quelle forme ?

Il y a plus de 15 ans !

en 2000 :

entre 1 et 2 ExaOctets par ann´ee (1 Eo = 220 To) 90% ´electronique

taux de croissance annuel de 50 % en 2003 : 5 Eo en 2002, 92% ´electronique

Lyman&Varian, 2003 (http://groups.ischool.berkeley.edu/archive/

how-much-info-2003/execsum.htm)

Comment acc`eder `a ces donn´ees, tirer partie de ces donn´ees ?

→Les bases de donn´ees ne suffisent plus

(12)

Des bases de donn´ ees aux Entrepˆ ots de donn´ ees

(13)

Introduction

Avant les entrepˆots de donn´ees/Data Warehouses

La majeure partie des applications Bases de Donn´ees reposent aujourd’hui sur trois couches :

La couche la plus externe est celle de qui permet de pr´esenter les donn´ees aux utilisateurs.

Elle est appel´eeGraphical User Interfaces GUI.

La couche application interm´ediaire inclut le programme de l’application

Elle ne stocke pas les donn´ees.

La couche la plus interne g`ere le stockage des donn´ees.

Elle est appel´ee la coucheBase de Donn´ees.

(14)

Introduction

BD1

Graphical User Interfaces GUI GUI

Couche Présentation

BD2

Ressources externes (file system, ftp, www, ...)

Decision support System OLTP Application OLTP Application

Couche Application

Couche Base de Données

Insert, Update, Delete

Read, Select

(15)

Introduction

Les applications interrogent les donn´ees avec, par exemple, le langage SQL (Select)

et les mettent `a jour par l’interm´ediaire des op´erations Insert,UpdateetDelete

qui constituent des transactions.

Celles-ci doivent avoir certaines propri´et´esACID (Atomicit´e, Coh´erence, Isolation et Durabilit´e)

Ce type d’application est appel´e On-Line Transaction Processing OLTP.

(16)

Introduction

Donn´ees volumineuses & Besoins nouveaux Vers les entrepˆots de donn´ees

→Syst`emes d’Information D´ecisionnel

Syst`emes d’Aide `a la D´ecision (DSS) :

Rapports, Etats, Tableaux de Bord, Graphiques, Synth`eses, Groupement, Agr´egat, R´esum´e ...

(Reporting Tools, Management Information System, Executive Information System, Decision Support System DSS)

(17)

Introduction

Vers les entrepˆots de donn´ees Remarques

Contrairement aux applications OLTP, qui consultent et mettent `a jour les donn´ees des BD op´erationnelles, les DSS lisent les donn´ees seulement pour avoir de nouvelles informations `a partir des donn´ees sources B´en´efice de cette approche : seules les BD op´erationnelles ont `a ˆetre cr´e´ees et maintenues

Un ensemble de m´eta-donn´ees est utilis´es pour les 2 syst`emes.

Les DSS ne n´ecessitent que des travaux suppl´ementaires mineurs.

(18)

Introduction

Vers les entrepˆots de donn´ees Remarques

Cependant, il y a plusieurs d´esavantages :

(quand le DSS et les applications OLTP se partagent les mˆemes BD) Un DSS ne peut utiliser que les donn´ees actuellement stock´ees dans les BD

les analyses historiques sont donc souvent impossibles `a cause des op´erations de mises `a jour qui changent les donn´ees historiques L’utilisation des BD en mode multi-utilisateurs

ce qui implique des op´erations de verrouillage des donn´ees (Locking operations) et donc des probl`emes de performance

car les requˆetes analytiques demandent l’acc`es `a de tr`es grands nombre de tuples.

(19)

Introduction

La solution est de s´eparer la BD orient´ee Transaction

de la BD orient´ee Aide `a la D´ecision d’o`u la naissance du concept

Entrepˆot de Donn´ees = Data Warehouse.

Les DWH sont physiquement s´epar´es des SGBD op´erationnels (BD op´erationnelles)

(20)

Introduction

efinition rapide d’un Data Warehouse

Le Data Warehouse est une collection de donn´ees orient´ees sujet, int´egr´ees, non volatiles, historis´ees, organis´ees pour le support d’un processus d’aide `a la d´ecision

Un syst`eme de DWH peut ˆetre formellement d´efini comme un triplet

<BD cible, m´eta-donn´ees, un ensemble d’op´erations>

L’ensemble des op´erations associ´ees peut ˆetre pr´esent´e en 4 cat´egories (ETL, Agr´egation et Groupement)

(21)

Architecture des DWHs

OLAP

BD opérationnelles Sources externes

Méta−données

Entrepot de données Intégrer

Maintenir Extraire

Nettoyer

Transformer Charger (Load)

Rafraichir

Utiliser

(22)

Introduction

Le DWH int`egre des donn´ees `a partir de sources multiples et h´et´erog`enes

afin de r´epondre aux requˆetes du syst`eme d’aide `a la d´ecision.

Ce type d’application est appel´e On-Line Analytical Processing OLAP

OLAP permet la transformation des donn´ees en informations strat´egiques

(23)

Nouveaux concepts/nouvelle perspective

Entrepˆot de donn´ees

r´ecolte, stockage et gestion efficace des gros volumes de donn´ees

OLAP

requˆetes interactives complexes sur ces volumes Data mining (fouille de donn´ees)

extraction automatique de propri´et´es cach´ees donn´ees→ information→ connaissances

(24)

Analyse OLAP

(On-Line Analytical processing)

Techniques OLAP :

apparition en recherche dans les ann´ees 70

mais d´eveloppement dans les ann´ees 90 dans l’industrie R´ealisation de synth`eses, d’analyses et de la consolidation dynamique de donn´ees multidimensionnelles

Mani`ere la plus naturelle d’exploiter un ED ´etant donn´e son organisation multidimensionnelle

(25)

Fouille de donn´ ees

(Data Mining)

Recherche de connaissances cach´ees dans les donn´ees (mod`ele de comportement)

Domaine jeune `a l’intersection de l’Intelligence Artificielle, les Statistiques, les BD

M´ethodes : r´egression lin´eaire, arbres de d´ecision, r´eseaux de neurones, ...

Int´egration croissante dans les entrepˆots

(26)

Visualisation des donn´ ees de l’ED

Objectif: Faciliter l’analyse et l’interpr´etation de donn´ees Synth`ese des donn´ees de l’entrepˆot

→ Conversion des donn´ees complexes de l’entrepˆot en images,

en graphiques 2D et 3D en animations

(27)

Introduction : Comparaison

Pourquoi pas des SGBDs pour les entrepˆots de donn´ees ? les 2 syst`emes sont performants

SGBD : calibr´e pour l’OLTP ; m´ethodes d’acc`es index, contrˆole de concurrence, reprise

Entrepˆot : calibr´e pour l’OLAP ; requˆetes OLAP complexes, vue dimensionnelle, consolidation

Fonctions et donn´ees diff´erentes

Donn´ees manquantes : l’aide `a la d´ecision (AD) a besoin des donn´ees historiques qui ne se trouvent pas dans les BD op´erationnelles

Consolidation : l’AD a besoin de donn´ees consolid´ees (agr´egats) alors qu’elles sont brutes dans les BD op´erationnelles

(28)

Introduction : Comparaison

SGBD h´et´erog`enesvs. Entrepˆots de donn´ees

Traditionnellement, l’int´egration de BD h´et´erog`enes se fait par le biais de

Wrappers/m´ediateurs au dessus des BD h´et´erog`enes Approches orient´ees requˆetes

Quand une requˆete est pos´ee sur un site client, un etadictionnaire est utilis´e pour la traduire en plusieurs requˆetes appropri´ees `a chacune des BD. Le r´esultat est l’int´egration de r´eponses partielles

L’ex´ecution des requˆetes demande donc beaucoup de ressources

Entrepˆots de donn´ees : approche orient´ee mise `a jour les informations sont int´egr´ees et stock´ees pour une

(29)

Introduction : Comparaison

BD op´erationnelle vs. Entrepˆots de donn´ees OLTP (On-Line Transaction Processing)

Ex´ecution en temps r´eel des transactions, pour

l’enregistrement des op´erations quotidiennes : inventaires, commandes, paye, comptabilit´e

Par opposition au traitement en batch OLAP (On-Line Analytical Processing)

Traitement efficace des requˆetes d’analyse pour la prise de ecision qui sont par d´efaut assez complexes (bien qu’a priori, elles peuvent ˆetre r´ealis´ees par les SGBD classiques)

(30)

Introduction : Comparaison

BD op´erationnelle vs. Data Warehouse : OLTP vs. OLAP Donn´ees : courantes, d´etaill´eesvs. historiques, consolid´ees Conception : mod`ele ER + applicationvs. mod`ele en ´etoile + sujet

Vues : courantes, locales vs. ´evolutive, int´egr´ee

Mode d’acc`es : mise `a jourvs. lecture seule mais requˆetes complexes

(31)

Introduction : Comparaison

Syst`emes OLTP Syst`emes OLAP Donn´ees exhaustives Donn´ees r´esum´ees

Donn´ees courantes Donn´ees historiques Donn´ees dynamiques Donn´ees statiques Donn´ees non volumineuses Donn´ees Volumineuses

Orient´es applications Orient´es sujets Utlisateurs nombreux Utilisateurs peu nombreux

Utilisateurs vari´es D´ecideurs Mises `a jour, interrogation Interrogations

R´equˆetes simples Requˆetes complexes

(32)

Architecture du DWH

Architecture Multi-tiers

MVS (TSO, DB2 ...)

DataWareHouse UNIX (Oracle, ...)

Windows (SQL Server, Excel, ...)

Dictionnaire de Méta−données

Oracle 9i (Olap) Oracle Express

Data select (requetes)

Business Objects (rapports, analyses)

SAS (Datamining)

Data Marts

OLAP SERVER

T(ransform) L(oad) E(xtract)

00 11 0000 1111

00 11 0000 1111

00 11 0000 1111

(33)

Conception logique des DWHs

Donn´ees multidimentionnelles

Montant des ventes comme une fonction des param`etres produits, mois, r´egion

Dimensions : Produit, Lieu, Temps

Catégorie

Chemins de consolidation hiérarchiques

Produit

Mois Région

Industrie

Produit

Pays

Ville Magasin

Année

Jour

Semaine Mois

Trimestre Région

(34)

Domaines d’application

Ceux de l’informatique d´ecisionnelle (Business Intelligence) pour

aider atteindre les objectifs strat´egiques d’une entreprise et faciliter son pilotage

avoir une connaissance plus approfondie de l’entreprise anticiper les besoins clients

prendre en compte les nouveaux canaux de distribution (vente en ligne, etc.)

(35)

Domaines d’application

Informatique d´ecisionnelle

Entrepˆot de donn´ees

Outils de veille strat´egique et de recueil d’information (intelligence ´economique)

Aide aux d´ecideurs pour prendre les bonnes d´ecisions sur la base des donn´ees disponibles

Exemples :

Quels sont les 5 produits les plus vendus pour chaque sous-cat´egorie de produits qui repr´esente plus de 20% des ventes dans sa cat´egorie de produits ?

Quelle est la priorit´e d’exp´edition et quel est le revenu brut potentiel des commandes de livres qui ont les 10 plus grandes recettes brutes parmi les commandes qui n’avaient pas encore

´

et´e exp´edi´ees ?

(36)

Applications

Commerce, finance, transport, t´el´ecommunications, sant´e, services, ...

gestion de la relation client

gestion des commandes, des stocks pr´evisions de ventes

d´efinition de profil utilisateur analyse de transactions bancaires d´etection de fraudes

...

(37)

Principales applications autour d’un ED

R´ealisation de rapports divers (Reporting) R´ealisation de tableaux de bords (Dashboards) Fouille de donn´ees (Data Mining)

Visualisations autour d’un ED (visualizations) ...

(38)

Exploitation d’un ED

Rapports (Reporting) :

Besoin d’un acc`es r´egulier `a des informations presque fig´ees Ex: dans les hˆopitaux, rapports mensuels envoy´es aux agences nationales

Rapport :

une ou plusieurs requˆetes

une mise en page (diagrammes, histogrammes) Production manuelle ou automatique des rapports

(39)

Exploitation d’un ED

Tableaux de bords (Dashboards) :

Affichage d’une quantit´e limit´ee d’informations dans un format graphique facile `a lire

Utilisation fr´equente par les cadres sup´erieurs pour avoir (qui ont besoin) un rapide aper¸cu des changements les plus importants

→ un aper¸cu en temps r´eel d’´evolutions

Ex : Paris 13 en chiffres(paris13en-chiffres2014.pdf) Remarque : Pas vraiment utile pour une analyse complexe et d´etaill´ee

(40)

Exemples d’application

Domaine bancaire

Un des premiers utilisateurs des ED

Regroupement des informations relatives `a un client pour une demande de cr´edit

Lors de la commercialisation d’un nouveau produit : Mailing cibl´es rapidement ´elabor´es `a partir de toutes les informations disponibles sur un client

Recherche de fraudes sur les cartes de cr´edit :

emorisation des mouvements et contrˆolesa posteriori, pour etecter les comportements suspects

Echanges d’actions et de conseils de courtages´ eterminer des tendances de march´es grˆace `a :

la m´emorisation de l’historique

(41)

Exemples d’application

Grande distribution

Regroupement d’informations sur les ventes pour l’analyse du comportement

(produits `a succ`es, suivi des modes, habitudes d’achats, pr´ef´erences des clients par secteur g´eographique)

Mise en ´evidence les r`egles de consommation grˆace `a la fouille de donn´ees

Cas d’´ecole : Explo(r|it)ation du panier de la m´enag`ere : connaˆıtre les produits achet´es en mˆeme temps

Impacts :

augmentation des ventes grˆace `a un meilleur marketing am´elioration des taux de rotation de stocks

´

elimination des produits obsol`etes

efinition des rabais, remises, ristournes, promotions meilleure n´egociation des achats

(42)

Exemples d’application

el´ecommunications

Grande masse de donn´ees :

Plusieurs mois de descriptions d´etaill´ees des appels Pour chaque appel : appelant, appel´e, heure et dur´ee Exploitation de ces donn´ees pour

analyser le trafic

mieux cerner les besoins des clients classer les clients par cat´egories

comprendre le comportement des clients (changement d’op´erateurs, besoins)

(43)

Exemples d’application

Assurance et de la pharmacie

Domaines tr`es demandeurs de techniques d´ecisionnelles pour D´eterminer le facteur de risque d’un assur´e

Meilleure connaissance des clients, d´etection de rejets, ciblage du marketing, etc

D´etecter l’impact d’un m´edicament, ses effets ind´esirables, etc.

Couplage avec les technologies du Web : Data Webhouse (encore plus de donn´ees et donc plus d’informations)

(44)

D´ efinitions (Inmon 1996)

Un entrepˆot de donn´ees est une collection de donn´ees orient´ees sujet, int´egr´ees, non volatiles, historis´ees, organis´ees pour le support d’un processus d’aide `a la d´ecision

Orient´e Sujet : Le but des DWH est

d’am´eliorer la prise de d´ecision, de planification,

et le contrˆole des sujets majeurs de l’entreprise comme les relations entre les clients, les produits, les r´egions

contrairement des applications OLTP qui sont organis´ees autour des flux de donn´ees de l’entreprise

(45)

D´ efinitions (Inmon 1996)

Donn´ees Int´egr´ees:

Les donn´ees dans un DWH sont charg´ees de diff´erentes sources contenant des donn´ees sur diff´erents formats.

Les donn´ees doivent ˆetre v´erifi´ees, tri´ees et tranform´ees dans un format unifi´e afin de faciliter et acc´el´erer l’acc`es.

(46)

D´ efinitions (Inmon 1996)

Donn´ees Historis´ees: et donc dat´ees :

avec une conservation de l’historique et de son ´evolution pour permettre les analyses comparatives (par exemple, d’une ann´ee sur l’autre, etc.).

Dans un Data Warehouse, un r´ef´erentiel de temps est n´ecessaire : c’est l’axe temps ou l’axe p´eriode.

(47)

D´ efinitions (Inmon 1996)

Donnn´ees Non-volatiles : stables

en lecture seule non modifiables

Afin de conserver la tra¸cabilit´e des informations et des d´ecisions prises, les informations stock´ees au sein du Data Warehouse ne doivent pas disparaˆıtre...

(48)

Construction et d’exploitation d’un entrepˆ ot de donn´ ees

Processus en 3 phases :

1 Construction de la BD d´ecisionnelle

Mod´elisation conceptuelle des donn´ees multiformes et multi-sources Conception de l’entrepˆot de donn´ees

Alimentation de l’entrepˆot (extraire, nettoyer, transformer, charger) Stockage physique des donn´ees

2 election des donn´ees `a analyser Besoins d’analyse de l’utilisateur Data marts (Magasins de donn´ees) Cubes multidimensionnels

Tableaux ou tables bidimensionnels

3 Analyse des donn´ees

(49)

Pr´ esentation des couches

Graphical User Interfaces GUI GUI

Couche Présentation

BD2 BD1

Target DataBase

Ressources externes (file system, ftp, www, ...)

Decision support System OLTP Application OLTP Application

Couche Application

Couche Base de Données

Insert, Update, Delete Read, Select

Load DataWareHouse

(50)

Architecture du DWH

Architecture Multi-tiers

MVS (TSO, DB2 ...)

DataWareHouse UNIX (Oracle, ...)

Windows (SQL Server, Excel, ...)

Dictionnaire de Méta−données

Oracle 9i (Olap) Oracle Express

Data select (requetes)

Business Objects (rapports, analyses)

SAS (Datamining)

Data Marts

OLAP SERVER

T(ransform) L(oad) E(xtract)

00 11 0000 1111

00 11 0000 1111

00 11 0000 1111

(51)

Op´ erations

Extraction (Extraction) : Ces op´erations permettent de filtrer les donn´ees `a partir de donn´ees sources (BD, fichiers, sites web...) dans des BD temporaires.

Transformation (Transformation) : Ces op´erations permettent de transformer les donn´ees extraites dans un format uniforme.

Les conflits entre les mod`eles, les sch´emas et les donn´ees sont esolus durant cette phase.

Chargement(Load) : Ces op´erations permettent de charger les donn´ees transform´ees dans la BD cible.

La BD cible est souvent implant´ee avec un SGBD relationnel-objet.

Agr´egat et Groupement(Agregating and Grouping) : La BD cible doit permettre de stocker les donn´ees op´erationnelles et les donn´ees issues de calculs.

(52)

Architecture

Introduction

Objectifs :

regrouper les donn´ees sources concevoir le sch´ema de l’entrepˆot remplir l’entrepˆot

maintenir l’entrepˆot

(53)

Architecture fonctionnelle de l’entrepˆ ot

Les donn´ees d’un entrepˆot se structurent suivant un axe synth´etique : ´etablissement d’une hi´erarchie d’agr´egation incluant

les donn´ees d´etaill´ees : les ´ev´enements les plus r´ecents les donn´ees agr´eg´ees : synth`ese des donn´ees d´etaill´ees les donn´ees fortement agr´eg´ees : synth`ese `a un niveau sup´erieur des donn´ees agr´eg´ees

un axe historique

incluant les donn´ees d´etaill´ees historis´ees repr´esentant les

´

ev´enements pass´es

Stockage des m´eta-donn´ees : informations concernant les donn´ees de l’ED (provenances, structures, m´ethodes utilis´ees pour l’agr´egation, ...)

(54)

Architecture du DWH

MVS (TSO, DB2 ...)

DataWareHouse UNIX (Oracle, ...)

Windows (SQL Server, Excel, ...)

Dictionnaire de Méta−données

Applications en

Oracle 9i (Olap) Oracle Express

Data select (requetes)

Business Objects (rapports, analyses)

SAS (Datamining)

Data Marts

OLAP SERVER

Outils Front−End

Controle et chargement des données OLAP

T(ransform) L(oad) E(xtract)

00 11 0000 1111

00 11 0000 1111

00 11 0000 1111

(55)

Entrepˆ ots et magasins de donn´ ees

Data Warehouses et Data marts

Entrepˆots de donn´ees

Collecte l’ensemble de l’information utile aux d´ecideurs `a partir des sources de donn´ees (BD op´erationnelle, BD externes, ...) Centralisation de l’information d´ecisionnelle

Garantie de l’int´egration des donn´ees extraites et de leur erennit´e dans le temps

Magasins de donn´ees Orient´es sujet

Aide efficace aux processus OLAP

Extraction d’une partie des donn´ees utiles : pour une classe d’utilisateurs ou

pour un besoin d’analyse sp´ecifique

(56)

Entrepˆ ots et magasins de donn´ ees

Calcul, stockage, organisation

Entrepˆots de donn´ees

Puissantes machines pour la gestion de tr`es grandes bases de donn´ees de d´etail historis´ees

Lieu de stockage centralis´e d’un extrait des bases de production Organisation des donn´ees suivant un mod`ele facilitant la gestion efficace des donn´ees et leur historisation

Magasins de donn´ees

Petits entrepˆots avec une infrastructure plus l´eg`ere, mise en œuvre rapide

Donn´ees extraites d’un ED ou de BD existantes pour un besoin d’aide `a la d´ecision particulier

Organisation des donn´ees suivant un mod`ele facilitant les

(57)

Entrepˆ ot vs. Data mart

Caract´eristiques Entrepˆot Data Mart

utilisateur toute l’entreprise un d´epartement

BD SQL type serveur BD MD, OLAP

´

echelle du mod`ele de donn´ees entreprise epartement

champs applicatifs multi-sujet quelques sujets

sources de donn´ees multiples quelques unes

stockage plusieurs BD distribu´ees une BD

taille >100 Go 10 `a 20 Go

temps de mise en place 9 `a 18 mois 6 `a 12 mois

coˆut plusieurs Me 100 Ke`a 0,5 Me

mat´eriel Unix Petit serveur

(58)

Vue logique de l’entrepˆ ot

Hi´erarchie de d´epˆots :

Operational Data Store (ODS)

regroupement des donn´ees int´egr´ees r´ecup´eration des sources

Corporate Data Warehouse (CDW) regroupement les vues agr´eg´ees

(59)

BD vers Data marts

(60)

Architecture fonctionnelle d’un ED : 3 niveaux

Extraction de donn´ees des BD (OLTP) et de l’ext´erieur, selon 2 strat´egies :

etection instantan´ee des mises `a jour sur les BD pour int´egration dans l’ED (approchepush)

etection p´eriodique des mises `a jour des BD pour int´egration dans l’ED (approchepull)

Fusiondes donn´ees dans l’ED

Int´egration, chargement et stockage des donn´ees dans l’entrepˆot, organis´ees par sujet

Rafraˆıchissement au fur et `a mesure des mises `a jour Exploitationdes donn´ees

Rapports, tableaux de bords, visualisation, ...

Analyse et exploration des donn´ees entrepos´ees (OLAP)

(61)

Niveau extraction

Moniteur et Adaptateur de sources Moniteur (source monitor) :

ole :

etection des mises `a jour effectu´ees sur la source d’information identification les donn´ees `a envoyer `a l’ED pour sa mise `a jour Impl´ementation :

Utilisation de triggers si les SGBD en disposent

Sinon, interrogation p´eriodique de chaque base locale ou son journal afin de r´ecup´erer les mises `a jour effectu´ees durant la derni`ere p´eriode

Adaptateur de source (source wrapper) : ole :

traduction des requˆetes et les donn´ees depuis le mod`ele d’une source vers le mod`ele de l’ED et vice-versa

(62)

Niveau fusion

ediateur ediateur (mediator) :

ole :

donner une vision int´egr´ee des diff´erentes sources d’information extraire des parties de ces vues int´egr´ees (`a l’aide de requˆetes) :

Obligation/besoin de nettoyer, transformer, r´eorganiser et filtrer les donn´ees

Int´egration et fusion des donn´ees issues de sources multiples Impl´ementation :

utilisation du SGBD de l’entrepˆot

fusion grˆace `a des unions ou des jointures de sources multiples, des

(63)

Niveau exploitation

Moteur OLAP et outils de fouille

Moteur OLAP

Traitement des donn´ees de l’ED ou des Magasins de donn´ees : Ex´ecution des requˆetes interactives complexes

Analyse interactive des donn´ees suivant des points de vue ou des niveaux de d´etail particuliers

Visualisation des r´esultats de ces analyses Op´erations OLTP classiques

Outils de fouille de donn´ees (Data Mining) :

Traitement des donn´ees de l’ED ou des Magasins de donn´ees : Extraction automatique de propri´et´es cach´ees

Extraction automatique de connaissances valides, nouvelles, compr´ehensibles, pertinentes, implicites, ...

(64)

Dictionnaire et m´ eta-donn´ ees

Dictionnaire contenant des informations (m´eta-donn´ees) sur : toutes les donn´ees de l’ED

chaque ´etape de la construction de l’ED

le passage d’un niveau de donn´ees `a un autre (exploitation de l’ED)

Rˆole : d´efinition, fabrication, stockage, acc`es et pr´esentation des donn´ees

(65)

Donn´ ees sources

Les donn´ees des entreprises sont g´en´eralement : Surabondantes

Eparpill´ees

Peu structur´ees pour l’analyse Modifi´ees quotidiennement Probl`eme : Prise de d´ecision difficile

Solution : Utilisation d’outils et de techniques visant `a pr´eparer les donn´ees pour l’analyse Data warehousing

Il s’agit d’une technique visant `a extraire des donn´ees de diff´erentes sources afin de les int´egrer selon des formats plus adapt´es `a l’analyse et la prise de d´ecision

→Probl´ematique d’int´egration et d´efinition dewrappers

(66)

Donn´ ees sources h´ et´ erog` enes

N´ecessit´e d’int´eger des donn´ees h´et´erog`enes, modifi´ees quotidiennement

BD

relationnelles objets distribu´ees fichiers textes

documents HTML, XML bases de connaissances ...

Mais aussi des repr´esentations de donn´ees et de noms de

(67)

Probl` eme des sources h´ et´ erog` enes

Exemple

Chaˆıne de concessionnaires automobiles Concession 1

vehicules(serie, modele, couleur, autoradio, ...)

v e h i c u l e s ( ’ 1234 ’ , ’ C l i o 5p , ’ r o u g e ’ , ’ABS ’ , . . . )

Concession 2

automobiles(num serie, modele, couleur) options(num serie, option)

a u t o m o b i l e s ( 1 2 3 4 , ’ C l i o ’ , ’R ’ ) a u t o m o b i l e s ( 2 3 4 5 , ’ C l i o ’ , ’R ’ ) o p t i o n s ( 1 2 3 4 , ’ABS ’ )

(68)

Sources h´ et´ erog` enes

Pour un mˆeme concept : sch´emas diff´erents noms d’attribut diff´erents types de donn´ees diff´erents valeurs diff´erentes

s´emantiques diff´erentes

(69)

H´ et´ erog´ en´ eit´ e des donn´ ees et des applications

Illustration

Source d’information Application gestion commerciale progiciel sybase

gestion marketing progiciel SQL server gestion financi`ere, paye DB2/IBM

suivi de production Oracle contrˆole qualit´e Oracle gestion du temps Oracle gestion des stocks Oracle

fichier mailings Fichier ASCII r´ef´erences nationales Document excel source (Goglin, 1998)

(70)

Processus d’alimentation d’un ED

Entreposage des donn´ees

Rˆole de l’alimentation de l’entrepˆot

rassembler de multiples donn´ees sources souvent h´et´erog`enes

homog´en´eiser les donn´ees sources

Homog´en´eisation r´ealis´ee selon des r`egles pr´ecises Les r`egles d’homog´en´eisation sont :

m´emoris´ees sous forme de m´eta-donn´ees stock´ees dans le dictionnaire de donn´ees

utiliser pour assurer des tˆaches d’administration et de gestion des donn´ees entrepos´ees

(71)

Processus d’alimentation d’un ED

Apr`es avoir con¸cu le mod`ele des donn´ees, comment alimenter l’entrepˆot ?

Faut-il ramener toutes les donn´ees sous le mˆeme format ? Si oui, quel format choisir et pourquoi ?

Sinon, comment faire pour interroger toutes ces diff´erentes structures ?

Quel(s) langage(s) d’interrogation va-t-on utiliser ? Quelle architecture utiliser ?

→probl´ematique de l’ETL (Extracting, Transforming and Loading)

(72)

Processus d’alimentation d’un ED

4 ´etapes :

1 S´election des donn´ees sources

2 Extraction des donn´ees

3 Nettoyage et Transformation

4 Chargement

Etapes 1 et 2 : Jusqu’`a 80 % du temps de d´eveloppement d’un entrepˆot

→outil : Oracle Warehouse Builder (OWB)

(73)

S´ election des donn´ ees sources

Quelles donn´ees de production faut-il s´electionner pour alimenter l’ED ?

D´efinir l’utilit´e des donn´ees sources

Doit-on prendre l’adresse compl`ete ou s´eparer le code postal ? R´eorganiser les donn´ees s´electionn´ees pour qu’elles deviennent des informations

Faire une synth`ese des donn´ees sources pour les enrichir D´enormaliser les donn´ees pour cr´eer des liens entre les donn´ees et permettre des acc`es diff´erents

(74)

Extraction des donn´ ees

Un extracteur (wrapper) est associ´e `a chaque source de donn´ees S´election et extraction des donn´ees

Formatage des donn´ees dans un format cible commun en g´en´eral, le mod`ele Relationnel

Utilisation d’interfaces comme ODB, OCI, JDBC

(75)

Nettoyage et Transformation des donn´ ees

Objectifs du nettoyage :

R´esolution des probl`emes de consistance des donn´ees au sein de chaque source

Remarques :

une centaine de type d’inconsistances ont ´et´e r´epertori´ees 5 `a 30 % des donn´ees des BD commerciales sont erron´ees

(76)

Types d’inconsistances

Pr´esence de donn´ees fausses d`es leur saisie fautes de frappe

diff´erents formats dans une mˆeme colonne texte masquant de l’information (e.g., ”N/A”) valeur nulle

incompatibilit´e entre la valeur et la description de la colonne duplication d’information, ...

Persistance de donn´ees obsol`etes

Confrontation de donn´ees s´emantiquement ´equivalentes mais syntaxiquement diff´erentes

(77)

Nettoyage des donn´ ees

Fonctions d’analyse Fonctions de normalisation Fonctions de conversion

Usage de dictionnaires de synonymes ou d’abr´eviations D´efinition de table de r`egles remplacer valeur par

Mr M

monsieur M

mnsieur M

masculin M

M M

Msieur M

M. M

Monseur M

Utilisation d’expressions r´eguli`eres, suppression de doublons, de valeur nulle, ...

(78)

Nettoyage des donn´ ees

fonctions de conversion

(79)

Transformation

Objectif : suppression des incoh´erences s´emantiques entre les sources, probl´ematique lors de l’int´egration

des sch´emas des donn´ees

(80)

Transformation

Probl`emes lors de l’int´egration des sch´emas

Probl`eme de mod´elisation

Utilisation de diff´erents mod`eles de donn´ees Probl`emes de terminologie

2 noms diff´erents pour d´esigner un objet 2 objets diff´erents d´esign´es par un mˆeme nom Incompatibilit´es de contraintes

Contraintes incompatibles pour 2 concepts ´equivalents

(81)

Transformation

Probl`emes lors de l’int´egration des sch´emas

Conflit s´emantique

Diff´erents niveaux d’abstraction pour un mˆeme concept Conflits de structures

Diff´erentes propri´et´es pour un mˆeme concept Conflits de repr´esentation

2 repr´esentations diff´erentes choisies pour les mˆemes propri´et´es d’un mˆeme objet

(82)

Transformation

R´esolution des probl`emes survenant lors de l’int´egration des sch´emas

Demande une solide connaissance de la s´emantique des sch´emas

Peu trait´ee par les produits du march´e Nombreux travaux de recherche

Op´eration g´en´eralement r´ealis´ee `a la main...

(83)

Transformation

R´esolution des probl`emes survenant lors de l’int´egration des sch´emas

Utilisation d’heuristiques de r´econciliation des sch´emas bas´ees sur l’existence de similarit´es entre :

noms de tables et d’attributs types de donn´ees

instances

structure des sch´emas contraintes d’int´egrit´e

(84)

Transformation

Probl`eme lors de l’int´egration des donn´ees

Equivalence de champs´ Equivalence d’enregistrements´

(85)

Transformation

R´esolution des probl`emes survenant lors de l’int´egration des donn´ees

´Equivalence de champs :

Deux chaˆınes sont ´equivalentes si l’une est le pr´efixe de l’autre

→ Mesure de la compatibilit´e des champs Pour 2 champsc1 et c2

n(ci):=nombre de chaˆınes deci ne :=le nombre de chaˆınes ´equivalentes compatibilit´e :=ne/((n(c1) +n(c2))/2)

(86)

Transformation

R´esolution des probl`emes survenant lors de l’int´egration des donn´ees

´Equivalence d’enregistrements : fusion d’enregistrements

pour tous les tuples concern´es si noss1 = noss2 et nom1 = nom2

fusionner personne1 et personne2 si (noss1 = noss2 ou nom1 = nom2)

et adresse1 = adresse2

fusionner personne1 et personne2 ...

(87)

Chargement des donn´ ees

Objectif : Stockage des donn´ees nettoy´ees et pr´epar´ees dans la BD op´erationnelle (ODS)

Op´eration :

risquant d’ˆetre assez longue plutˆot m´ecanique

la moins complexe

Mais il est n´ecessaire de d´efinir et mettre en place : des strat´egies pour assurer de bonnes conditions `a sa r´ealisation

une politique de rafraˆıchissement

(88)

Chargement des donn´ ees

D´efinitions de vues relationnelles sur les donn´ees sources Mat´erialisation des vues dans l’entrepˆot

Mais aussi, pr´eparation `a la restitution tris

consolidations (pr´e-agr´egation) indexation

partitionnement des donn´ees enregistrement de m´eta-donn´ees ...

(89)

Pr´ eparation ` a la restitution

Agr´egation

Calcul de vues agr´eg´ees efinition des indexes Stockage dans le CDW Personnalisation

Construction de magasins de donn´ees (Data Marts) Construction de cubes de donn´ees

Construction des pr´esentations demand´ees par les utilisateurs

(90)

M´ eta-donn´ ees

Toutes les informations n´ecessaires pour la construction et l’administration de l’entrepˆot

informations pr´esentes dans l’entrepˆot donn´ees source

donn´ees d´eriv´ees, dimensions, hi´erarchies contraintes d’int´egrit´es sch´ema de l’entrepˆot indexes, partitions

requˆetes pr´ed´efinies ...

informations d’administration

r`egles de nettoyage, transformation, extraction politique de rafraˆıchissement

ecurit´e

monitoring, statistiques

(91)

M´ eta-donn´ ees

Chaque composant de l’entrepˆot fournit des m´eta-donn´ees

doit connaitre celles des autres composants doit savoir o`u ces m´eta-donn´ees sont situ´ees Une BD est d´edi´ee aux m´eta-donn´ees

(92)

Common Warehouse Metamodel

Sp´ecification d’un langage d’´echange de m´eta-donn´ees d’entrepˆot propos´e par l’OMG (Object Management Group)

bas´e notamment sur UML, XML

con¸cu par IBM, Unisys, NCR, Oracle, Hyperion, ...

(93)

Mod´ elisation multidimensionnelle

Lien direct entre les analyses d´ecisionnelles (OLAP) et une mod´elisation de l’information conceptuelle :

proche de la perception qu’en a l’analyste

bas´ee sur une vision multidimensionnelle des donn´ees Mod`ele multidimensitionnel : les donn´ees sont vues comme des data cubes

Un cube de dimensionn est dit uncubo¨ıde

Le treillis des cubo¨ıdes d’un entrepˆot de donn´ees forme un data cube

La mod´elisation multidimensionnelle a donn´e naissance aux concepts de fait et de dimension (Kimball 1996)

(94)

Cube de donn´ ees

(95)

Exemple de treillis de cube

(96)

Cube de donn´ ees

Sujet analys´e : un point dans un espace `a plusieurs dimensions Organisation des donn´ees pour mettre en ´evidence le sujet analys´e et les diff´erentes perspectives de l’analyse

data cube (par exemple, les ventes) : vision des donn´ees sur plusieurs dimensions

(97)

Concept de fait

Un fait :

mod´elisation du sujet de l’analyse

Mesures correspondant aux informations de l’activit´e analys´ee Mesures num´eriques, g´en´eralement valoris´ees de fa¸con

continue. On peut les additionner les d´enombrer

calculer le minimum, le maximum ou la moyenne Exemple : le fait deVente peut ˆetre constitu´e des mesures d’activit´es suivantes :

quantit´e de produits vendus montant total des ventes

(98)

Concept de dimension

Axes ou perspectives caract´erisant les mesures de l’activit´e d’un fait Une dimension :

mod´elisation un axe d’analyse

n´ecessit´e pour chaque dimension, de d´efinir ses diff´erents niveaux de d´etail

efinition d’une (ou plusieurs) hi´erarchie(s) de param`etres se compose de param`etres correspondant aux informations faisant varier les mesures de l’activit´e

Dans l’exemple pr´ec´edent :

Analyse du faitVente suivant diff´erentes perspectives correspondant

`

a trois dimensions :

la dimension Temps

(99)

Hi´ erarchie des param` etres d’une dimension

Hi´erarchie de param`etres d’une dimension :

D´efinition des niveaux de d´etail de l’analyse sur cette dimension

Exemple :

Dimension temps :

H1 : jour <mois<trimestre <ann´ee H2 : jour <mois<semestre<ann´ee H3 : jour <mois<saison<ann´ee Dimension g´eographie :

ville<epartement<region´

Dimension cat´egorie :

couleur<nomProduit<gamme<typeProduit

(100)

Objets intervenant dans les sch´ emas

Tables de faits (fact tables)

Les faits num´eriques (les mesures)

Les cl´es ´etrang`eres vers les tables de dimension Tables de dimension (dimension tables)

compos´ees d’une ou plusieurs hi´erarchies cat´egorisant les donn´ees

Identifiant unique

Pour distinguer les enregistrements dans les tables Relations entre les objets

elles assurent l’int´egrit´e des op´erations

(101)

Objets intervenant dans les sch´ emas

Exemple de tables de dimension : i t e m ( nom item , marque , t y p e )

temps ( j o u r , s e m a i n e , mois , t r i m e s t r e , a n n e e ) La table des faits contient des mesures unites_vendues les cl´es externes font r´ef´erence `a chaque table de dimension

(102)

Type d’approches des DW

Approche mat´eralis´ee Approche virtuelle Approche hybride

(103)

Approche des DW

Approche mat´eralis´ee :

Instanciation (mat´erialisation) de tous les membres de tous les

´

el´ements appartenant `a l’entrepˆot

Stockage physique de donn´ees dans l’entrepˆot Volume de donn´ees tr`es important

Stockage physique des r´esultats des requˆetes Aucun calcul lors de l’interrogation

(104)

Approche des DW

Approche virtuelle :

Pas de mat´erialisation des ´el´ements de l’entrepˆot

Stockage des donn´ees dans les syst`emes op´erationnels sources Stockage de l’expression de la requˆete

N´ecessit´e de recalculer les requˆetes `a chaque appel

(105)

Approche des DW

Approche hybride :

Combinaison entre les approches totale et virtuelle Implantation physique des niveaux agr´eg´es

Conservation des informations d´etaill´ees dans les syst`emes de production

(106)

Strat´ egies d’implantation d’un ED

3 strat´egies :

1 Utilisation d’un SGBD Relationnel (syst`emes ROLAP)

SGBDR : N´ecessit´e des adaptations pour r´epondre aux besoins des ED Stockage des donn´ees dans un SGBDR

Utilisation d’un middle-ware pour impl´ementer les op´erations sp´ecifiques de l’OLAP

2 Utilisation d’un SGBD Multidimensionnel (syst`emes MOLAP)

SGBD capable de stocker et traiter des donn´ees multidimensionnelles Bas´e sur un stockage par tableau (technique des matrices creuses) Indexation rapide des donn´ees calcul´ees

3 Utilisation d’un SGBD Hybride (syst`emes HOLAP)

Tirer profit des avantages des technologies ROLAP et MOLAP :

(107)

Conception logique d’un entrepˆ ot

D´efinition des objets

D´efinition des relations entre objets

→ Choix d’un mod`ele de conception (sch´ema)

Utilisation, par exemple, d’Oracle Designer ou Oracle WareHouse Builder

(108)

Conception logique d’un entrepˆ ot

ROLAP : sch´ema de BD relationnelle refl´etant la vue de l’analyste multidimensionnelle

hi´erarchis´ee

sch´ema en ´etoile (star schema) sch´ema en flocon (snowflake schema) constellation de faits (fact constellation)

NB: le sch´ema en ´etoile est souvent utilis´e pour l’implantation physique

Références

Documents relatifs

….... Jean prête sa clé à Manuel qui doit lui copier dessus une vidéo de 2 Go. Est-ce que Manuel peut copier sa vidéo sur la clé ? Justifier la réponse. Ilyes a estimé qu'une

Renvoyer pour chaque r´ esultat le nom de la gare (tel qu’indiqu´ e comme StopArea, pas comme StopPoint) ainsi que le nombre minimum de trains successifs n´ ecessaires pour acc´ eder

HTTP 1.1 supporte la n´egociation de contenu : un client HTTP 1.1 peut accompagner la requˆete pour une ressource d’en-tˆetes indiquant quels sont les langues et formats de

Concr` etement Hive transforme une requˆ ete HiveQL en des jobs MapReduce pour op´ erer sur les donn´ ees sous un format particulier dans le syst` eme de fichier HDFS. Vous

Si dans le grand syst` eme aucun vecteur n’est combinaison lin´ eaire des autres, ceux du petit syst` eme sont encore moins combinaisons lin´ eaires des autres vecteurs du petit

´ el´ ementaire Cons´ equences. Coordonn´

Plusieurs DESCRIPTEURS peuvent être utiles pour décrire un même objet (par exemple des descripteurs permettant de caractériser un contact : nom, prénom, adresse et

(iii) L’origine est un point d’´ equilibre stable de x(t) = ˙ Ax(t) si et seulement si toutes les valeurs propres de A sont de partie r´ eelle n´ egative ou nulle et si pour