|
|
’’OLAP’’, nous avons tous certainement
entendu au moins une fois ce terme. Cependant savoir qu’il signifie On
Line Analytical Processing ne suffit pas pour cerner tous les concepts
induits derrière ce terme. Les spécialistes eux-mêmes sont parfois en
désaccord : les enjeux financiers sont si important, que l’on voit des
vendeurs nés prétendre par-ci et par-là que leurs produits sont ’’OLAP
compliant’’. On retrouve le combat acharné entre puristes et vendeurs et
on comprend bien qu’il n’y ait pas une seule vérité, une seule définition,
un seul concept.
Cette situation s’explique par le fait que jusqu’à présent le marché OLAP était un marché de niche. Ce marché est désormais en plein boom comme le montre le graphique ci-dessous : |
Devant un tel essor du marché OLAP, et
plus globalement, face à une tendance de progression de l’informatique
décisionnelle, il est important de s’intéresser aux technologies OLAP et
aux concepts qui y sont rattachés.
Il est cependant encore difficile de se procurer un ouvrage sur OLAP en France. Mes recherches documentaires ont été très difficiles. Pratiquement l’intégralité des informations a été trouvée sur l’Internet et notamment sur des sites américains. Ce mémoire constituera une bonne première base écrite sur OLAP pour les personnes intéressées par les technologies de système de base de données et par le décisionnel. L’objectif de cet écrit est de présenter l’état de l’art de la technologie OLAP. Il s’agit de comprendre la technologie multidimensionnelle, de comprendre les règles OLAP et d’évaluer les bénéfices d’une telle organisation de données. Nous poserons donc tout d’abord les concepts OLAP et les définitions de base à connaître. Nous présenterons ensuite en détails, les règles d’un système OLAP, ses architectures et leurs bénéfices et inconvénients. Puis nous ferons un panorama des outils et analyserons l’évolution du marché OLAP. |
|
|
|
|
Le concept OLAP avait été posé
longtemps avant que la technologie ne soit définie officiellement. La
naissance de OLAP fût en 1993 lorsque la société Arbor Software demanda à
E.F. Codd de formaliser les caractéristiques d’un produit ou d’un système
OLAP. 12 règles avaient été définies, mais elles furent d’emblée très
controversées et mal acceptées par les spécialistes, car ces règles
étaient commanditées par une entreprise. Même si ces 12 règles ne peuvent
pas être considérées comme ayant une valeur académique, elles sont
néanmoins une référence, et sont présentées par tous les éditeurs de
solutions OLAP. Ces 12 règles furent enrichies en 1995 par le même E.F.
Codd.
Les fonctions de bases sont le noyau de la théorie OLAP et de l’analyse multidimensionnelle. Il y a deux concepts clef à garder en mémoire lorsque que l’on apprend OLAP : un système OLAP doit permettre l’accès à beaucoup d’utilisateur à la même donnée. Un système OLAP doit également permettre à un utilisateur d’obtenir le plus d’informations possibles par l’analyse d’une seule donnée. OLAP contient l’idée qu’un individu va pouvoir obtenir le maximum d’information à partir d’une donnée s’il y a accès de n’importe qu’elle manière qu’il le souhaite. L’utilisateur doit pouvoir suivre ses idées en analysant une donnée et le produit OLAP doit être capable d’y répondre. Un modèle multidimensionnel : la multidimensionnalité est la clef de la technologie OLAP. OLAP n’est que purement et simplement une base de données multidimensionnelle. Il y a des produits OLAP qui ont la capacité de stocker des données dans une base de données relationnelle tout en fournissant des vues multidimensionnelles de données. C’est la vue conceptuelle qui est importante. La multidimensionnalité est essentielle, car un système OLAP reflète de la nature multidimensionnelle des données entreprise. Du plus elle est intuitive pour un utilisateur. Une manipulation intuitive des données : Alors que les vues multidimensionnelles de données sont un bénéfice pour le stockage de données et pour le temps de réponse des requêtes, la manipulation intuitive des données tend à contribuer à une bonne analyse. Il est naturel pour une personne, de lire un tableau ou un graphique, et de vouloir approfondir la vision d’une donnée ou d’un groupe de données. Avec un outil OLAP, il suffit d’un simple double - click sur la souris afin de ’’dérouler’’ une valeur, un sous-ensemble de données ou de changer tout simplement d’axe d’analyse sur un graphique. Cette règle permet d’éviter les procédures compliquées pour changer de vue. Accessibilité : en pratique, un analyste aura besoin de sources d’information très différentes, y compris des bases de données OLTP ou même des feuilles de calculs quelconques. Extraction en batch ou en ligne : cette règle contient l’idée d’une pré-agrégation des données et d’un accès en ligne des données, aussi bien que l’accessibilité en ligne de sources de données. L’extraction en batch fait référence à la capacité d’un produit à collecter les données de sources variées dans une base OLAP. L’extraction en ligne incombe l’accès à différentes sources de données lorsqu’elle est nécessaire pour une requête. Peu de produits offrent un choix flexible entre les deux. Idéalement un produit permettrait à un utilisateur de spécifier quelle donnée devrait être extraite en batch ou en ligne. En effet, un utilisateur peut avoir besoin d’obtenir des données historiques disponibles dans une base de données, mais par la suite peut vouloir accéder à des données fraîches dans un système OLTP. Des modèles d’analyse : OLAP est fait pour l’analyse, mais un système OLAP devrait supporter différents modèles d’analyse. Des exemples de modèles d’analyse sont les rapports statiques, les rapports qui permettent la pagination, la rotation et le déroulé, les projections, les budgétisations. Une architecture client-serveur : l’architecture client-serveur est importante pour un produit OLAP, dans le sens que c’est le meilleur moyen de déploiement de l’information à un grand nombre d’utilisateur. Dans l’optique de produire des résultats cohérents, les analystes devraient avoir accès à la même information. Il est également plus efficient dans l’optique de la base de données d’avoir une seule consolidation et centralisation de données à un endroit. Transparence du serveur : cette nécessité de transparence vient de la capacité des produits OLAP à avoir une variété de clients différents. Un client peut être une application, une feuille de données ou encore un explorateur Internet et peut être créé par un utilisateur ou par un autre éditeur. En raison de la grande variété possible de clients, il est important que le produit OLAP assure des fonctionnalités OLAP à l’utilisateur quel que soit l’accès utilisé. Il ne doit pas y avoir de perte de fonctionnalité quel que soit le client utilisé. Multi-utilisateur : un produit OLAP robuste permettra un accès multiple de manière concurrentielle à une donnée. Cela inclus également la capacité d’un serveur à autoriser des utilisateurs à se servir de différents modèles d’analyse. Les fonctionnalités de reporting Les fonctionnalités de reporting sont inhérentes à un bon produit d’analyse. Bien que le style des rapports soit complètement libre, certaines règles devraient être respectées dans l’optique d’une adéquation complète avec les fonctionnalités OLAP. Une souplesse d’affichage et d’édition : la nature ad hoc de l’analyse requise pour les produits OLAP, nécessite qu’un outil de reporting soit flexible. Un utilisateur devrait être libre de faire apparaître un cube de n’importe quelle façon, c’est-à-dire qu’il devrait n’y avoir aucune contrainte sur l’arrangement des dimensions sur les axes d’une table, et l’utilisateur doit pouvoir faire des rotations et des coupes sur les cubes affichés. Une performance de reporting uniforme : afin d’éviter des perturbations de flux lors des routines d’analyse, le temps nécessaire à un outil pour présenter un rapport doit être uniforme. Cela signifie qu’une requête doit être exécutée à une allure uniforme, et de même pour le rapport généré. Gestion des données éparses : chaque base de données à une configuration optimale, déterminée par le nombre de dimensions et par la quantité de données qu’elle contient. Pour le temps de réponses et le stockage de données, une base de données devrait se baser sur ces facteurs. Un système OLAP doit donc ajuster son schéma physique automatiquement pour s’adapter au type de modèle d’analyse, au volume des données et au données dispersées. Une dimensionnalité générique : cette règle tend à stipuler que toutes les dimensions sont équivalentes, et qu’une opération effectuée sur une dimension peut l’être sur n’importe qu’elle autre dimension. Des règles ou opérations spécifiques peuvent être définie pour une dimension, mais ces règles doivent pouvoir être étendues à d’autres dimensions. Des dimensions à niveaux multiples : idéalement, un produit OLAP devrait permettre à un utilisateur de définir autant de dimensions qu’il est nécessaire pour répondre à la réalité. Dans chaque dimension, l’utilisateur devrait également pouvoir déterminer le nombre de niveau d’agrégation Opérations sur les dimensions : toutes formes d’opérations doivent êtres possibles à travers toutes les dimensions. Toutes ces règles constituent une référence et sont présentées par de nombreux fournisseurs de systèmes OLAP dans leurs pages blanches. Naturellement, chaque fournisseur ne respecte pas intégralement l’ensemble de ces règles. Elles constituent cependant avec l’évolution actuelle du marché et la prolifération de produits de tout genre, un moyen de contrôle, un ensemble de critères qui permettent de déceler si un produit est véritablement, un produit OLAP ou non. Il est nécessaire à présent de se positionner d’un point de vue pratique, et de présenter les composants d’un système OLAP. Les composants d’un système OLAP Un système OLAP est composé de différents éléments. Une vision globale du système permet de mettre en évidence une architecture générale : des sources de données, un serveur OLAP et des clients. Les données à analyser sont transférées ou copiées dans le serveur OLAP, où elles sont organisées et préparées pour optimiser les requêtes. Le client est l’interface du serveur OLAP. La source d’un système OLAP dépend de l’utilisation du produit OLAP qui en est faite, il peut s’agir d’un data warehouse, d’une base de données quelconque d’une entreprise, d’une collection de feuilles de calculs contenant des données financières ou encore n’importe quelle combinaison des sources précitées. La capacité d’un produit OLAP à exploiter des données provenant d’un grand nombre de sources est importante. L’idée est d’éviter que toutes les sources de données soient stockées dans un format particulier ou dans une base de données particulière, car c’est un inconvénient pour les administrateurs de base de données et cela réduit la puissance et la flexibilité d’un produit OLAP. Le noyau d’un système OLAP est son serveur. Tout le ‘’travail’’ est effectué par le serveur, c’est également l’endroit où les données sont stockées. Différentes philosophies régissent l'architecture du serveur OLAP. Un des aspects important est de décider si le serveur emploie une base de données multidimensionnelle (MDDB) pour enregistrer les données ou une base de données relationnelle (RDB). Les deux solutions architecturales se dénomment respectivement MOLAP et ROLAP. Le système MOLAP est le plus courant et est synonyme de OLAP. La finalité de cette solution est claire. On peut stocker efficacement des données qui sont de nature multidimensionnelle, et fournir des temps de réponses de requêtes très rapides. Les données sont transférées d’une source de données dans une base multidimensionnelle, et ensuite seulement, le système procède à l’agrégation des données. Cette préparation des données est la technique qui permet aux requêtes OLAP d’avoir des temps de réponse courts, puisque le calcul des données récapitulatives est déjà effectué. Le temps de réponse à une requête est alors uniquement fonction du temps requis pour accéder à une donnée élémentaire. L’approche MOLAP s’appuie également sur l’idée d’effectuer le travail une seule fois et d’utiliser les résultats indéfiniment. Les bases de données multidimensionnelles sont issues d’une technologie relativement récente. L’utilisation des bases de données multidimensionnelles implique les même inconvénients que l’utilisation de la plupart des autres nouvelles technologies. Par ailleurs, elles ne sont pas aussi
robustes que les SGBDR et ne sont pas optimisées jusqu’au même degré. Un
autre inconvénient est que la majorité des bases de données
multidimensionnelles sont incapables d’être interrogées pendant qu’elles
procèdent à l’agrégation des données, donc un laps de temps est nécessaire
avant que de nouvelles informations soient disponibles pour une
analyse.
Le phénomène d’explosion de base de données est un des problèmes typiques aux bases de données multidimensionnelles. Bien que ce soit un phénomène connu, il est toujours difficile de l’expliquer lorsque cela arrive. Contrairement à la désinformation perpétrée par les vendeurs de solutions d’architecture différentes de MOLAP, il a été conclue officiellement que le phénomène d’explosion n’est pas dû à la mauvaise gestion des données éparses, ni au stockage multidimensionnel, ni à un manque de compression des données et ni à des erreurs logiciels. Tout comme les systèmes ROLAP ou les systèmes hybrides, le système MOLAP puise les données de sources extérieures variées. La différence essentielle est que ce système MOLAP, effectue toujours une copie des données puisqu’elles sont traitées et optimisées dans le processus multidimensionnel. Les études montrent que les mêmes informations stockées dans une base multidimensionnelle prennent deux à cinq fois moins de place que dans un SGBDR. Le problème ne se pose donc pas au niveau du concept même de l’architecture MOLAP. Nous avons vu que les applications OLAP sont destinées à une utilisation interactive, donc l’utilisateur est en droit d’attendre des temps de réponses très court pour ses requêtes. Chose qui est assez simple s’il s’agit uniquement d’extraire l’information d’une base, de la reformater et de la présenter à l’utilisateur, mais qui prend largement plus de temps si une bonne partie du calcul est au service de la requête. Cela pourrait en effet, impliquer des consolidations de hiérarchies, des calculs de variance, des analyses de tendances, de dérivation de mesures, etc. Ce n’est pas le calcul arithmétique qui a un coût, mais les extractions des données concernées pour ces calculs. Ici encore, même si les différences d’implémentation entre un système MOLAP et un système ROLAP sont importantes (la technique de préparation des données pour MOLAP et les tables de sommaires pour ROLAP) le phénomène d’explosion n’en ai pas la conséquence. Les spécialistes OLAP ont déterminé que le problème est la résultante des relations multidimensionnelles croisées existantes dans toute application OLAP, du fait que les données de référence sont toujours très éparses. Par conséquent, les valeurs de référence distribuées peuvent contenir des centaines de cellules dépendantes du fait qu’elles apparaîtront dans des hiérarchies pour chaque dimension. Le pré-calcul basé sur des données multidimensionnelles éparses peut donc engendrer un volume de stockage bien plus important que prévu et ceci encore indépendamment de la technologie de stockage utilisé. Les études démontrent les ratios de multiplication suivants.
Plus les données de références sont éparses, plus le facteur de multiplication du volume d’une base multidimensionnelle est important. Le graphique ci-dessus à été obtenu par l’exécution de 120 simulations avec des cellules de données générées aléatoirement. Comme le montre le graphique ci-dessous, le phénomène de données éparses est fonction également des niveaux de hiérarchisation, ce qui amplifie le risque d’explosion.
Deux concepts sont proposés pour éviter ce problème d’explosion. Eviter d’une part, de pré–calculer tous les objets multidimensionnels qui contiennent plus de 5 dimensions éparses. C’est–à–dire de permettre également des calculs à la volée. Et réduire d’autre part, la dispersion d’objets individuels en utilisant une approche de multicube, c’est–à–dire que chaque objet a un nombre minimum de dimensions nécessaires. Différentes solutions ont été déjà apportées par les fournisseurs de solutions OLAP, comme un optimiseur d’agrégation par Informix ou l’optimisation automatique des agrégations par partitionnement fourni par les services OLAP de Microsoft. Si l’architecture MOLAP constitue encore le choix technique le plus utilisé, l’alternative ROLAP acquière ses lettres de noblesses. Le terme ROLAP, que nous avons précédemment expliqué, signifie que le serveur OLAP s’appuie sur une base de données relationnelle. Les sources de données sont entrées dans une base de données relationnelle, généralement dans le moule d’un schéma en étoile ou en flocon, ce qui permet d’améliorer les temps d’accès. Le schéma en étoile consiste à grouper les indicateurs de base dans une table centrale appelée table de faits. Ces indicateurs partagent le même ensemble de dimensions et ne peuvent êtres déduits d’autres indicateurs. L’identifiant de cette table de faits est une clé multiple composée de la concaténation des clés de chacune des dimensions d’analyse. Autour de cette table figurent tous les éléments caractérisant les dimensions d’analyse. Ces caractéristiques sont regroupées dans des tables de dimension. Le modèle en flocon est dérivé du modèle en étoile. Le flocon est simplement une étoile dont les branches sont elles-mêmes décomposées en sous - hiérarchies. Les tables de dimension sont donc éclatées en sous – tables. On introduit la notion de hiérarchie au sein d’une dimension. Il y a un bon nombre de raisons à choisir une base de données relationnelle pour le stockage par rapport à une base multidimensionnelle. Un SGBDR est une technologie maîtrisée, et optimisée, il supporte de plus grandes capacités de données. L’argument majeur contre l’utilisation
de cette architecture est qu’exécuter des requêtes SQL dans ce genre de
base de données afin d’obtenir des données récapitulatives, nécessite des
requêtes complexes.
Les autres architectures : DOLAP, HOLAP DOLAP (Destktop OLAP) décrit une catégorie de produits qui ne sont pas nécessairement connectés à un serveur. Ils peuvent essentiellement être exécutés sur un client avec la possibilité de s’appuyer sur une source de données sous la forme d’un ’’Data Cube’’. Le fait que ce cube de données soit construit et stocké localement sur une machine utilisateur, fait de l’architecture DOLAP un bon choix pour ceux qui utilisent fréquemment un ordinateur portable ou qui n’ont pas besoin de faire des calculs complexes pour lesquels la puissance d’un serveur serait nécessaire. HOLAP, pour Hybride OLAP est en fait une architecture hétérogène composée de tout ou partie des architectures précitées. Nous verrons par la suite de cet exposé, l’état du marché OLAP et les offres de produits issues de ces architectures. Le client est le composant utilisé pour visualiser et manipuler les données d’une base OLAP. Un client peut être aussi simple qu’une feuille de calculs qui intègre des fonctionnalités OLAP telles le pivotement et le déroulement des données, il peut être un outil de reporting spécialisé ou encore une application OLAP spécifiquement développée pour des manipulations de données plus élaborées. Le web est la forme la plus récente de client OLAP. Tandis que le serveur est l’élément qui fournit l’épine dorsale d’une solution OLAP, les éléments en aval sont également importants. Le serveur peut être une bonne base pour une manipulation de données facile, mais si les éléments en aval sont compliqués ou incomplets dans leurs fonctionnalités, alors l’utilisateur ne bénéficiera pas de toute la puissance du serveur. Le client OLAP est si important, que certains fournisseurs OLAP se concentrent exclusivement sur les éléments en avale du serveur. Ces applications clientes se caractérisent par une interface travaillée et conviviale, par la mise à disposition de fonctions et de structures prédéfinis, ainsi que par la proposition de solutions à des situations plus ou moins standards. En particulier, les packages financiers sont très populaires. Une application financière préétablie permettra à beaucoup d’utilisateurs de se servir d’outils financiers les plus courants sans avoir à concevoir la structure de la base de données ni les rapports. Un outil de requête ou un outil de reporting est une forme simple d’accès à des données OLAP. Ce sont des outils conviviaux qui permettent la création de rapports par de simples cliquer - glisser. Un éditeur de rapports traditionnel permet à un utilisateur de produire uniquement un document statique, tandis que les applications de reporting qui supportent la technologie OLAP produisent des rapports interactifs. Ces applications permettent les techniques du déroulement des données directement sur le rapport, et supportent les hiérarchies, etc. Des add-ons OLAP sur les feuilles de calculs Enormément de sociétés utilisent actuellement les feuilles de calculs pour effectuer différentes formes d’analyses sur les données entreprises. D’un certain point de vu, c’est la manière idéale de créer et de visualiser des données. Les analystes peuvent créer des macros pour traiter les données comme ils le souhaitent, des modèles peuvent êtres conçus pour la saisie de données et le traitement des calculs. Mais quoi qu’il en soit, on arrive à des rapports ‘’plats’’, dans le sens qu’une fois que le rapport est généré, il est difficile de le visualiser sous différents aspects. C’est-à-dire que si un graphique contient des informations mensuelles, une personne qui désirera visualiser les données par jours devra recréer entièrement le graphique. Lorsque les fonctionnalités OLAP sont rajoutées à ces feuilles de calculs, alors le même graphique peut être générer et n’importe quelle manipulation sur celui-ci peut être opérée pour obtenir l’information désirée. Le dernier arrivé dans la famille des clients OLAP est le web. Il y a un grand nombre d’avantages à déployer OLAP via le web. L’avantage le plus signifiant c’est qu’aucun logiciel particulier n’est nécessaire à une personne pour accéder à l’information. Ce qui permet d’économiser beaucoup de temps et d’argent pour une société. On trouve actuellement des produits Internet - OLAP très différents. Certains permettent de créer facilement des pages web, mais ne sont pas très flexibles. D’autres permettent de créer des vues de données, puis de les sauvegarder sous le format HTML. Ceux-là permettront de visualiser des données sur le web, mais ne permettront pas de les manipuler de manière interactive. D’autres produits par contre, sont entièrement interactifs et dynamiques ce qui les rendent complètement fonctionnels. L’utilisateur disposera de toutes les fonctionnalités OLAP. Il est donc nécessaire de définir clairement les besoins avant de choisir un déploiement OLAP sur le web. Les applications sont un type de client qui utilisent des bases de données OLAP. Elles sont similaires à des outils de requêtes ou à des outils de reporting comme précédemment vu, mais elles comportent des fonctionnalités beaucoup plus approfondies. Les applications OLAP sont plus robustes qu’un simple outil de reporting. Les fournisseurs de produits OLAP mettent souvent à la disposition de leurs clients des outils de développement afin qu’ils puissent créer leurs propres applications OLAP. Il s’agit souvent d’un environnement de développement constitué d’une interface graphique qui supporte le développement orienté objet. Il existe un guide API OLAP qui en est à sa deuxième version et qui est fournie par le conseil OLAP (MDAPI 2.0). Ce document modélise en UML toutes les méta données, requêtes et éléments d’infrastructure. Son but est de fournir aux clients tous les éléments pour développer eux-mêmes des outils de d’interrogations des bases de données OLAP. Le MDAPI supporte les plates-formes JAVA et COM et fournie l’implémentation de session et toute la collection d’objet nécessaire. Il comporte également tous les éléments nécessaires à la connexion au serveur, à la synchronisation des opérations. Sans avoir l’intention de présenter les 229 pages de ce document, il est intéressant à titre d’information de présenter le modèle de données MDAPI 2.0 :
Le MDAPI permet donc le développement de nouveaux clients OLAP, pour des besoins spécifiques aux entreprises. Différents environnements de développement sont proposés par les éditeurs de solutions OLAP. Au-Delà de ces interfaces, il est intéressant de présenter un panorama des outils existants sur le marché. |
|
|
Les différents vendeurs du marché
implémentent OLAP sur l’idée personnelle qu’ils se font du meilleur
produit OLAP. C’est la raison pour laquelle il est apparût différentes
solutions, différentes architectures que nous avons présentées
précédemment. Ces approches différentes portent tant sur les MDDB que sur
les SGBDR ou encore sur les applications qui comportent des
fonctionnalités OLAP à des niveaux différents.
Bien que la compréhension de ces différentes approches théoriques soit importante, il a fallu trouver un moyen objectif de les évaluer dans une logique de marché. Le Conseil OLAP créé en janvier 1995 pour servir de guide industriel et d’interlocuteur avec les clients a développé pour cette raison l’APB-1. L’APB-1 est un banc d’essai qui permet de comparer quantitativement la performance des différents produits OLAP du marché. Le banc d’essai spécifie les paramètres d’une base de données ainsi qu’une dizaine de requêtes représentatives d’une activité normale en entreprise. Une simple mesure l’AQT (durée moyenne de requête) est générée en se basant sur le temps écoulé pour charger une base de données, pour procéder à l’agrégation des données et pour exécuter une requête. Des règles sont également définies pour déterminer les opérations autorisées pour les tests, comme le pré-calcul de données ou pour autoriser tel ou tel stockage de données pré-calculées. Malheureusement l’APB-1 n’est utile que pour les serveurs OLAP, or une bonne partie du marché OLAP est constitué des clients et applications OLAP. De plus ce banc d’essai ne prend pas en compte l’aspect de la configuration matérielle ce qui lui laisse une valeur de référence toute relative. Oracle est la société leader avec son offre Express avec une part de marché de 20.7% en 1997. Oracle a acquis Express de la société IRI Software en 1995. Il y a deux serveurs OLAP dans l’offre d’Oracle. Express Server constitue l’offre principale d’Oracle. Il fournit un système de base de données multidimensionnelle et constitue le noyau OLAP autour duquel tous les autres produits OLAP gravitent. Oracle propose également Personnal Express qui n’est autre qu’un serveur Express fonctionnant localement sur un poste client. Le point marquant qui le distingue des
autres produits est la grande capacité de Express Server à
s’appuyer sur une source de données très variée. Les données pour son
système multidimensionnel peuvent être collectées à partir d’une base de
données relationnelle par l’outil Express Relational Access
Manager. Les données peuvent également être collectées d’autres MDDB,
de feuille de calculs ou tout autre fichier ’’plat’’.
L’administration et la maintenance d’une base de données Express et effectuée par l’utilisation de Express SPL ou Stored Procedure Language. Ce langage de procédures stockées sert à définir des dimensions, à définir des routines d’extraction de données, à définir l’organisation de la base et à encore bien d’autres tâches. L’utilisateur peut développer des applications OLAP spécifiques grâce à Express Objects. Cet outil fournit une interface graphique pour les développeurs et permet l’approche objet pour le développement d’applications. Une API est également fournie pour permettre aux développeurs d’accéder à une base de données Express de différentes manières. Il y a deux applications clé en main proposées par Oracle : un analyseur financier et un analyseur des ventes. Ces applications utilisent Express Server pour accéder aux données et contiennent des fonctionnalités de reporting spécifiques aux milieux financiers. Elles ont également toute une panoplie de fonctions dédiées à l’analyse financière. Web Agent et Web Publisher sont les deux outils web proposés par Oracle. L’utilisation de l’un de ces deux outils permet à l’utilisateur de créer un site web qui s’appuie sur toutes les possibilités offertes par OLAP de manière dynamique ou interactive. Web Agent est plutôt dédié aux développeurs et contient une palette de procédures prédéfinies dans Express SPL. Des sites web peuvent êtres créés comme des interfaces à l’accès à une base OLAP. Web Publisher est dédié à l’utilisateur final. Il inclut Express Analyzer et permet à ceux qui ont une expérience en développement moindre à créer leurs propres sites web interactifs. Arbor Software Corporation est le principal concurrent d’Oracle. Son produit principal est l’offre serveur : Essbase Server. Arbor est l’épine dorsale de beaucoup de produits OLAP, ce qui signifie qu’un certain nombre de fournisseurs de solutions OLAP s’appuient sur Essbase Server comme support de données en vendant leurs produits clients. Comme exemples peuvent êtres cités la société Comshare qui propose un composant web au produit Arbor ou CrystalInfo développé par Seagate Software. Le serveur OLAP d’Arbor est
Essbase qui en est à sa version 5. Arbor a implémenté une variété
de possibilité de sécurisation, en permettant par exemple à
l’administrateur de spécifier des permissions d’une cellule donnée.
L’utilisateur peut également être mené à entrer un mot de passe pour
pouvoir avoir accès à une donnée particulière que ce soit en lecture seule
ou en lecture/écriture. Les mots de passes peuvent expirer après un délai
défini ou après une période définie d’inactivité de l’utilisateur. Toutes
ces fonctionnalités permettent à l’administrateur d’avoir une politique de
sécurité flexible pour sa base de donnée.
![]()
Arbor propose plusieurs outils connexes à son offre Essbase : Essbase Spreadsheet Add-in qui permet aux feuilles de calculs de bénéficier de toute la puissance de OLAP, Wired for OLAP qui est un outil d’analyse et de reporting, Crystal Info for Essbase qui est un outil de reporting et de planification et SQL Drill-Through qui permet aux utilisateurs de visualiser les données d’un SGBDR avec les fonctionnalités OLAP. Arbor propose depuis peu Essbase Adjustment Module qui est une application qui assiste l’utilisateur dans la présentation de rapports. Essbase Objects est un outil puissant que les développeurs peuvent utiliser pour créer des applications en utilisant Essbase comme support de données. Cet outil est orienté objet et permet l’utilisation de contrôles ActiveX. Le code Essbase est compilé de manière optimale pour une utilisation du serveur Essbase. Il comprend également une extension pour les feuilles de calculs. Un API est disponible et permet l’interfaçage d’une base Essbase avec un programme C/C et Visual Basic. La société Applix offre un produit unique dans le sens que leur serveur OLAP n’utilise pas de pré-agrégation de données ou d’extraction en batch. Elle a introduit le concept de RAP suivant lequel toutes opérations OLAP se fait en temps réel. Dans le serveur OLAP TM-1 d’Applix, seules les données explicites sont sauvegardées dans un cube multidimensionnel ce qui permet de conserver une taille de la base de données petite. Lorsque l’utilisateur exécute une requête, le serveur répond soit en extrayant la valeur ou en la calculant. Le RAP a ses avantages et ses inconvénients. L’un des avantages est que la menace d’explosion de base de données est inexistante. Naturellement ce concept semble à première vue contradictoire avec le concept OLAP. Mais finalement l’idée d’une MDDB est que si les données sont optimisées c’est pour obtenir des temps de réponses minimums. Le serveur OLAP TM-1 d’Applix utilise en fait la mémoire vive d’un ordinateur pour optimiser les données ce qui lui permet d’avoir des temps de réponses tout aussi court. TM-1 permet cependant de stocker
les vues qui nécessitent des temps de calculs plus longs et ce qui
représente selon la société environ 10% de la taille de la base de
données.
Le client TM-1 est une interface basée sur une feuille de calcul ayant des fonctionnalités OLAP. Un nombre important de sociétés comme Comshare, Arcplan, Creeth, Richmon and Associates, fournissent des clients interfacé avec le serveur TM-1 dans leurs solutions OLAP. L’API TM-1 et TM1- ShowBusiness fournissent des outils de développement pour des applications OLAP spécifiques. TM-1 ShowBusiness est une interface graphique permettant la programmation orientée objet. Il comprend des outils de présentations graphiques et de reporting. Lotus Notes peut être interfacé avec une base TM-1. Bien d’autres sociétés ont une offre MOLAP, mais celles présentées précédemment constituent la majorité des parts de marché. Ainsi concernant l’offre ROLAP du marché, nous présenterons que le leader du marché dans ce segment. MicroStrategy est le leader dans l’industrie ROLAP. L’utilisation d’un système de base de données relationnelle OLAP lui permet de gérer de très grandes bases, ce qui constitue un atout important. Le serveur DSS est le produit majeur de toute la gamme de produit de l’offre MicroStrategy. Il permet à ses clients d’accéder à une base de données relationnelle de manière multidimensionnelle. DSS Server comprend une grand nombre de pilotes qui lui permettent d’accéder à d’autres SGBDR (Oracle, DB2, Sybase, Red Brick, Informix, etc.) DSS Server supporte également les très grandes bases de données de l’ordre du téraoctet. DSS Agent est l’outil client de DSS Server. Une des fonctionnalités intéressantes de DSS Agent c’est qu’il utilise des agents intelligents pour automatiser des processus. Ainsi les tâches répétitives d’analyse des données seront automatisées. DSS Executive utilise la puissance de DSS Agent pour fournir des fonctionnalités de reporting très élaborées et des outils d’analyse. DSS Objects permet le développement de nouvelles applications OLAP autour de DSS Server. Cet outil de développement permet l’utilisation de langages tels que Visual Basic, Delphi et C/C pour accéder au serveur DSS Server. MicroStrategy ne propose guère d’applications ou de suite logiciel. DSS Broadcaster est un simple outil qui permet de transmettre des informations d’une base vers différents canaux tels que le courrier électronique, le fax, le SMS sur les téléphones mobiles, etc. Son offre est le produit DOLAP par excellence, ce qui signifie que la majorité des opérations sont exécutées localement par opposition à une configuration client / serveur. Son produit : Impromptu est un outil de requêtes qui est utilisé pour extraire les données d’une base de données multidimensionnelle. Ces données sont ensuite transférées dans PowerPlay qui n’est autres qu’un cube, un support de stockage des informations sur une machine locale. La présentation précédente des offres OLAP n’est naturellement pas exhaustive, face à la multitude d’acteurs sur le marché. Le tableau suivant présente néanmoins un
récapitulatif des offres précédentes, ainsi que la présentation 3 autres
sociétés.
L’arrivée de Microsoft sur le marché OLAP avec sa nouvelle offre Plato qui intègre des services OLAP dans SQL Server 7 produit un grand choc. Ce n’est pas au niveau technologique que Microsoft a bousculé le marché, car Plato est un système hybride sur basant sur SQL serveur et réorganisant les données dans un mode qui facilite l’analyse. Les postes clients compatibles avec l’API OLE DB for OLAP pourront générer des requêtes et naviguer dans un volume multidimensionnel. C’est essentiellement au niveau stratégie de marché que Microsoft ébranle le marché OLAP, car son offre représente un coût très modéré et le produit SQL Serveur est très répandu dans les PME. En fait, Microsoft banalise la fonction OLAP, la démocratise, une étape que tous les autres éditeurs du marché n’ont pas encore franchi. |
|
|
L’Etat de l’Art de la technologie OLAP
ainsi présenté, nous fait bien comprendre l’importance qu’a prise cette
technologie dans le monde de l’informatique décisionnelle. La progression
du marché démontre un intérêt certains des entreprises à OLAP.
Cependant bien des faits peuvent inquiéter ces mêmes entreprises à l’égard de cette technologie : je pense surtout à l’hétérogénéité des architectures, à l’atomicité des offres du marché et notamment au niveau des solutions applicatives. Face à cette atomicité des offres, les entreprises devront faire des choix judicieux afin d’éviter les pièges et choisir le bon produit. A ce titre certains points devront êtres considérés :
En fonction des besoins de l’utilisateur, il est préférable d’avoir un outil de reporting robuste ou d’avoir la possibilité de produire et publier dynamiquement des pages web. Le besoin est peut-être même nécessaire à l’utilisateur de créer ses propres applications facilement et rapidement. Ceci est le facteur majeur qui détermine le choix d’une base de données OLAP. Les produits ROLAP permettent de gérer plus efficacement les grandes bases de données. Le niveau d’expertise de l’utilisateur est important car il détermine le choix du frontal d’un système OLAP. Certains utilisateurs sont plus à l’aise avec une feuille de calculs, tendis que d’autres préfèrent des applications spécialisées. Une étude effectuée en Europe par Sqribe Technologies et Deloitte et Touche a permis de mettre en évidence plusieurs problèmes : Selon l’étude, la réduction du surcoût généré par ces problèmes passe par le recours à l’intranet. L’objectif est d’accéder via une interface simple et cohérente, aux applications permettant d’éditer les rapports. Un nouveau concept est né : le Web reporting. Le marché OLAP évolue donc au niveau applicatif. On trouvera désormais deux types d’applications multidimensionnelles : les applications de reporting et celles destinées à l’analyse. Les premières permettent de naviguer dans les données de l’entreprise, notamment dans les données financières, et servent au pilotage de l’entreprise. Les deuxièmes permettent des modélisations complexes, utiles par exemple pour élaborer des budgets. Dans notre réflexion sur OLAP, il est également facilement concevable, que la technologie OLAP n’en soit encore qu’à ses débuts, son coût est très élevé et les éditeurs ont chacun leur solution propre : l’offre OLAP actuelle s’adresse presque exclusivement aux grands comptes. Mais nous l’avons vu, l’arrivée de Microsoft sur le marché OLAP, va permettre de rendre la technologie OLAP accessible aux PME. Inévitablement cette arrivée va structurer et clarifier le marché. C’est en effet déjà le cas, puisque nous pouvons constater des opérations de rachats comme celle d’Arbor Software (8% du marché) par Hyperion (16.7% du marché), des opérations de fusions ou même d’assainissement du marché. Quel que soit le destin de la technologie OLAP, cette vision conceptuelle de l’organisation des données en plusieurs dimensions dans une application informatique est néanmoins fascinante. Et on comprend bien dans cette idée, le désire idyllique de trouver une réponse la plus parfaite que possible aux besoins de l’utilisateur. Cette question essentielle qui trop souvent est oubliée par les Hommes du métier de l’informatique : à quoi ça sert ? |
|
|
Agrégation : action de calculer les valeurs associées aux positions parents des dimensions hiérarchiques. Cette agrégation peut être une somme, une moyenne ou tout autre processus plus complexe comme la deuxième plus forte valeur. Attribut : un fait décrivant chaque position d'une dimension. Cellule : une donnée définie par une position de chaque dimension. Les cellules d'un hypercube peuvent être vides ou remplies. Lorsqu'un grand nombre de cellules sont vides, on parle de données éparses. Datamart : l'ensemble des données se rapportant à un des métiers de l'entreprise. Plusieurs datamart forment le datawarehouse de l'entreprise. Datawarehouse : entrepôt de données. Ce terme anglais est utilisé pour désigner l'ensemble des informations d'une entreprise, enregistrées sous un format informatique. Dimension : un ensemble de données du même type, permettant de structurer la base multidimensionnelle. Une dimension est parfois appelée un axe. Chaque cellule d'une mesure est associée à une seule position de chaque dimension. Temps, pays, produit sont des dimensions classiques. DOLAP : Desktop OLAP. Ce terme désigne un petit produit OLAP faisant de l'analyse multidimensionnelle en local. Il peut y avoir une mini base multidimensionnelle (façon Personal Express) ou bien de l'extraction de cube (façon Business Objects). DSS : Decision Support System ou système d'information décisionnel. C'est un système d'interrogation et de présentation des données adapté pour l'aide à la décision. Le terme français équivalent est SIAD ou Système d'Information d'Aide à la Décision. Un autre terme anglais est EIS ou Executive Information System. EIS : Executive Information System. Le terme anglais plus courament utilisé est DSS ou Decision Support System. FASMI : Fast Analysis of Shared Multidimensional Information ou analyse rapide d'information multidimensionnelle partagée. Ces cinq termes ont tous leur importance dans la définition de la technologie OLAP. Formule : C'est un hypercube virtuel, c'est à dire que les valeurs obtenues sont le plus souvent calculées à la volée mais non stockées dans la base de données. Hiérarchie : Les positions d'une dimension organisées selon une série de relations 1-n en cascade. Cette organisation de données est comparable à un arbre logique ou chaque membre n'a pas plus d'un père mais un nombre quelconque d'enfants. HOLAP : Hybrid OLAP. Désigne les outils d'analyse multidimensionnelle qui récupèrent les données dans des bases relationnelles ou multidimensionnelles, de manière transparente pour l'utilisateur. Hypercube : Une construction multidimensionnelle formée de la conjonction de plusieurs dimensions. Chaque cellule est définie par un seul membre de chaque dimension. MDB : Multidimensional DataBase. Permet le stockage, le traitement et la restitution de données multidimensionnelles. Mesure : Un hypercube, le plus souvent de type entier ou décimal, structurée par des dimensions. Salaire, Prix, Quantité, Coût sont des mesures classiques. MOLAP : Multidimensional OLAP. Ce terme désigne plus spécifiquement une technologie de stockage cartésien. MOLAP s'oppose à ROLAP. Pour le premier, les jointures sont déjà faites, ce qui explique les performances. Dans le second, les jointures entre les tables de dimension et de fait sont effectuées au moment de la requête. Multicube : Une construction multidimensionnelle formée de plusieurs hypercubes partageant certaines dimensions. Multidimensionnel : Structure de données ayant au moins trois dimensions indépendantes. OLAP : Littéralement, On-Line Analytical Processing. Désigne une catégorie d'applications et de technologies permettant de collecter, stocker, traiter et restituer des données multidimensionnelles, à des fins d'analyse. Une autre définition est résumée dans l'acronyme FASMI (Fast Analysis of Shared Multidimensional Information) ou analyse rapide d'information multidimensionnelle partagée. Position : Une valeur d'une dimension. RDBMS : Relational DataBase Management System. Permet le stockage, le traitement et la restitution de données stockées dans des tables relationnelles. Son équivalent français est SGBDR ou Système de Gestion de Base de Données Relationnelle. ROLAP : Relational OLAP. Il s'agit d'un ou plusieurs schémas en étoile stockés dans une base relationnelle. Cette technique permet de faire de l'analyse multidimensionnelle à partir de données stockées dans des bases relationnelles. SGBDR : Système de Gestion de Base de Données Relationnelle. Equivalant à RDBMS. SIAD : Système d'Information d'Aide à la Décision. Equivalant à EIS. Schéma en étoile : Arrangement de tables dans une base de données relationnelle. Au centre, on trouve la table de faits, dont les colonnes constituent les mesures du multidimensionnel. Les branches de l'étoile qui rayonnent à partir de la table de fait correspondent aux dimensions. Le modèle conceptuel de données permet de retrouver cette forme en étoile.
Variable : En général synonyme de mesure.
|
|
Le Data Warehouse,
Jean-Michel Franco, édition Eyrolles 1997.
Informatiques Magazine : 15 mai 1998. Informatiques Magazine : 15 septembre1998. Informatiques Magazine : 6 novembre 1998. Informatiques Magazine : 15 janvier 1999. Oracle Express Server Datasheet, Oracle Corporation, 1997. Adding Value to the Data Warehouse, Dave Menninger, Oracle, 1997. Enabling Better Business Decisions, Oracle OLAP Technology, 1997. The Essbase Product Family Datasheet, Arbor Software, 1997. Increasing Corporate Intelligence with the WWW, Arbor Software. TM-1 Datasheet, Applix, 1997. An explanation of multidimensional terminology & technology, Pilot Software. An Enterprise-Wide Data Delivery Architecture, MicroStrategy White Paper. The Case for Relational OLAP, MicroStrategy White Paper. DSS Server Datasheet, MicroStrategy. HyperionOLAP Technical Data, Hyperion Software. The OLAP Report: www.olapreport.com. Database Explosion, Pendse Nigel, 17 janvier 1998. Market Segment Analysis, Pendse Nigel, 18 janvier 1998. OLAP Applications, Pendse Nigel, 18 Janvier 1998. OLAP Architectures, Pendse Nigel, 18 janvier 1998. Market Share Analysis, Pendse Nigel, 1998. What's in a name?, Pendse Nigel, 1998. The OLAP Council: http://www.olapcouncil.org/. Providing OLAP (On-Line Analytical Processing) to User-Analysts, Codd, E.F., S.B. Codd, and C.T. Salley, E.F. Codd & Associates, 1993. Oracle OLAP: http://www.oracle.com/st/products/options/olap Arbor: http://www.arborsoft.com/ MicroStrategy: http://www.strategy.com/ Hyperion: http://www.hyperion.com/ Gentia: http://www.gentia.com/ Applix: http://www.applix.com/ Comshare: http://www.comshare.com/ Cognos: http://www.cognos.com/ The OLAP Report: http://www.olapreport.com/ The OLAP Council: http://www.olapcouncil.org/ |