SYSTÈMES INFORMATIQUES Systèmes d'aide à la décision

L' information est la matière première la plus précieuse pour la compétitivité des entreprises au xxie siècle et l'intelligence – humaine ou artificielle – a besoin de cette connaissance pour aider à la prise de décision. Le partage de données et la diffusion de connaissance sont donc les domaines les plus sollicités de l'informatique dans tous les domaines d'activité, de la grande distribution à la recherche médicale. Les systèmes d'information ont permis, à partir des années 1970, d'optimiser les activités de production de l'entreprise, ils ont aussi permis d'engranger dans les bases de données de véritables « gisements » d'informations. L'idée s'est alors faite dès les années 1980, en particulier grâce aux travaux de Ralph Kimball, de les utiliser à des fins décisionnelles et de les organiser pour en extraire de précieux renseignements.

En 1994, William Inmon a formalisé le concept d'entrepôt de données (en anglais data warehouse) : « Un entrepôt de données est une collection de données thématiques, intégrées, non volatiles et historisées, organisées pour le support à la prise de décision ». Jean-François Goglin définit un entrepôt de données comme un stockage intermédiaire de données issues des applications de production, dans lequel les utilisateurs finaux puisent avec des outils de restitution et d'analyse. Cette dernière définition résume bien toute la « chaîne décisionnelle » que suivent les données pour devenir des informations dont la connaissance améliorera les résultats de l'entreprise.

Découvrez l'intégralité de nos articles sans publicité

Nous détaillerons d'abord les différents processus de la chaîne décisionnelle, en particulier celui de l'intégration sémantique des données, qui représente la tâche la plus complexe de la chaîne. Puis nous présenterons le modèle OLAP, proposé par Edgar F. Codd, spécialement conçu pour la diffusion des informations à des fins décisionnelles. Enfin, nous montrerons les différents types de restitutions pour la business intelligence, dont l'objet est l'exploitation de cette information pour constituer une base de connaissance.

Architecture générale d'un entrepôt de données

Systèmes décisionnels : chaîne décisionnelle et entrepôt de données - crédits : Encyclopædia Universalis France

Systèmes décisionnels : chaîne décisionnelle et entrepôt de données

Découvrez l'intégralité de nos articles sans publicité

L' idée générale de la chaîne décisionnelle (fig. 1a) est de fournir aux décideurs, sous une forme appropriée, les informations qui vont les aider à prendre les décisions.

La chaîne décisionnelle

Les données sont extraites à partir des sources puis stockées dans un entrepôt de données. On duplique les données pour ne pas travailler directement sur les sources, cela pour trois raisons :

– L'historisation des données sur de nombreuses années est un point capital de l'entrepôt. C'est à partir de l'historique que des extrapolations pourront être faites. Aucune suppression de donnée n'est effectuée dans l'entrepôt, ce qui implique que l'attribut date soit présent dans toutes les relations pour indiquer le début et la fin de validité d'une donnée. Cela permet par exemple de suivre le comportement d'un client au fil des changements qui peuvent intervenir dans sa vie ;

Découvrez l'intégralité de nos articles sans publicité

– Les interrogations effectuées à des fins décisionnelles font généralement intervenir un très grand nombre d'enregistrements (par exemple le calcul de toutes les ventes sur plusieurs années) et perturberaient gravement les performances des traitements de production ;

– Pour optimiser les temps de réponse, les requêtes effectuées par les applications de productions pour lesquelles ont été conçues les bases de données ne nécessitent pas les mêmes choix d'organisation à la fois logiciels (schéma physique de la base de données) et matériels (logiciels de stockage).

Les sources

La notion d'entrepôt de données est fondée sur le postulat que l'entreprise regorge de données stockées momentanément – pour des besoins précis de gestion – et qui ne sont plus jamais exploitées alors qu'elles représentent un gisement d'information de grande valeur. Les principales sources sont donc les bases de données existant dans l'entreprise et développées pour les applications de production, par exemple les bases de données des clients, des factures, des produits, des ventes, des stocks. En particulier, les tickets de caisse dans la grande distribution sont particulièrement porteurs d'information, d'autant plus qu'ils contiennent désormais de nombreux renseignements sur l'acheteur grâce aux cartes de fidélité.

