Académique Documents
Professionnel Documents
Culture Documents
et
Entrepôt de Données
Informatique Décisionnelle et Entrepôt de Données
Objectifs :
A la fin de ce cours, l’étudiant devra :
Contenu
Chapitre I - Entrepôts de données et Informatique Décisionnelle : Concepts de base et architecture
Organisation du cours
- CM : 30 Heures
- TD : 10 Heures
- TP : 15 Heures
- TPE : 05 Heures
1 CONCEPTS ET ARCHITECTURE DE BASE ................................................................................................... 1
2.3 Constat.......................................................................................................................................... 14
4 LE MULTIDIMENSIONNEL ...................................................................................................................... 25
Lorsque nous sommes confrontés à un problème, plusieurs pistes de solutions émergent parfois de notre
réflexion. En fin de compte, nous adoptons et réalisons une de ces solutions, celle dont nous avons décidé
au terme de notre analyse.
On peut alors admettre qu’une décision est l’accomplissement d’un choix. C’est le fait d'un acteur qui
effectue un choix entre plusieurs solutions susceptibles de résoudre le problème, ou la situation, auquel il
est confronté.
Ainsi que l’a affirmé Alain Fernandez dans son ouvrage « Piloter la performance de l’entreprise innovante »,
décider n’est pas une affaire de tout repos. Celui qui décide s’engage et doit donc assumer les risques. En
effet, la pression de la concurrence, l’incertitude ambiante caractéristique du monde des affaires, la rapidité
des changements ne laissent que peu de temps aux délibérations et ne permettent pas d’envisager toutes
les éventualités. Et comme le décideur doit agir vite du fait que les opportunités n’attendent pas, la prise
de décision s’assimile alors à une prise de risque.
1
o Le plan d'exécution est évalué
o Les risques d'échec sont calculés
o Les facteurs de succès sont identifiés
o La solution est choisie, elle est théoriquement viable
4. Phase d'exécution
o Passage à l'action
o Désignation des acteurs concernés
o liste précise des actions à engager, des objectifs à suivre, de la métrique et
des indicateurs de performance
o Définition des responsabilités
Toute personne susceptible d’apporter une aide intéressante au décideur doit au moins posséder l’une des
caractéristiques suivantes :
Actuellement, les machines fournissent aussi un support pour l’aide à la décision. Pour cela, les
caractéristiques évoquées ci-dessus doivent être implémentées en termes de base de connaissances et
d’archive.
L’automatisation de l’aide à la décision n’est envisageable que dans le contexte d’un système d’information
automatisé. Le système construit et accumule alors ses connaissances à partir des informations provenant
des transactions qui émanent du fonctionnement de l’application de gestion.
2
1.2.1 LA DONNEE
Selon wikipedia : « Une donnée est une description élémentaire d’une réalité. C’est par exemple une
observation ou une mesure ».
La donnée est une notion abstraite typée. Il y a des données numériques, symboliques, textuelles,
logiques, … La donnée ne porte pas de sens en elle-même. Si je code une fonction y = sinus(x), l’angle
représenté par la valeur x n’a pas d’importance. Il peut s’agir d’un angle fait par un meuble dans une
pièce, d’un angle de trajectoire d’une comète, de la pente d’une courbe d’évolution d’un cours de
bourse, tout ceci n’est pas impactant sur la fonction sinus.
Lorsque je range des données dans une base de données, peu importe leur signification. La
performance de l’algorithme de stockage et de restitution est uniquement liée au type et au volume
des données, à la fréquence et à la nature des accès à ces données.
On peut dire que la grande majorité des traitements réalisés par les informaticiens concernent des
données dont le sens porté par leurs valeurs n’est pas déterminant au sein du traitement. Mais il ne
s’agit généralement pas des traitements les plus compliqués. Les traitements deviennent plus
compliqués lorsqu’il est nécessaire de différentier les données en fonction de leur sens, quand ces
données deviennent des informations.
1.2.2 L’INFORMATION
Selon Wikipédia : Au sens étymologique, l’information est ce qui donne une forme à l’esprit. Elle vient
du verbe latin informare, qui signifie « donner forme à » ou « se former une idée de ».
L’information est aussi une notion abstraite, mais d’un niveau d’abstraction supérieur à celui de la
donnée. On peut dire pour simplifier que l’information est une donnée + un sens.
Si je compare deux adresses en considérant qu’il s’agit de données, il me suffit de faire appel à une
fonction qui va comparer les deux chaines de caractères, octet par octet. Mais nous savons bien que
les deux adresses peuvent être identiques sans que leurs représentations le soit. Un code postal peut
être écrit 91000 ou F91000, Boulevard peut être abrégé en Bd, Monsieur en M., le nom et le prénom
peuvent être écrits dans des ordres différents, etc.
Comparer deux informations s’avère bien plus complexe que comparer deux données. En confondant
les deux termes, des incompréhensions apparaissent, un maitre d’ouvrage peut s’attendre à un
traitement au sens des informations et un fournisseur peut livrer un traitement sur la base de simples
données.
De fait, utiliser le bon terme n’est jamais suffisant, il faut préciser la définition des deux termes pour
interpeler le lecteur et éviter l’interprétation. C’est primordial.
1.2.3 LA CONNAISSANCE
Selon wikipedia : » La connaissance est une notion aux sens multiples à la fois utilisée dans le langage
courant et objet d’étude poussée de la part des philosophes contemporains ».
3
La connaissance est aussi une notion abstraite, d’un niveau d’abstraction supérieur à celui de
l’information. La connaissance à la différence de l’information est partagée et s’appuie sur un
référentiel collectif.
Mais attention, des informations peuvent être communiquées sans pour autant devenir des
connaissances. Il faut alors les accompagner de leur référentiel puisque celui-ci ne sera pas partagé
(non-implicite).
Si je vous communique un code postal, je n’ai pas besoin de vous expliquer ce dont il s’agit, vous
disposer d’un référentiel pour interpréter ce code, par exemple pour savoir si le département est
maritime, montagneux, campagnard en vue de segmenter une offre de produits. Le code postal
s’apparente à une connaissance largement partagée en France. Mais si je communique ce code postal
à une équipe en Inde, il est fort probable qu’il sera considéré simplement comme une information, en
l’absence de référence de connaissance, ou pire de simple donnée.
La connaissance peut être spécifique à un métier, donc partagée seulement par les experts du métier.
Il est intéressant de noter que dans les expressions spontanées le bon terme est généralement présent.
Notre cerveau effectue naturellement la distinction entre les 3 notions.
Mon web designer va me demander : « comment veux-tu que je présente tes données techniques sous
la photo des moteurs ? ». Il me spécifie ainsi que la signification des chiffres communiqués n’est pas
de son ressort.
Mon client va me dire : « j’ai regardé votre catalogue de moteur à la recherche du nombre de cylindre
et je n’ai pas trouvé cette information !« . Il me signifie ainsi qu’il sait à quoi correspond un nombre
de cylindre et qu’il était tout à fait capable de le relever quelle que soit la forme sous laquelle il aurait
pu être écrit dans le catalogue.
Mon DRH va recruter un collaborateur en lui demandant : »avez-vous des connaissances sur la
mécanique automobile ? ». Il précise ainsi le cadre dans lequel le collaborateur doit s’inscrire et se
sentir à l’aise. Ainsi le collaborateur recruté sera plus à même d’interpréter les informations techniques
des moteurs que je souhaite proposer sur mon site internet BtoB.
Les applications OLTP se caractérisent par un grand nombre de transactions relativement simples.
Habituellement, les transactions retrouvent et mettent à jour un nombre d’enregistrements qui sont
contenus dans plusieurs tables distinctes. Les relations entre ces tables sont généralement simples
Cependant, ce qui est attendu de la technologie de l’information d’aujourd’hui c’est la possibilité d’aider
les utilisateurs de connaissances (gestionnaires, analystes, décideurs) dans la prise de décision. Les
4
requêtes typiques de ce type de besoin concernent l’analyse des données ou la mise en évidence de
connaissance.
Les bases de données traditionnelles ne sont plus indiquées, tout comme les applications OLTP. Pour
satisfaire les besoins des décideurs, les données doivent être organisées sous une forme qui facilite la
déduction rapide des connaissances. Cette organisation est la pierre angulaire du récipient de données
pour la décision : les entrepôts.
5
Le système opérant (SO) est le siège de l’activité productive (réalisation du projet) : transformation de
matières, production de biens matériels, production de services.
Le système de pilotage (SP) est le siège de l’activité décisionnelle et de contrôle. Il fixe les objectifs, contrôle
l’activité du SO, régule et fait évoluer l’organisation.
Le système d’Information et d’Aide à la Décision(SIAD) assure la liaison entre SO et SP. Il met à disposition
de ces sous-systèmes toutes les informations nécessaires à la réalisation de leurs objectifs.
Le SIAD comporte deux parties, le système d’information (SI) et le système décisionnel (SD). Le SI est
l’intermédiaire entre le SO et le SP. Il effectue l’acquisition, le stockage, le traitement et la distribution des
informations que s’échangent ces unités. Les principaux traitements dans ce sous-système sont de type
transactionnel. Ils sont mis en œuvre à l’aide d’applications transactionnelles dites OLTP et reposent sur
des bases de données transactionnelles.
6
Le SD agrège les données transactionnelles contenues dans le SI puis les stocke dans des entrepôts selon
une organisation typique pour satisfaire les besoins des décideurs. Ces besoins sont mis en œuvre à l’aide
d’applications analytiques dites OLAP.
De ces données, parfois acquise durant des décennies, l’on peut extraire des connaissances enfouies et
susceptible de booster le pouvoir économique de l’entreprise ou d’aider à la prise de décision. Leur maîtrise
est donc un impératif. Ce qui nécessite l’adoption de technologies pour l’accès, le regroupement et
l’exploitation de données disséminées.
Le BI a pour objectifs d’offrir une vision globale de l’activité et un support pour l’aide à la décision. Elle est
basée sur un entrepôt de données pour le stockage des données.
Le terme entrepôt de données ou EDD (ou base de données décisionnelle ; en anglais, data warehouse ou
DWH) désigne une base de données utilisée pour collecter, ordonner, journaliser et stocker des
informations provenant de base de données opérationnelles et fournir ainsi un socle à l'aide à la décision
en entreprise
Une application OLAP doit permettre de produire des rapports qui répondent aux questions :
7
1.4.2 UN BREF HISTORIQUE
Le contenu de cette section est tiré de l’ouvrage Internet/Intranet et bases de données de Georges
Gardarin.
Les architectures et techniques pour l’aide à la décision fondée sur l’analyse de grandes bases de données
nécessite de stocker les données extraites de sources de données hétérogènes sur des serveurs spécialisés
dédiés au décisionnel. Alors que les bases de données de production sont mises à jour en transactionnel
(On Line Transaction Processing, OLTP) les bases de données décisionnelles sont consultées en interactif
pour l »analyse des données (On Line Analysis Processing, OLAP).
OLTP et OLAP sont deux modes de travail interactif radicalement différents. L’OLTP a été la cible essentielle
des systèmes de base de données relationnelles jusqu’au milieu des années 90. Il est centré sur la mise à
jour ponctuelle de données. Seules quelques lignes de tables sont traitées par chaque transaction, à partir
d’écrans fixes préprogrammés. Les transactions échangent de faibles quantités d’informations avec
l’utilisateur et travaillent toujours sur les versions les plus récentes des données.
Au contraire, l’OLAP qui s’est développé depuis le début des années 80 travaille en lecture seulement. Les
programmes consultent d’importantes parties des bases de données pour procéder à l’analyse, par
exemple l’élaboration d’histogrammes. C »est un mode de travail global sans écran fixe, par navigation dans
la base selon diverses dimensions constituées par des attributs de tables. Il nécessite de consulter des
versions historiques de la base et peut se permettre d’ignorer temporairement les toutes dernières mises
à jour. La taille des bases OLAP est d’un ordre de grandeur supérieur à celle des bases OLTP du fait de la
conservation des données historiques.
Les systèmes du début des années 80 ont déjà permis d »e constater l’opposition entre OLTP et OLAP. Les
bases de données manipulées demandent en effet des structures différentes, des modes de verrouillage
incompatibles, voire des modèles différents.
On a ainsi inventé l’infocentre dans les années 85, une technologie consistant à recopier des bases de
données ou des parties de bases pour assurer les traitements décisionnels.
Le data warehouse ou entrepôt de données est un prolongement de l’infocentre dans un contexte réparti.
Il date du début des années 90. Dès le début, il s’agit de matérialiser des vues de multiples sources de
données, de les maintenir sur une machine séparée et de les exploiter pour le décisionnel.
Les développements récents rendent possible le support de larges bases de données pour l’OLAP et pour
des techniques plus évoluées comme le data mining. Tous ces développements se sont accompagnés d’un
passage graduel de la donnée à l’information puis à la compétence.
8
9
1.4.3 APPLICATION TYPIQUE DE L’INFORMATIQUE DECISIONNEL
Banque et assurance
Logistique
Adéquation demande/production
Santé
Etudes épidémiologiques
Recherche de nouveaux médicaments…
Grande distribution
Econométrie
Télécommunications
10
1.4.4 ARCHITECTURE TYPE D’UN SYSTEME DECISIONNEL
La figure suivante représente l’architecture type d’un système décisionnel.
Sources de données
Outils ETL
Entrepôt de données
DataMart
Magasin de données
11
Sous-ensemble des données de l’entrepôt
Dédié à un secteur d'activité ou à un métier particulier
Méta-données
Cubes OLAP
Vues multidimensionnelles
Cubes à plusieurs dimensions
Fins d’analyse et de décision
Reporting
Fouille de données
12
2 BASES DE DONNEES ET ENTREPOTS
Ce chapitre aborde en premier la création d’une base de données dans l’objectif d’effectuer une mise à jour
de vos connaissances dans le domaine. La deuxième section concerne le traitement de requêtes. On verra
alors que les BD ne sont pas outillées pour le type de requêtes qui correspondent principalement aux
préoccupations de décideurs. Le modèle d’entrepôt sera alors présenté comme palliatif à cette limite des
BD.
Avant d »écrire les requêtes SQL correspondantes aux besoins ci-dessus, remplir les tables de votre base
avec suffisamment de données pour agrémenter son utilisation.
Dans le contexte particulier de transactions commerciales ces questions d’ordre générales peuvent se
décliner en questions spécifiques telles que :
Quelles sont les ventes du produit X pendant le trimestre A de l'année B dans la région C ?
Quel est le volume des ventes par produit et par région durant le 3ème trimestre 2006 ?
Quels sont les types de produit s dont le volume des ventes baisse constamment dans les 6 derniers
mois de l’année en cours ?
13
Comment se comportent les ventes du produit X par rapport aux ventes du produit Y ?
Comment se comportent les ventes du produit X au cours de la période 2005-2007 par rapport à la
période 2003-2005 ?
Est-ce qu’une baisse de prix de 10% par rapport à la concurrence ferait redémarrer les ventes du
produit X?
Quelles sont les composantes des machines de production ayant eu le plus grand nombre
d’incidents imprévisibles l’an dernier ?
Combien de clients l’entreprise a-t-elle perdue l’an dernier et pourquoi ?
Quel type de client peut bien acheter mon produit Z ?
Quels sont les clients les plus rentables ?
Quelles actions faut-il mettre en œuvre pour pérenniser, voire accroître leur fidélité ?
Quels éléments concourent à l’amélioration de leur satisfaction ?
Dispose-t-on d’indicateurs permettant de qualifier l’impact du niveau de satisfaction des clients sur
la rentabilité de l’entreprise ?
Quel est le niveau de satisfaction des collaborateurs et quels en sont les paramètres déterminants
?
2.3 Constat
A vouloir trouver des requêtes SQL, vous avez certainement constaté la difficulté de l’exercice. Ce qui est
normal car les SGBD traditionnels ne sont pas outillés pour répondre à de telles questions.
Pour déterminer le volume des ventes du produit X durant le trimestre A dans la région C, il faut :
- Isoler toute les ventes de X dans la région C.
- Spécifier l’intervalle de temps souhaité.
- Extraire toutes les ventes réalisées dans cet intervalle de temps.
- Synthétiser le résultat.
Cette opération doit être répétée pour chaque produit si l’on s’intéresse aux volumes de vente par produit.
Ce qui est coûteux en temps de calcul. Les entrepôts de données permettent de résoudre ces problèmes
de complexité.
14
Fig. 1 : illustration d’un entrepôt de données
Données intégrées
Les données proviennent de sources hétérogènes ou d'origines diverses et peuvent intéressées différents
services de l’entreprise. Pour réaliser un référentiel commun, les données doivent être intégrées. Mais
avant d’être intégrées, les données doivent au préalables être mises en forme et unifiées afin d’avoir un
état cohérent.
L’intégration nécessite une forte normalisation de données. Une donnée doit avoir une description et un
codage unique. Cette phase d’intégration est très complexe et représente 60 à 90 % de la charge totale
d’un projet.
Données historisées
Un entrepôt est comme une archive. Les données ne nécessitent pas de mise à jour (chargement de masse).
Un référentiel temps est associé à chaque donnée. Cette historisation est nécessaire pour suivre dans le
temps l'évolution des différentes valeurs des indicateurs à analyser.
15
2.5 Magasins de données (DataMart)
Les entrepôts de données nécessitent de puissantes machines afin de gérer de grandes bases de données
contenant les données historisées. A côté et souvent en complément se développent des bases de données
ciblées sur quelques sujets limités, appelés magasin de données ou datamart. Ces petits entrepôts offrent
des données aux décideurs de l’entreprise pour l’analyse, celles-ci pouvavt provenir des data warehouse,
ou plus généralement des bases existantes.
Les magasins sont donc des entrepôts qui présentent l’avantage de nécessiter une infrastructure plus
légère, de pouvoir être mis en œuvre plus rapidement et d’être mieux centrés sur un problème.
16
3 CONCEPTION LOGIQUE
3.1 Introduction
Les techniques de conception appliquées aux entrepôts sont basées sur la modélisation
multidimensionnelle des données. Le concepteur identifie dans un premier temps les faits à analyser puis
il détermine ensuite les dimensions d’analyse qui leur sont associées.
Les faits sont les données numériques (économique) à analyser. Ils servent de base à la définition des
indicateurs. Un fait peut par exemple correspondre au nombre de ventes, au chiffre d’affaire, ou à une
quantité stockée.
Les axes d’analyse associés aux indicateurs sont appelés dimensions. Une dimension peut être par exemple
le temps, le client, la géographie, un produit, etc.
La figure suivante montre une représentation multidimensionnelle sous la forme d’un cube, des données
correspondantes à la vente de produits dans le temps et par région.
Le fait considéré est le total des ventes. Il est étudié par rapport à 3 dimensions : le Temps, les Pays et les
Produits.
17
3.2.1 TABLE DE FAITS
La table de faits est la clef de voûte du modèle dimensionnel où sont stockés les indicateurs de
performances. Les indicateurs étant les données les plus volumineuses d’un système d’information, il faut
les rationaliser au sein des tables de faits.
La table de fait comporte typiquement :
- Un ou plusieurs attributs de dimension servant à caractériser les attributs de faits et permettant
de conduire les analyses.
- Zéro ou plusieurs attributs de faits.
- Eventuellement un attribut spécifique clé primaire s’il est nécessaire d’identifier chaque tuple.
- Peu de colonnes mais beaucoup de lignes.
La figure suivante représente un modèle graphique de table de fait. Elle se présente sous la forme d’un
rectangle comportant 2 parties, une pour le titre et l’autre pour les attributs.
18
Les tables de dimension sont schématisées comme le montre la figure ci-dessous :
Les membres d’une table de dimension sont généralement dépendants et organisés en hiérarchie
(dépendances fonctionnelles). Par exemple :
- Référence Famille
- Famille Type
- Type Gamme
Dans la conception d’une table de dimension, il faut éviter la présence de circuits dans une hiérarchie. Les
membres impliqués dans une hiérarchie guident les opérations ROLL/UP et DRILL/DOWN. Un membre peut
être caractérisé par des attributs spécifiques (qui ne guident pas les agrégations mais qui peuvent servir
pour des sélections).
La hiérarchie entre attributs peut servir de base pour la normalisation de la dimension.
19
Caractéristiques
- Une table de faits centrale reliée par clés primaires aux tables de dimensions.
- Chaque dimension est décrite par une seule table dont les attributs représentent les diverses
granularités possibles.
Avantages
- Facilité de navigation, gestion des agrégats.
- Peu de jointures.
Inconvénients
- Toutes les dimensions ne concernent pas toutes les mesures.
- Redondances dans les dimensions.
20
Caractéristiques
- Une table de faits centrale reliée par clés primaires aux tables de dimensions.
- Les dimensions sont décrites par une succession de tables (à l’aide de clefs étrangères)
représentant la granularité de l'information.
Avantages
- Economie de place de stockage.
- Evite les redondances.
Inconvénients
- Complexité du modèle.
- Plus de jointures.
21
Caractéristiques
- Plusieurs tables de faits à dimensions partagées
Avantages
- Meilleure gestion des données creuses.
Inconvénients
- Complexité du modèle.
22
3.4.2 GRANDE DIMENSION
En présence de tables de dimensions avec de nombreux attributs et de nombreux tuples (Clients,
Produits…), une solution consiste à :
- Evoluer vers un schéma en flocon
- Introduire une nouvelle table de dimension contenant des intervalles de valeurs
23
3.5 Démarche de conception
Etude des besoins
- Décrire les objectifs visés, situer les types d’analyse à effectuer et les types de rapports à produire
- Identifier les sources et évaluer les difficultés d’intégration, les volumes de données concernés
(approximatifs)…
Conception du schéma
- Approche guidée par les besoins
- Approche guidée par les sources
Vérification du schéma
24
4 LE MULTIDIMENSIONNEL
4.1 Définitions et exemple
4.1.1 DONNEES MULTIDIMENSIONNELLES
Les données décisionnelles sont perçues à travers plusieurs dimensions. Elles sont qualifiées de données
multidimensionnelles, indépendamment de leur support.
La figure ci-dessus montre un cube étendu dont les mesures de base correspondent aux cellules noires. Les
autres cellules ont été ajoutées simplement pour mettre en évidence quelques types d’opérations que l’on
peut rapidement effectuer sur un cube.
25
4.2 Concepts de base
4.2.1 HIERARCHIE
Les données décisionnelles sont perçues à travers plusieurs dimensions qui servent d’axes d’analyse. Les
dimensions sont caractérisées par un ou plusieurs attributs qui peuvent être organisés en une hiérarchie.
La figure suivante montre un exemple de hiérarchie.
26
La granularité d’une dimension est dite à petit grain si le niveau associé à une mesure est le plus bas possible
dans la hiérarchie. Par contre, elle est dite grossière ou à gros grain lorsque le niveau associé à une mesure
est élevé.
27
Suivi de la consommation mensuelle seulement
o !1 info/mois, 50 octets/info, historique d’un an, 10 millions d’abonnés
o 6 Go : Volume plus réduit possibilités d’analyse beaucoup plus limitées
On peut regrouper les opérations sur des cubes en trois catégories : les opérations de structure, les
opérations sur le contenu et les opérations entre cubes.
Roll-up
- Forage vers le haut
- Agréger selon une dimension
- Ex : Semaine #Mois
- Synthèse des informations en fonction d'une dimension
Drill-down
- Forage vers le bas
- Opération inverse du roll-up
- Détailler selon une dimension
- Ex : Mois #Semaine
- Possibilité de « zoomer » sur une dimension
28
Rotate
- Pivot, rotation par rapport à l’un des axes de dimension
Switch
Permutation de valeurs de dimensions
Split
29
Nest / Unnest
PUSH / PULL
30
Slice / Scope
Dice
Union
31
4.4 Mise en œuvre
Un entrepôt de données est une BD dédiée pour l’aide à la décision et maintenue séparément du système
de production. Leur essor est dû aux limites des SGBD relationnels classiques :
- Orienté vers le transactionnel (OLTP)
- Manque d’expressivité des requêtes SQL pour le décisionnel (OLAP)
- Structures et algorithmes inadaptés à la charge de travail
Malgré cela, certaines techniques de mise en œuvre physique s’appuie encore sur les approches du
relationnel. ! Il existe trois approches différentes pour stocker les données décisionnelles
- Le M-OLAP (Multidimensional OLAP) qui implémente une approche multidimensionnelle au niveau
physique. Ses performances sont optimales pour les requêtes OLAP et son couplage est aisé avec
les outils d’analyse.
- Le R-OLAP (Relationnal OLAP) qui implémente une approche relationnelle au niveau physique.sa
mise en œuvre repose sur des bases de données relationnelles munies d’extension OLAP.
- Le H-OLAP (Hybrid OLAP) qui combine les deux approches précédentes.
32