Les sources continuent à avoir leur vie propre sans trop d'influence de la mise en place du système décisionnel, la chaîne décisionnelle étant justement créée pour ne pas les perturber par des interrogations très consommatrices en ressources.

Découvrez l'intégralité de nos articles sans publicité

Des sources externes à l'entreprise peuvent être injectées dans l'entrepôt, par exemple des bases de données météorologiques, boursières, géographiques, des études statistiques. Beaucoup de données numérisées sont actuellement disponibles.

L'extraction

L' extraction a pour but d'extraire les données des différentes sources et de les mettre dans un format commun. Le format commun est généralement le modèle relationnel, mais le modèle XML commence à s'imposer. Chaque source possède un extracteur (appelé wrapper en anglais) qui en extrait les données nécessaires à l'alimentation de l'entrepôt, c'est-à-dire celles qui sont considérées a priori comme utiles aux besoins des décideurs.

Stratégies de rafraîchissement

L'extracteur doit appliquer une stratégie de rafraîchissement : périodique ou sur déclenchement. Dans le cas d'un rafraîchissement périodique, les données sont systématiquement exportées à intervalle fixe vers l'entrepôt, par exemple tous les jours. Le deuxième type de rafraîchissement déclenche l'exportation sur un événement. Cette dernière solution permet par exemple d'exporter toutes les données concernant le séjour d'un patient à l'hôpital à la survenue de l'événement « fin du séjour », car ce n'est qu'ensemble qu'elles fourniront des informations d'intérêt médical. Pour réaliser une alimentation en temps réel, on déclare événement déclencheur l'insertion d'un nouvel enregistrement dans la source.

Le mode d'extraction le plus fréquemment appliqué est celui d'une extraction périodique journalière déclenchée tous les soirs vers 19 heures et s'exécutant la nuit, lorsque les traitements de productions sont moins sensibles aux perturbations. Notons que les différentes données d'une même source n'ont pas obligatoirement le même mécanisme d'extraction.

Mise en œuvre

Pour programmer les extracteurs, le développeur peut s'aider des fonctionnalités de réplication de haut niveau fournies par les systèmes de gestion de base de données (S.G.B.D.), par exemple les déclencheurs, les mécanismes de vue concrète ou l'exploitation des journaux.

Les extracteurs peuvent également être automatiquement générés par un outil ETL (extraction transformation loading) : par une interface graphique de très haut niveau, l'utilisateur trace un trait de la table source vers la table cible et peut spécifier quelques règles de transformation à effectuer au passage. L'ETL fournit le code source des extracteurs et les scripts assurant le bon enchaînement de leurs déclenchements.

L'intégration sémantique des données

L'entrepôt n'est pas une simple concaténation des sources dans un récipient commun dans le seul but de rendre ces informations disponibles par un accès unique : il contient des données sémantiquement intégrées. C'est-à-dire qu'un lien est fait entre les différents enregistrements concernant la même personne, le même objet ou le même événement dans le réel. L'intégration sémantique des données est une tâche très difficile à automatiser tant il est parfois difficile de reconnaître une même entité du réel lorsque ses propriétés sont codées de manières très différentes selon les sources.

Considérons par exemple les données suivantes, concernant des étudiants et indiquant, dans l'ordre, numéro d'étudiant / civilité / nom / sexe / adresse : 234 / Mr / Citron / 1 / Paris et 235 / Mlle / Fraise / 2 / Menton, dans la source datée de 2007 ; 234 / Mr / Citron / M / 4, avenue Foch 75016 Paris et 1567 / Mme / Fraise / F / 4, avenue Foch 75016 Paris, dans la source datée de 2008. Il est difficile de reconnaître qu'il s'agit de la même étudiante dans les deux sources de données, mademoiselle Fraise ayant changé d'adresse et d'université et ayant épousé monsieur Citron. Il faut également détecter la différence de codification de l'attribut sexe dans les deux sources, ainsi que la différence dans l'expression de l'adresse de monsieur Citron. Sans cette mise en correspondance sémantique, également appelée « matching sémantique », quatre enregistrements seraient insérés dans l'entrepôt de données et les algorithmes de fouille de données comptabiliseraient deux changements de sexe et deux changements d'adresse.

Découvrez l'intégralité de nos articles sans publicité

L'intégration sémantique des données est une tâche très complexe qui représente environ 75 p. 100 des moyens nécessaires pour faire fonctionner la chaîne décisionnelle. Cette tâche est cependant indispensable à la bonne qualité des données stockées dans l'entrepôt et si elle n'est pas bien exécutée, les études statistiques effectuées n'auront que peu de valeur.

Conflits fréquemment rencontrés lors de l'intégration

Les conflits les plus fréquemment rencontrés lors de l'intégration de données sont les suivants :

– Différence de codage. Le sexe peut par exemple être codé M/F dans une source et 1/2 dans l'autre. La différence peut être particulièrement difficile à détecter, par exemple entre les tailles de prêt-à-porter françaises et espagnoles qui ne diffèrent que d'une unité ;

Découvrez l'intégralité de nos articles sans publicité

– Différence d'unité. Le poids d'un produit peut être en kg dans une source et en livres dans l'autre ;

– Différence de granularité. Par exemple, le salaire peut être donné par an ou par semaine ;

– Différence de fraîcheur entre deux sources. Les données ont pu évoluer entre les deux sources, par exemple l'âge peut avoir augmenté sans qu'il y ait pour cela contradiction ;

Découvrez l'intégralité de nos articles sans publicité

– Imprécision. Le poids peut par exemple être stocké au gramme près dans une source (54,57) et d'une façon moins précise dans l'autre source (54) sans qu'il y ait de contradiction ;

– Erreurs dans une source. Il peut s'agir de fautes d'orthographe, de fautes de frappe ou toute autre petite erreur dans la transcription de la valeur ;

– Différences de partitionnement. Une source peut découper les tranches d'âges par exemple en [10, 20[, [20, 30[, [30, 40[ et une autre source en [10, 25[, [25, 40[ ;

Découvrez l'intégralité de nos articles sans publicité

– Différence de contenu dans les textes libres. Typiquement, lors du remplissage du champ « adresse » il ne faut normalement inscrire que l'adresse « Cercle Polaire, Rovaniemi, Finlande », mais il est fréquent d'y trouver aussi le nom du destinataire : « Père Noël, Cercle Polaire, Rovaniemi, Finlande » ;

– Différence linguistique de niveau de perception. Par exemple, la valeur de l'attribut « couleur » d'une voiture est sujette à des variations, sans pour autant que la voiture en question ait été repeinte. À l'achat, la voiture peut être insérée dans la base de données avec une couleur précise, par exemple « vermillon », puis, lors de sa déclaration à la préfecture, avec un niveau de précision moindre et la valeur « rouge ». De même, le champ « médicament » d'un patient à l'hôpital peut recevoir la valeur précise « Efferalgan » ou une valeur plus générique « paracétamol », pour en fait le même antalgique administré au patient ;

– Différence de règles métier dans la mesure de la valeur. Par exemple le salaire peut être noté brut, ou net, avec ou sans les primes. Les modes opératoires doivent également être pris en compte pour comparer deux valeurs, une mesure du nombre de germes chez un patient ne pourra être comparée avec une autre que si elles ont été effectuées dans les même conditions, par exemple toutes les deux avant l'antibiothérapie ou toutes les deux après celle-ci.

Solutions à la résolution des conflits

Lorsque ces situations génératrices de conflits de valeurs sont détectées, des solutions peuvent être mises en place pour les résoudre automatiquement lors de l'alimentation de l'entrepôt. Voici ci-dessous quelques types de solutions :

– Résolution manuelle des conflits. Les cas à problèmes sont envoyés dans une table de rejets en l'attente d'un traitement manuel au cas par cas. Bien que ce soit une solution fiable, celle-ci est très coûteuse et doit donc, dans la mesure du possible, être remplacée par les solutions automatiques suivantes ;

Découvrez l'intégralité de nos articles sans publicité

– Règles de transformations. Des tables de correspondances suffisent pour résoudre les problèmes de codifications différentes, de synonymes, d'abréviations. Des fonctions de conversion résolvent les problèmes de différences d'unités ;

– Critères de fiabilité des sources. En cas de conflit, on peut privilégier la source la plus fiable, ou la source la plus récente. Des informations sur la fiabilité et la fraîcheur des sources doivent être disponibles dans le référentiel ;

– Utilisation de données implicites. Parfois une donnée paraît absente, alors qu'en fait elle est implicite. Par exemple, dans la base de données d'un constructeur de voitures japonais, la nationalité de ses voitures n'apparaîtra pas car elle est implicite pour toute la base ;

Découvrez l'intégralité de nos articles sans publicité

– Normalisation en amont. Cette méthode impose aux propriétaires des sources d'utiliser les mêmes conventions de codification, les mêmes tranches d'âge, les mêmes unités, etc.

– Techniques de matching indépendantes du contexte. Des techniques d'appariement purement syntaxique, c'est-à-dire indépendant du sens des mots, peuvent être appliquées pour détecter qu'il s'agit de la même valeur. Par exemple, si deux chaînes de caractères diffèrent seulement d'un caractère (ex : « citron » et « ciyron ») et si les deux caractères différents (« t » et « y ») sont très proches l'un de l'autre sur le clavier, on conclut à une faute de frappe sur l'une des chaînes et les valeurs sont considérées comme identiques ;

– Techniques de matching dépendantes du contexte. Pour certains champs importants et très touchés par le problème d'hétérogénéité de représentation, des logiciels spécifiques sont disponibles. Par exemple, des logiciels sont capables de normaliser des adresses pour pouvoir les comparer et vérifier si elles sont identiques ;

Systèmes décisionnels : ontologie - crédits : Encyclopædia Universalis France

Systèmes décisionnels : ontologie

– Utilisation d'ontologies de domaine. Une ontologie est une conceptualisation du monde réel destinée à en partager la compréhension ; on peut la comparer à un dictionnaire de langue qui permet à différentes personnes de se comprendre via un consensus sur le sens des mots. Une ontologie est destinée aux ordinateurs et non aux humains, elle est généralement composée d'une hiérarchie de concepts (taxonomie) et autres liens sémantiques (« est-partie-de », « est-relié-à », etc.). L'ontologie des couleurs de voitures dont on peut voir l'extrait figure 2a peut aider à effectuer automatiquement une intégration sémantique sur les sources de la figure 2b telle qu'elle aurait été faite par un humain. Par exemple l'algorithme peut voir que la voiture no 1 a la couleur « azur » dans la source 1 et la couleur « bleu » dans la source 2 ; l'ontologie montre que « bleu » est un ancêtre (terme plus générique) d'« azur », il s'agit donc de la même couleur. L'ontologie montre également que les couleurs « vermillon » et « bleu » attribuées toutes deux à la voiture no 2 ne correspondent pas à la même couleur. Les techniques sont les mêmes que celles qui sont utilisées dans le Web sémantique pour étendre la portée d'une requête si celle-ci n'obtient pas assez de réponses.

Le référentiel de métadonnées

On appelle « métadonnées » des données qui décrivent les données. Dans une chaîne décisionnelle, les métadonnées regroupent l'ensemble des informations décrivant le contenu de l'entrepôt et les processus associés. Elles sont stockées dans un référentiel qui doit proposer des interfaces d'interrogation et de navigation.

Métadonnées destinées à la gestion des données

On trouve tout d'abord les métadonnées habituelles de toute base de données : les types de données, les contraintes d'intégrité, les droits d'accès, etc.

Métadonnées destinées aux responsables des processus

Cette partie est propre aux entrepôts de données. C'est dans le référentiel que doivent puiser les équipes et outils responsables du processus de transformation des données de production vers l'entrepôt afin de retrouver toutes les informations nécessaires aux processus. Ces métadonnées comprennent tous les flux et les règles d'alimentation de l'entrepôt et des magasins ainsi que les règles de transformation des données.

Métadonnées destinées aux utilisateurs

Les utilisateurs de l'entrepôt ont particulièrement besoin d'information et de documentation sur les données stockées dans l'entrepôt afin d'en comprendre la sémantique. Les utilisateurs ne sont pas des programmeurs mais des décideurs. De plus, les données proviennent de diverses bases de données dont le contenu n'est pas familier aux utilisateurs de l'entrepôt, contrairement au contexte d'un système d'information de production où la même équipe gère et interroge sa base de données. Cette documentation peut être fournie par une interface de navigation. Elle doit par exemple pouvoir dire que la table « produit » de l'entrepôt contient l'union des tables « produit » des sources « filiale Paris », « filiale Milan » et « filiale New York » sur les dix dernières années, pour tous les produits de la gamme textile.

Standardisation des métadonnées

Tous les outils de la chaîne décisionnelle vont chercher dans le référentiel les métadonnées nécessaires à l'exécution de leur tâche. Il y a donc un besoin de standardisation des métadonnées, afin de permettre l'utilisation d'outils d'éditeurs différents. Dans les premières années d'existence des entrepôts de données, chaque partie de la chaîne était associée à de grands noms d'éditeurs spécialisés dans un type de logiciel : ETL, S.G.B.D., outils de restitution, outils de fouille de données. Chacun de ces logiciels avait son propre référentiel et la communication était difficile, ce qui a ouvert la voie à des offres intégrées, les éditeurs les mieux implantés en rachetant d'autres, complémentaires, afin d'offrir des chaînes complètes.

Une première tentative de standardisation a eu lieu en 1995 : le « metadata Council » réunissait les principaux acteurs du marché. Il a ensuite successivement rejoint les deux grands groupes concurrents sur la proposition d'un modèle de standardisation :

Découvrez l'intégralité de nos articles sans publicité

– OIM (open information model), modèle proposé par Microsoft en 1996 ;

– CWMI (commun warehouse metadata interchange), modèle fondé sur XML et proposé par l'O.M.G. (Object Management Group) en 1998. De plus en plus d'outils deviennent compatibles avec ce dernier modèle, qui est en train de devenir un standard.

Les magasins de données

Un magasin de données (« data mart » en anglais) est un sous-ensemble de l'entrepôt. Il sert à une classe de décideurs intéressés par le même thème. Son volume réduit permet un accès plus rapide aux données, qui peuvent être organisées de façon à répondre à des besoins particuliers.

Généralement, le magasin est modélisé sous forme multidimensionnelle (cf. chap. 4). Des mécanismes d'alimentation doivent être mis en place pour assurer le rafraîchissement des magasins ; les outils ETL peuvent également être utilisés à ce niveau.

Découvrez l'intégralité de nos articles sans publicité

En cas de volume particulièrement important, chaque magasin peut lui-même avoir des sous-magasins, appelés magasins de niveau deux.

Variantes dans l'architecture

Des niveaux de stockage peuvent être ajoutés ou enlevés à l'architecture basique de la chaîne décisionnelle décrite ci-dessus.

Architecture avec ODS

Le processus de nettoyage et d'intégration des données étant très complexe et impliquant la mise en œuvre d'une panoplie de traitements, une zone de travail dédiée à cette phase s'avère vite nécessaire. Comme le montre la figure 1b, un ODS (operational data store) est un espace de stockage où les données issues des sources sont nettoyées et intégrées avant d'être envoyées dans l'entrepôt. Les données n'y sont conservées que le temps de la résolution de tous les problèmes.

Architecture à magasins matérialisés et entrepôt virtuel

Dans l'architecture de la figure 1c, préconisée entre autres par Ralph Kimball, l'entrepôt de données n'est pas un stockage matérialisé de toutes les données duquel sont extraits des magasins mais n'existe que virtuellement par union des magasins. Les magasins n'étant pas disjoints, cette architecture implique de définir des « dimensions conformes », c'est-à-dire de tenir compte dans les relations de dimensions communes à plusieurs magasins de tous les attributs nécessaires aux différents magasins.

Accédez à l'intégralité de nos articles

  • Des contenus variés, complets et fiables
  • Accessible sur tous les écrans
  • Pas de publicité

Découvrir

Déjà abonné ? Se connecter

Écrit par

  • : professeur des Universités en informatique au Conservatoire national des arts et métiers, Paris

Classification

Médias

Systèmes décisionnels : chaîne décisionnelle et entrepôt de données - crédits : Encyclopædia Universalis France

Systèmes décisionnels : chaîne décisionnelle et entrepôt de données

Systèmes décisionnels : ontologie - crédits : Encyclopædia Universalis France

Systèmes décisionnels : ontologie

Systèmes décisionnels : cube OLAP - crédits : Encyclopædia Universalis France

Systèmes décisionnels : cube OLAP

Voir aussi