Vous êtes sur la page 1sur 37

Acadmie de Montpellier e

Universit Montpellier II e
Sciences et Techniques du Languedoc

MEMOIRE DE STAGE DE MASTER M2


eectu a Montral e` e

Spcialit : Professionelle et Recherche unie en e e e Informatique

BiinTheCloud par Olivier BENDAVID

Date de soutenance : 18/06/10 Sous la direction de Alain APRIL

Rsum e e
Au vu de limportance des donnes accumules par les entreprises et de e e laugmentation de leurs besoins en analyse. Nous voyons appara de nomtre breuses solutions de business intelligence pour y rpondre. Ces solutions se e basent pour la plupart sur des syst`mes dinformations orients relationnel, e e syst`me dont les limites commencent ` tre prouve. Les temps dacc`s aux e ae e e e ressources deviennent trop long et certaines analyses sont trop complexes pour tre ralise par ces SGBD. Cest dans ce contexte que Google a mis e e e au point un nouveau type de SGBD ddi a administrer de grandes quantits e e` e de donnes (BigTable). e Par ailleurs la distribution de services commencent a prendre un nouveau ` visage avec le dveloppement du concept de cloud computing. Concept ayant e pour nalit de dissocier les ressources permettant de fournir un service du e consommateur. Nous avons travaill sur la conception dune solution de Busie ness Intelligence base sur le concept de cloud computing. Ainsi nous avons e ralis un prototype dont le syst`me dinformation est bas sur un SGBD e e e e NoSQL (HBase).

Abstract
Given the importance of stored data by companies and their increasing needs in analysis. We can see many business intelligence solutions coming out to address them. These solutions are based mostly on information systems oriented relational, system whose boundaries are beginning to be felt. The time for accessing resources become too long and some analysis are too complex to be performed by those DBMS. It is in this context that Google has developed a new kind of database for the purpose of administer large amounts of data (BigTable). Moreover, the distribution services are beginning to take a new look with the emerging concept of cloud computing. Concept whose purpose is to separate the resources and consumers to provide service. We have worked on the conception of a business intelligence solution based on the concept of cloud computing. So we made a prototype which information system is based on a NoSQL DBMS (HBase). ii

` TABLE DES MATIERES

` TABLE DES MATIERES

Table des mati`res e


1 Introduction 2 Etat de lart 2.1 Linformatique en nuage CLoud Computing . . . . 2.1.1 Les direntes couches de services dun cloud e 2.1.2 Les dirents niveaux de dploiement . . . . . e e 2.1.3 Les principaux avantages . . . . . . . . . . . . 2.2 Business Intelligence . . . . . . . . . . . . . . . . . . 2.2.1 ETL . . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Data Warehouse . . . . . . . . . . . . . . . . 2.2.3 Modlisation multidimensionnelle . . . . . . . e 2.3 SGBD NoSQL . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Quest-ce qui caractrise un SGBD NoSQL ? . e 2.3.2 Google : BigTable . . . . . . . . . . . . . . . . 2.3.3 Apache(HADOOP) : HBase . . . . . . . . . . 1 2 2 2 4 4 4 5 6 7 8 9 10 10 12 12 15 16 16 17 18 19 21 21 22 22 23 23

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

3 Les propositions 3.1 Architecture de la solution BI cloud computing . . . . . . . 3.2 migration SGBD SQL vers SGBD NoSQL . . . . . . . . . . 3.2.1 Obtention du mod`le relationnel de la base source . . e me tape : Dnition du mod`le en toile . . . . . . e 3.2.2 2 e e e e e 3.2.3 3me tape : Construction de la requte de migration . e e e 3.2.4 4me tape : Ecriture dans lentrept . . . . . . . . . . e o 3.3 Les rsultats attendus . . . . . . . . . . . . . . . . . . . . . e 4 Description du prototype ralis e e 4.1 Le choix des langages . . . . . . 4.2 La structure . . . . . . . . . . . 4.3 Le prototype . . . . . . . . . . . 4.3.1 DATA-MINING . . . . . 4.3.2 WEB SERVICES . . . .

. . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

5 Prsentation des rsultats e e 25 5.1 Les perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . 26 6 Conclusion 7 Remerciements 27 28

iii

1 INTRODUCTION

Introduction

Lutilisation de SGBD relationnel est tr`s majoritairement rpandu pour e e la gestion des donnes. Si son usage avait tait initialement conu pour ore e c ganiser, stocker et exploiter de mani`re optimale des donnes. Il navait pas e e t pens pour les grandes quantits de donnes accumules actuellement. ee e e e e Lexemple de youtube en est tr`s rvlateur, chaque minute lquivalent de e e e e vingt-quatre heures de vidos est ajout, cest dans le contexte dune incae e pacit a grer leurs donnes quils se sont fait racheter par Google en 2006. e e e Google ayant dvelopp un nouveau type de SGBD ddi a de lentreposage e e e e de grandes quantits de donnes dont ils se servent dja pour un grand nome e e bre de leurs produits tels que Google Reader, Google Maps, Google Earth, Google Code hosting, YouTube, Gmail ... Dautres socits telle qu Amazon ee avec Dynamo se tourne vers ces nouveaux SGBD. Le stockage de tr`s grandes e quantits de donnes pose donc certains probl`mes, ces dicults pouvant e e e e aller du simple ralentissement du syst`me, jusqu` la panne compl`te. Ces e a e nouveaux types de SGBD permettent de rpondre dune part a ce probl`me e e et permette aussi de par leur conception de servir de syst`me dinformation e pour une architecture cloud computing. Par ailleurs lutilisation de logiciel se reposant sur des SGBD relationnel est en constante volution. La plupart des entreprises se reposent sur ces e logiciels an de grer leurs dirents processus. Il existe des outils de gestion e e du personnel, de comptabilit, dorganisation et gestion de projet, de gese tion de documents ... Lensemble des informations recueillies par ces logiciels constituent une base solide permettant de reprsenter les dirents processus e e dune ou plusieurs entreprises. Cest sur les informations rcupres a partir e ee de ces outils que la business intelligence op`re, lensemble de ces informations e permettent dobtenir une vue densemble du fonctionnement dune entreprise. Une solution de business intelligence se compose dun ensemble doutil permettant de collecter, stocker et analyser ces donnes. Le syst`me dinformation e e dune solution BI se repose sur un entrept de donnes. Elle utilise un eno e trept de donnes an de collecter les donnes issus des direntes sources. o e e e Le but est de fournir une vue densemble des activits dune entreprise ainsi e que des mcanismes daide a la dcision. e e Dautres part avec le dveloppement du concept de cloud computing, nous e voyons de nombreux fournisseurs de solutions BI sy diriger posant sur la table de nouvelle problmatique et mani`re de concevoir ces solutions. e e Lentreprise Intgratik mayant accueilli en stage est spcialise dans les e e e 1

2 ETAT DE LART

ERP, elle se caractrise par lutilisation dun framework an de dvelopper e e des solutions spciques a leurs commanditaires. En vue daccroitre ses pose sibilits elle sintresse a la possibilit dintgrer des services de Business e e e e Intelligence a son ore actuelle. Nous avons ralis une tude sur la conception dune solution de Business e e e Intelligence base sur le concept de cloud computing. Ainsi nous avons ralis e e e un prototype dont le syst`me dinformation est bas sur un SGBD NoSQL. e e Notre dmarche a t dtudier ce quest la business intelligence, le cloud e ee e computing, les solutions technologiques et les concepts nous permettant de concevoir un syst`me BI. Notre proposition sappuie sur lutilisation dun e SGBD NOSql HBase pour syst`me dinformation et la mise en place dune e procdure sappuyant sur lingnierie dirige par les mod`les visant a fae e e e ciliter la migration dune base de donne oriente relationnel vers une base e e de donne oriente colonne. e e Ce document sorganise de la mani`re suivante : e Un tat de lart : e Sur le cloud computing Sur la business intelligence Sur les SGBD NoSQL Les propositions ralises au cours de ce projet. e e La description du prototype ralis e e

2
2.1

Etat de lart
Linformatique en nuage CLoud Computing

On peut considrer de mani`re gnrale, lorsque lon parle de cloud come e e e puting, quil sagit de rendre accessible et exploitable des donnes et des e applications a travers un rseau. Ce terme dsigne a la fois les applications e e ` en tant que services sur Internet et le matriel et logiciels qui permettent de e fournir ces services [AFG+ 09]. 2.1.1 Les direntes couches de services dun cloud e

Le concept de cloud computing est utilis pour dsigner des services, on e e distingue trois catgories de services fournis : e Infrastructure as a service : IaaS Platform as a service : PaaS Software as a service : Saas La gure 1 donne une reprsentation gnrale du cloud computing. e e e

2.1 Linformatique en nuage CLoud Computing

2 ETAT DE LART

Figure 1 Services Cloud Computing IaaS IaaS dsigne les services relatif a lutilisation de linfrastructure de cloud e computing. Larchitecture matrielle composant le cloud devient accessible e par des logiciels de virtualisation matrielle. Les ressources du cloud sont alors e proposs sous forme de service tel que : du stockage et de la virtualisation e dOS. Il sagit des services les plus proches des ressources matrielles du e cloud. Voici quelques exemples de fournisseurs IaaS : Amazon : Web Services Elastic Compute Cloud (EC2) et Secure Storage Service (S3). CloudSigma RackSpace :Cloud Server et Cloud Files PaaS PaaS dsigne les services visant a proposer un environnement complet e permettant de dvelopper et dployer des applications. Cette solution se come e pose des services de lIaaS, infrastructure, solution de stockage et par dessus lequel sajoute un syst`me de gestion de base de donnes, un environnement e e de dveloppement dapplication et de distribution. e Certaines ores PaaS ont un langage de programmation spcique. Par e exemple : Google AppEngine est une ore PaaS o` les dveloppeurs peuvent u e raliser leurs programme en Python ou Java. e EngineYard avec Ruby on Rails. 3

2.2 Business Intelligence

2 ETAT DE LART

force.com de Salesforce.com langage propritaire. e Coghead (SAP) langage propritaire. e SaaS SaaS dsigne les services permettant de distribuer des applications, il se e repose sur les services prsents prcdemment.Certains fournisseurs de SaaS e e e e sexcutent sur un autre fournisseur de cloud PaaS ou ores de services IaaS. e Voici quelques exemples de fournisseurs connus SaaS : Oracle CRM On Demand Salesforce.com NetSuite 2.1.2 Les dirents niveaux de dploiement e e

Le cloud computing peut tre exploit a dirents niveaux de dploiement e e` e e suivant le rseau dans lequel les services sont disponible. On parle alors de : e private cloud : quand les services sont accessible via un rseau priv. e e hybrid cloud : quand certains services sont accessible via un rseau e priv et dautres via internet. e community cloud : quand les services sont accessible via linterconnexion de rseaux appartenant a plusieurs organisations. e public cloud : quand les services sont accessible via internet. 2.1.3 Les principaux avantages

Le cloud computing prsente plusieurs avantages dont les principaux sont : e Le sparation du service et de linfrastructure ncessaire pour lexcuter e e e (Virtualisation). Nature lastique de linfrastructure permettant un meilleur contrle des e o performances. Ressources pouvant tre alloue a la demande. e e

2.2

Business Intelligence

La business intelligence (informatique dcisionnelle en franais) dsigne e c e les moyens, les outils et les mthodes qui permettent de collecter, consolider, e modliser et restituer les donnes dune entreprise en vue dorir une aide e e a la dcision et de permettre aux responsables de la stratgie dentreprise ` e e davoir une vue densemble de lactivit traite. e e Ce type dapplication utilise en r`gle gnrale un entrept de donnes (ou e e e o e datawarehouse en anglais) pour stocker des donnes provenant de plusieurs e 4

2.2 Business Intelligence

2 ETAT DE LART

sources htrog`nes et fait appel a des traitements par lots pour la collecte ee e ` de ces informations. Un syst`me BI est compos de quatre grandes catgories doutils : lETL, e e e data warehousing, data mining et de reporting. La partie sur laquelle notre tude a port se base sur les deux premiers outils, nous prsenterons donc e e e loutil ETL, data warehousing et la modlisation multi-dimensionnelle eme ploye pour lorganisation des donnes dans un entrept de donnes. Nous e e o e avons utiliser pour prsenter certains points des rfrences issues de cours de e ee lETS (cole technique suprieure) et des sites www.piloter.org et wikipedia. e e

Figure 2 Schma gnral Business Intelligence e e e

2.2.1

ETL

LETL (extract transform load), assure la connexion du syst`me a une ou e plusieurs sources de donnes, lextraction, la transformation et le chargement e dans lentrept. Il sagit dun outil fondamental de lentrept de donnes, base o o e du syst`me dinformation dune solution BI [KC04]. Les sources de donnes a e e extraire sont htrog`nes tant sur le plan technique que logique. Les donnes ee e e sont stockes dans des syst`mes et sous des formats varis. Par ailleurs la e e e plupart des donnes a collecter doivent tre vrier an dassurer la abilit e e e e des informations recueillies. Les principales fonctionnalits dun ETL : e Extract Extraire Assurer la connexion a la majorit des syst`mes de ` e e stockage de donnes an de pouvoir identier, slectionner et rcuprer e e e e les donnes. Il doit aussi pouvoir assurer un mcanisme de synchronie e sation pour la r-actualisation. e

2.2 Business Intelligence

2 ETAT DE LART

Transform Transformer Les donnes a rcuprer ne sont pas forcment e e e e dans ltat dans lequel elle seront stocke. Elles doivent tre vrie, e e e e e reformates, netoyes an dliminer les valeurs incohrentes ainsi que e e e e les doublons. Il sagit donc des oprations permettant de consolider et e dassurer la validit des donnes. e e Load Charger Stocker les donnes dans le data warehouse an quelle e puisse tre utilisable par les autres outils du syst`me BI. e e Lensemble des solutions BI actuelle dispose de ces outils prsentant tous e des fonctionnalits similaires. Voici quelques exemples des principaux outils e ETL utiliss actuellement : e solution propritaire e IBM Information Server, InfoSphere DataStage SAS Data Integration Studio Oracle Warehouse Builder (OWB) Sap BusinessObjects Data Integration solution open-source : Talend Open Studio Pentaho Data Integration (ex Kettle) Clover ETL 2.2.2 Data Warehouse

Un data warehouse (Entrept de donnes en franais) est une base de o e c donnes regroupant lensemble des donnes fonctionnelles dune entreprise. e e Son but est de fournir un ensemble de donnes servant de rfrence unique, e ee utilise pour la prise de dcisions dans lentreprise par le biais de statistiques e e et de rapports raliss via des outils de reporting. e e Dun point de vue architectural, il existe deux mani`res de lapprhender : e e Larchitecture de haut en bas : selon Bill Inmon, lentrept de donnes o e est une base de donnes au niveau dtail, consistant en un rfrentiel e e ee global et centralis de lentreprise. En cela, il se distingue du Datamart, e qui regroupe, agr`ge et cible fonctionnellement les donnes. e e Larchitecture de bas en haut : selon Ralph Kimball, lentrept de o donnes est constitu peu ` peu par les datamarts de lentreprise, e e a regroupant ainsi dirents niveau dagrgation et dhistorisation de e e donnes au sein dune mme base. e e Un datamart (magazin de donnes en franais) est un sous ensemble des e c donnes dun data warehouse. e

2.2 Business Intelligence

2 ETAT DE LART

2.2.3

Modlisation multidimensionnelle e

Le concept OLAP (Online Analytical Processes) a tait introduit par e E.F Codd, pour rendre des analyses sur des donnes dentreprise complexes e suivant plusieurs dimensions[CCS93]. Il a tablit un ensemble de r`gles que e e doit possder une base de donne pour intgrer ce concept. e e e La modlisation multidimensionnelle a tait introduite pour faciliter les e e traitements OLAP an de rendre le mod`le conceptuel dorganisation des e donnes plus en adquation avec leur reprsentation. The emphasys of OLAP e e e systems is on exible data grouping and ecient agregation evaluation obtained groups [LW96]. Il sagit donc dun mod`le conceptuel de reprsentation de donnes. Ce e e e mod`le poss`de plusieurs concepts : e e Les concepts : Fait et Dimensions Le fait modlise le sujet de lanalyse. Un fait est form de mesures corree e spondant aux informations de lactivit analyse. Les mesures dun fait sont e e numriques et gnralement valorises de mani`re continue. Les mesures sont e e e e e numriques pour permettre de rsumer un grand nombre denregistrements e e en quelques enregistrements. Les mesures sont valorises de faon continue e c car il est important de ne pas valoriser le fait avec des valeurs nulles. Une dimension se compose de param`tres correspondant aux informations e faisant varier les mesures du fait. Les dimensions servent ` enregistrer les a valeurs pour lesquelles sont analyses les mesures de lactivit. Une dimension e e est gnralement forme de param`tres (ou attributs) textuels et discrets. Les e e e e param`tres textuels sont utiliss pour restreindre la porte des requtes an e e e e de limiter la taille des rponses. e Lors du processus OLAP, les donnes sont gnralement analyses en pare e e e tant dun faible niveau de dtail vers des donnes plus dtailles pour forer e e e e vers le bas. Pour dnir ces dirents niveaux de dtail, chaque dimension e e e est munie dune (ou plusieurs) hirarchie(s) des param`tres, on parle de grane e ularit. La hirarchie sert lors des analyses pour restreindre ou accro les e e tre niveaux de dtail de lanalyse. e Le cube Il sagit dune reprsentation de modlisation multidimensionnelle des e e donnes facilitant lanalyse dune quantit selon direntes dimensions. Cette e e e vision correspond ` une structuration des donnes selon plusieurs axes da e analyses (ou dimensions) pouvant reprsenter des notions varies telles que e e le temps, la localisation gographique, le code identiant des produits. e 7

2.3 SGBD NoSQL

2 ETAT DE LART

Les schmas : Mod`les en toile, en ocon et en constellation e e e A partir du fait et des dimensions, il est possible dtablir une structure e de donnes simple qui correspond au besoin de la modlisation multidimene e sionnelle. Cette structure est constitue du fait central et des dimensions. Ce e mod`le reprsente visuellement une toile, on parle de mod`le en toile. e e e e e

Figure 3 Schma toile e e Le mod`le en ocon (snowFlake) consiste a clater les dimensions de e e mani`re a obtenir des sous hirarchies. Cela permet daller plus loin dans la e e granularit de hirarchisation pour chaque dimension mais rend le mod`le e e e plus complexe a utiliser.

Figure 4 Schma en ocon e La modlisation en constellation est la fusion de plusieurs mod`les en e e toile qui utilisent des dimensions communes. Un mod`le en constellation se e e compose de plusieurs faits et de dimensions partages ou non. e

2.3

SGBD NoSQL

Beaucoup dorganisations doivent stocker de grandes quantits de donnes, e e la plupart des SGBD relationnel actuels ne permettent plus de rpondre e 8

2.3 SGBD NoSQL

2 ETAT DE LART

Figure 5 Schma en constellation e aux besoins de stockage et de traitement de ces grandes quantits [Lea10]. e Cest dans ce contexte quon a vu appara tre de nouveaux SGBD. On regroupe derri`re le NoSQL lensemble des technologies de persistance qui e se distinguent par une absence de requte et par un relchement des care a actristiques ACID propres aux RDBMS (relational database management e system SGBD)[Mic09]. La famille des SGBD NoSQL se compose de plusieurs catgories, les SGBD orient colonne, orient document, orient graphe et e e e e cl/valeur. Ce sont les SGBD orient colonne qui vont nous servir pour notre e e tude. e 2.3.1 Quest-ce qui caractrise un SGBD NoSQL ? e

Les proprits ACID sont propres aux bases de donnes relationnelles. ee e Elles sont : Atomicit : lensemble des oprations dune transaction sont ralises e e e e ou toutes sont abandonnes pour revenir a ltat initial. e ` e Consistance : la base de donnes conserve un tat consistant avant e e comme apr`s lexcution dune transaction. e e Isolation : les autres oprations ne peuvent pas voir ltat intermdiaire e e e des donnes modies par une transaction tant que celle-ci nest pas e e termine. e Durabilit : assure quune fois que lutilisateur a t noti de la cone ee e clusion correcte dune transaction, lensemble des modications est persistante et ne sera pas annul. e Lunivers du NoSQL introduit lacronyme BASE correspondant aux proprits suivantes : ee Basically Available : essentiellement disponible. Soft state : tat variable dans le temps. e

2.3 SGBD NoSQL

2 ETAT DE LART

Eventually consistant : ventuellement consistant, une donne rplique e e e e peut, a un instant donn, ne pas avoir la mme version sur les dirents ` e e e noeuds. Le thor`me CAP permet de faire le lien entre ces deux notions. En eet, e e il spcie quune base de donnes ne peut orir que deux des trois proprits e e ee suivantes : Consistance Disponibilit e Tolrance au partitionnement e Les bases de donnes relationnelles classiques adh`rent aux deux premi`res e e e proprits, tandis que les bases de donnes NoSQL se concentrent sur les ee e deux derni`res[Bro09]. e 2.3.2 Google : BigTable

BigTable est un SGBD ddi a lentreposage de donnes. La structure e e e de donnes dune big-table est une map trie multi- dimensionnelle qui est e e persistante, distribue et rparti. La map est indexe par une cl de ligne, e e e e une cl de colonne et un timestamp (moment). Chaque valeur de la map est e un tableau non interprt de bytes[CDG+ 06]. ee Les points principaux pris en compte pour son dveloppement ont tait : e e capacit a manager de grandes quantits de donnes e e e performance exible architecture matrielle base sur des ordinateurs de commodit e e e BigTable se repose sur un syst`me de chier distribu (GFS google le e e system) et utilise le langage de programmation concurrente map/reduce lui aussi dvelopp par Google. e e 2.3.3 Apache(HADOOP) : HBase

HBase fait partie du projet HADOOP de la fondation Apache, il sagit dun SGBD orient colonne. Il a t calqu sur les travaux de BigTable e ee e de Google. La solution HBase se repose sur le syst`me de chier distribu e e (HDFS : hadoop distributed le system) qui se caractrise par une haute e tolrance aux pannes et pouvant tre dploye sur du matriel a faible cot. e e e e e u Il permet un acc`s tr`s rapide aux donnes et est adapt aux applications e e e e grant de grand ensemble de donnes. Dautres part il propose aussi la possie e bilit de grer les performances dans loptique dune utilisation plus exible. e e Orient colonne dsigne la mani`re dont le SGBD srialise les donnes. Cone e e e e trairement au SGBD orient ligne (SGBD orient relationnel), les donnes e e e sont srialiss sous forme de colonne plutt que de ligne. e e o 10

2.3 SGBD NoSQL

2 ETAT DE LART

La gure 6 prsente le fonctionnement gnral dHBase. Les tables sont e e e stockes en orientation par colonne. Chaque table est constitue dun ene e semble de familles de colonnes (regroupements logiques de colonnes). Sur chaque famille de colonnes il est possible dajouter des colonnes. Les lignes des tables sont partitionnes en plusieurs regions. Lors de la cration dune e e table, une seule region est cre, elle est ensuite automatiquement divise ee e en sous-parties lorsque sa taille atteint un seuil limite. Cest le master qui aura pour charge la gestion des regions. Zookeeper est un outil permettant de coordonner des services distribus, cest lui qui permettra de faire le lien e entre le Master et le syst`me de chier distribu HDFS, il permettra donc e e dtablir la mani`re dont seront exploit les machines constituant le server e e e [Mic10].

Figure 6 hbase-schema La gure 7 est une reprsentation dun entrept pouvant tre mis en place e o e a laide dHBase. La position dune cellule est dtermine par une colonne, e e une ligne et un instant t.

Figure 7 cube

11

3 LES PROPOSITIONS

Les propositions

Description du contexte
La socit Intgratik mayant accueilli en stage sintresse a proposer des ee e e services de Business Intelligence. Etant spcialise dans les ERP, elle souhaite e e tudier la possibilit de connecter le syst`me dinformation de son ERP a une e e e solution BI. Dans un soucis de performance et an de rester comptitive elle e sintresse fortement au concept de cloud computing. Ses objectifs sont mule tiples, a moyen terme elle souhaiterai proposer une ore similaire a celle propose par SalesForce, cest a dire distribuer ces services ERP a partir e dune architecture cloud computing et a plus long terme, proposer des ser vices de business intelligence. Rak Ouanouki est doctorant a lETS (cole e technique suprieure), il travaille sur ce mme sujet, une solution BI base e e e sur une architecture cloud computing avec un syst`me dinformation orient e e colonne. Son assertion est quil nexiste pas de tel syst`me. Ses recherches e visent a mettre en vidence ce point et par ailleurs tente de dmontrer, lape e port dun point de vue performance dune telle solution. Nos recherches se sont donc dirige vers ltude dune solution permettant e e de connecter le syst`me dinformation de lERP de lentreprise a une solue ` tion BI base sur une architecture cloud computing. Cette recherche nous a e conduit aux deux points suivants : la conception de larchitecture dune solution BI base sur le concept e de cloud computing la migration de donnes dun SGBD orient relationnel vers une base e e oriente NoSQL e Dans un premier temps nous prsenterons les propositions pour concevoir e une architecture base sur le concept de cloud computing. Nous verrons ene suite les propositions relative a la conception dune solution BI. Et enn nous prsenterons une procdure ddie a raliser une migration de donnes e e e e e e a partir dun SGBD orient relationnel vers un SGBD NoSQL. e

3.1

Architecture de la solution BI cloud computing

An de proposer une solution BI base sur le concept de cloud computing, e nous nous sommes intresss a la mani`re de mettre en place larchitecture e e e matrielle et les direntes catgories de services (IaaS, PaaS et SaaS). e e e La solution propose est dutiliser des machines de commodit, il sagit e e de machines quelconques. Cela prsente plusieurs avantage, le premier tant e e quelles sont peu couteuses, le second avantage est quelles sont susantes pour assurer larchitecture et quil nest pas ncessaire dinvestir dans des e 12

3.1 Architecture de la solution BI cloud computing LES PROPOSITIONS 3

quipements spcialis, main frame, serveur de stockage ... Cette congurae e e tion matrielle est rendue possible car le SGBD que nous utilisons se base e sur ce type de conguration matrielle. e An dadministrer les machines nous proposons dinstaller une distribution Linux (Ubuntu Server), prsentant lavantage dtre peu gourmande en e e ressource et tant reconnu pour sa stabilit. e e Le rseau sera bas sur le protocole Ethernet prsentant des dbits allant e e e e de 10MBit/s a 10GBit/s. De plus dans un rseau Ethernet, le cble diuse e a les donnes ` toutes les machines connectes, de la mme faon que les ondes e a e e c radio, ce qui est adapt pour la communication entre les machines dun cloud. e An de complter la conguration des machines, nous utiliserons pour e syst`me de chier, le syst`me de chier distribu HDFS (Hadoop Distributed e e e File System), bas sur une implmentation en java nous installerons donc e e aussi lenvironnement Java EE. Partie prsente par la gure 8 e e

Figure 8 architecture matrielle et conguration basique dun cloud e Une fois la conguration du matriel ralise, il nous faudra mettre en e e e place les dirents couches de services permettant de lexploiter. La premi`re e e couche de service est celle lie a lexploitation de linfrastructure. Les sere vices lis au stockage seront bas sur la mise en place du SGBD HBase qui e e sappuiera sur le syst`me de chier distribu HDFS. Hbase dispose dune ine e terface nomm stargate base sur une archecture REST (representational e e state service) permettant de distribuer ses fonctionnalit sous forme de web e services en se basant sur le protocole HTTP, ces services tant dploy par e e e Jetty, un serveur HTTP java.. Lavantage principale de cette architecture est linteroprabilit. Roy T. Fielding a dni larcitecture REST [FT02] comme e e e un ensemble de contraintes architecturale visant a minimiser les latences et les communication rseau tout en maximisant lindpendance et lextensie e bilit de limplmentation des composants. REST permet la mise en cache et e e la rutilisation des interactions, substituer dynamiquement des composants e et le traitement dactions par des intermdiaires rpondant ainsi aux besoins e e dun internet hypermedia extensible et distibu. Partie prsente par la gure e e e 9 La seconde couche de services est li a lenvironnement de dveloppement e e 13

3.1 Architecture de la solution BI cloud computing LES PROPOSITIONS 3

Figure 9 IaaS cloud et de distribution des applications nous utiliserons lenvironnement Java EE et la distribution sera ralise par lutilisation conjointe de tomcat6 et axis2. e e Cela permettra de dvelopper facilement des applications en java puis de les e convertir sous forme de web services a laide daxis2 et enn de les dployer e avec le serveur tomcat6. Cette solution prsente lavantage que ces web sere vices pourront tre dploy sous forme de WSDL ce qui permettra quil soit e e e consomm et exploiter facilement par des applications crites dans un autre e e langage que Java. Le framework de lentreprise tant implment en C#, e e e nous pourrons utiliser les outils mis a disposition dans lenvironnement .NET permettant de faciliter leur consommation. Partie prsente par la gure 10 e e

Figure 10 PaaS cloud Enn la partie SaaS relative aux services distribus sera compos des e e services dvelopp de mani`re a proposer les fonctionnalits des dirents e e e e e outils constituant une solution BI. La gure 11 est une vue de lensemble des points prsents prcdemment. e e e e La solution BI est prsente par la gure 12. Une approche modulaire ape e portera une plus grande facilit en terme de lisibilit et maintenance du code. e e Les services proposs seront donc raliss de mani`re a ce quil soit utilisable e e e e comme des composants indpendant les uns des autres. Leur dcouplage ape e portera plusieurs points importants : une plus grande facilit dans le dploiement des services de chaque outil e e des avantages en terme de maintenance et de mise a jour 14

3.2 migration SGBD SQL vers SGBD NoSQL

3 LES PROPOSITIONS

Figure 11 SaaS cloud dans le cadre dun travail en quipe, la possibilit de spcialiser et e e e dcomposer les tches a raliser e a e

Figure 12 solution BI

3.2

migration SGBD SQL vers SGBD NoSQL

An de raliser les tests de Hbase nous nous sommes intress a la ralisation e e e e dune procdure permettant de faciliter la migration a partir du SGBD de e lERP (rebird) vers le SGBD de la solution BI (HBase)13. Pour prsenter chaque tape, nous nous appuierons sur un exemple de e e base de donnes reprsentant les ventes dune entreprise. e e

15

3.2 migration SGBD SQL vers SGBD NoSQL

3 LES PROPOSITIONS

Figure 13 procdure de Migration e 3.2.1 Obtention du mod`le relationnel de la base source e

Cette tape consiste a obtenir la reprsentation du mod`le relationnel de e e e la base source. Pour cela nous avons besoin de rcuprer le nom des tables, e e leurs attributs et leurs relations. Les informations sur les relations peuvent tre retrouve a partir des e e dnitions des contraintes de cls primaires et trang`res de chaque table. e e e e Cette tape sappuiera sur un mod`le reprsentant le mod`le relationnel e e e e 15. Ce mod`le se compose de tables, relations et attributs. Les attributs sont e dots dattributs permettant de dnir si il sagit dune cl primaire ou dune e e e cl trang`re. ee e La gure 15, est une instance de notre mod`le reprsentant une partie de e e notre base source dexemple.

Figure 14 mod`le relationnel e


e 2me tape : Dnition du mod`le en toile e e e e

3.2.2

Les donnes de lentrept seront organise suivant un mod`le multi-dimensionnel e o e e appel mod`le en toile. Un mod`le toile est un mod`le relationnel avec des e e e e e e spcications supplmentaires comme prsents dans le paragraphe 2.2.3. e e e e 16

3.2 migration SGBD SQL vers SGBD NoSQL

3 LES PROPOSITIONS

Figure 15 mod`le relationnel e Cette tape consiste ` dnir le mod`le qui permettra dtablir la mani`re e a e e e e dont seront organise les donnes dans lentrept. La gure 16 prsente le e e o e mod`le que nous avons dni pour organiser les donnes que nous allons e e e rcuprer de notre base source. e e

Figure 16 mod`le toile e e Dans ce mod`le toile, le fait est lignedevente et les dimensions sont e e temps, vendeur et dpartement. e 3.2.3
e 3me tape : Construction de la requte de migration e e

Au cours de cette tape il sagit de dnir le mapping entre les mod`les e e e issus des prcdentes tapes. Cela consiste a dnir quels attributs du mod`le e e e e e relationnel de la base source sera reli a quel attribut du mod`le en toile e e e cible. La gure 17 montre un exemple dassociation a raliser, ces associations e seront enregistres (1, 2) et permettront de construire les requtes SQL an e e de rcuprer les enregistrements correspondant aux attributs slectionns . e e e e Dans un premier temps il sagira de dnir la requte permettant de e e charger les enregistrements correspondant a la table des faits, pour cela on 17

3.2 migration SGBD SQL vers SGBD NoSQL

3 LES PROPOSITIONS

Figure 17 mapping model.pathModel.PathModelS@1114460 model.pathModel.PathModelR@84cf bdName : VENTE bdName : INTEGRATIK tableName : DEPARTEMENT tableName : VENTETRANSACTIONS eldName : id eldName : NRI Table 1 exemple dassociation entre les mod`les source et cible e slectionnera lensemble des associations relative a cette table an de gnrer e e e une requte de la forme : e select tableSource.attr , ...,tableSourcesN.attr from tableSource, ..., tableSourceN orderedby idUnique La requte sera ralise selon une cl unique e e e e permettant en cas de panne de reprendre plus facilement. Dans un second temps il sagira de dnir les requtes permettant de e e charger les dimensions de la mme mani`re ces requtes seront ralise suivant e e e e e lidUnique tabli prcdemment. e e e 3.2.4
e 4me tape : Ecriture dans lentrept e o

Au cours de cette tape, il sagit de raliser lcriture des donnes rcupres e e e e e ee par les requtes prcdentes dans lentrept pour cela nous avons raliser un e e e o e mod`le reprsentant la structure dun entrept. Il se compose de famille de e e o colonnes, de colonnes et de lignes. Une famille de colonnes pouvant tre un e datamart ou un data-warehouse 18. Dans un premier temps, il sagit de construire la structure correspondant au mod`le en toile dni dans ltape 2. Nous obtenons ainsi le mod`le e e e e e reprsent par la gure 19. e e La seconde tape consiste a raliser le chargement de notre structure. e e Pour cela, il sagit de gnrer les requtes bass sur le langage de Hbase, les e e e e requtes dcriture tant gnre par la transformation du mod`le toile au e e e e ee e e mod`le columnOriented. e 18

3.3 Les rsultats attendus e

3 LES PROPOSITIONS

model.pathModel.PathModelS@edf389 model.pathModel.PathModelR@16be68f bdName : VENTE bdName : INTEGRATIK tableName : VENDEUR tableName : VENTETRANSACTIONS eldName : Key Vendeur eldName : NRIVVV Table 2 exemple dassociation entre les mod`les source et cible e

Figure 18 mod`le colonne e

3.3

Les rsultats attendus e

Lensemble des rsultats attendus consiste a vrier la possibilit de e e e raliser une architecture cloud computing en se basant sur le SGBD HBase et e de la valider en ralisant une migration des donnes de lERP de lentreprise. e e

19

3.3 Les rsultats attendus e

3 LES PROPOSITIONS

Figure 19 mod`le de cube e

20

4 DESCRIPTION DU PROTOTYPE REALISE

4
4.1

Description du prototype ralis e e


Le choix des langages

Le choix pour limplmentation du code mtier pour administrer HBase e e qui servira dentrept de donnes sest naturellement port vers JAVA car il o e e sagit du langage dimplmentation du SGBD HBase. e Cependant ce choix implique des complications car le langage du framework de lentreprise est C#. Nous avons donc dcider de contourner ce probl`me en mettant en place e e des web-services a laide daxis2 et dont le dploiement sera eectu sur un e e serveur Tomcat6 (Apache). Cest donc en passant par la mise en place dune architecture oriente service (SOA). e Nous avons opt pour axis2 an de faciliter la ralisation et le dploiements e e e des services et pour la possibilit de gnrer un wsdl (web service description e e e langage). Enn, a partir des wsdl, il est possible avec lenvironnement .NET de consommer ces web-services, nous permettant alors dadministrer notre code mtier en C#. e Par ailleurs HBase est un SGBD NoSQL, nous avons dni un langage e succinct an de lemployer pour manager les donnes : e Cration dune structure e createCube (String nom) addColumn (String cubeName, String nomColumn) getColumns (String cubeName) Accs e getQualiers(String cubeName, String columnName) getRows(String tableName, String columnName) getCubeList() getValueByQualierAndRowNumber (String cubeName, String columnName, String qualierName, String rowNumber) getSetofValuesByQualier (String cubeName, String columnName, String qualierName) getRowIdentiersByValue (String cubeName, String columnName, String qualierName, String value) getData (String cubeName, String columnName, String qualierName)

21

4.2 La structure

4 DESCRIPTION DU PROTOTYPE REALISE

4.2 4.3
ETL

La structure Le prototype

Notre ETL permet donc de se connecter a une base de donnes FireBird, e et de consulter les direntes tables commme le montre la gure 20. e

Figure 20 visualisation de la BD source Il permet aussi de raliser le mapping entre, le mod`le source et le mod`le e e e cible comme le montre la gure 21, avec la possibilit de srialiser et exporter e e dans un chier le mapping ralis. e e

Figure 21 mapper

DATA-WAREHOUSING Loutil de DATA-WAREHOUSING permet de manager lentrept, il pero met de mettre la cration et la visualisation de la structure et des valeurs e dun entrept comme le montre les gures 22 et 24. o

22

4.3 Le prototype

4 DESCRIPTION DU PROTOTYPE REALISE

Figure 22 visualisation de lentrept o

Figure 23 visualisation de la structure dun entrept o 4.3.1 DATA-MINING

Loutil de DATA-MINING a tait ralis an de raliser lachage des e e e e rsultats dune requte sur lentrept de donnes permettant dobtenir le e e o e total de chaque vente ainsi que le total par dpartements. e 4.3.2 WEB SERVICES

Cet outil nen est qua la phase ou il est prsent sous forme de webe Services, le souhait de lentreprise tant de les consommer via une application e ralis en C#. e e

23

4.3 Le prototype

4 DESCRIPTION DU PROTOTYPE REALISE

Figure 24 visualisation des valeurs dun entrept o

Figure 25 datamining

24

5 PRESENTATION DES RESULTATS

Prsentation des rsultats e e

Le prototype a permis de raliser les tests suivants : e Le premier test a consist : e cration dune structure : 1 famille de colonne, 10 colonnes, 1000 lignes. e criture : ajout dune valeur sur chacune des colonnes, sur chaque ligne e allant de 0 a 999. lecture : somme des valeurs de chaque colonne. Le tableau 3 prsente les rsultats. e e opration e temps (ms) cration structure e 5429 criture e 509181 lecture 7054 Table 3 test basique temps total : 8 min 45 sec Un second test a consist a procder a une migration de 10 000 puis 100 e e 000 transactions (une transaction quivaut a 17 enregistrements). Le tableau e 4 prsente les rsultats. e e nbe de lignes temps (min) 10 000 16 100 000 50 Table 4 test migration Un troisi`me test a consist a procder a lanalyse de 10 000 puis 100 000 e e e enregistrements de transactions an dobtenir le total par dpartements, par e mois et par anne. Le tableau 5 prsente les rsultats. e e e nbe de lignes temps (min) 10 000 16 100 000 42 Table 5 analyse des ventes par dpartements (Mois et Anne) e e Le dernier test a tait lanc sur un cluster compos de 4 machines : Le e e e test ralis a tait identique au premier. Celui-ci sest lanc correctement, e e e e mais le technicien la stopp apr`s 30 min. Les prochains tests devrait tre e e e ralis dans peu de temps. e e 25

5.1 Les perspectives

5 PRESENTATION DES RESULTATS

Les premiers tests eectus en local ont montr que le SGBD est utilise e able, cependant les performances sont tr`s faible. Le test sur le cluster na e pas fonctionn. Ces premiers tests permettent donc de mettre en avant la dife cult dexploiter un tel SGBD, et quil nest pas envisageable de lexploiter e en production avant une longue priode de rodage. e

5.1

Les perspectives

Les perspectives de ce projet : a court terme : terminer les tests sur le cluster a moyen terme : exploiter larchitecture du cloud au niveau PaaS (voir S.O.A : Service Grids [HB02]) a long terme : dvelopper les outils de la solution BI e

26

6 CONCLUSION

Conclusion

Proposer une solution BI correspondant aux attentes des entreprises est un rel enjeu. Pour pouvoir proter pleinement des services oert par un e syst`me ecient, celle-ci doit proposer de hautes performances. La majorit e e des solutions existantes doivent recourir a lemploi de matriel tr`s couteux e e pour distribuer leurs services, et ne sont pas toutes adaptes pour faire face e aux grandes quantits de donnes. Pour pallier a ces probl`mes, nous nous e e e sommes intresss a la combinaison de plusieurs technologies et a lutilisation e e dune nouvelle gnration de SGBD. e e Nous nous sommes donc employ a dnir les outils ncessaires a la e e e ralisation dune solution BI base sur le concept de cloud computing. Nous e e avons propos pour cela de mettre en place une architecture de cloud come puting et de sorganiser selon les propositions de Ralph Kimball menant aux 4 grandes parties : ETL, DATWAREHOUSING, DATA MINING et REPORTING. Nous avons travaill dautres part sur la phase de peuplement initial li e e a loutil ETL. Nous avons labor une procdure sappuyant sur lutilisation e e e de mod`les pour reprsenter lorganisation des donnes de la base source et e e e de notre entrept an de faciliter leur migration. o En conclusion de cette tude, on a tabli la possible ralisation dun proe e e jet bas sur une architecture cloud computing et nous sommes arrivs a la e e conclusion lexploitation dun tel SGBD est dicile et quil nest pas envisageable de lexploiter en production avant une longue priode de rodage. e Cependant les perspectives proposes par ses possibilits permettent dene e visager de nombreux avantages en terme de performances. Cela nous a permis dtablir aussi que la complexit technique pour mettre en place est tr`s ime e e portante en rapport au grand nombre de technologies a employer. Dun point de vue personnel, jai pu dcouvrir le domaine de la business e intelligence ainsi que le concept de cloud computing. Par ailleurs, jai eut loccasion dobserver et de mimpliquer dans la mise en place dun projet de recherche au sein dune entreprise.

27

7 REMERCIEMENTS

Remerciements

Je tiens a remercier mes encadrants de stage : Alain April et Claude Ethier pour leur conance et leur encadrement. Ils mont guid et conseill e e durant mes recherches. Parfaitement intgr au sein de lentreprise Integratik, e e se stage sest droul dans une ambiance studieuse et cordiale. Je remercie e e aussi tr`s chaleureusement Marianne Huchard, Clmentine Nebut et Chouki e e Tibermacine pour le grand soutien quils mont apport ainsi que tous mes e professeurs pour leurs enseignements. Enn, je remercie pour leur soutien mes proches : amis et parents .

28

TABLE DES FIGURES

TABLE DES FIGURES

Table des gures


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Services Cloud Computing . . . . . . . . . . . . . . Schma gnral Business Intelligence . . . . . . . . e e e Schma toile . . . . . . . . . . . . . . . . . . . . . e e Schma en ocon . . . . . . . . . . . . . . . . . . . e Schma en constellation . . . . . . . . . . . . . . . e hbase-schema . . . . . . . . . . . . . . . . . . . . . cube . . . . . . . . . . . . . . . . . . . . . . . . . . architecture matrielle et conguration basique dun e IaaS cloud . . . . . . . . . . . . . . . . . . . . . . . PaaS cloud . . . . . . . . . . . . . . . . . . . . . . SaaS cloud . . . . . . . . . . . . . . . . . . . . . . . solution BI . . . . . . . . . . . . . . . . . . . . . . . procdure de Migration . . . . . . . . . . . . . . . . e mod`le relationnel . . . . . . . . . . . . . . . . . . e mod`le relationnel . . . . . . . . . . . . . . . . . . e mod`le toile . . . . . . . . . . . . . . . . . . . . . e e mapping . . . . . . . . . . . . . . . . . . . . . . . . mod`le colonne . . . . . . . . . . . . . . . . . . . . e mod`le de cube . . . . . . . . . . . . . . . . . . . . e visualisation de la BD source . . . . . . . . . . . . . mapper . . . . . . . . . . . . . . . . . . . . . . . . visualisation de lentrept . . . . . . . . . . . . . . o visualisation de la structure dun entrept . . . . . o visualisation des valeurs dun entrept . . . . . . . o datamining . . . . . . . . . . . . . . . . . . . . . . NoSQL vs SQL . . . . . . . . . . . . . . . . . . . . NoSQL vs SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 5 8 8 9 11 11 13 14 14 15 15 16 16 17 17 18 19 20 22 22 23 23 24 24 34 34

29

LISTE DES TABLEAUX

LISTE DES TABLEAUX

Liste des tableaux


1 2 3 4 5 exemple dassociation entre les mod`les source et cible e exemple dassociation entre les mod`les source et cible e test basique . . . . . . . . . . . . . . . . . . . . . . . . test migration . . . . . . . . . . . . . . . . . . . . . . . analyse des ventes par dpartements (Mois et Anne) . e e . . . . . . . . . . . . . . . . . . . . 18 19 25 25 25

30

Glossaire
Cadriciel En informatique, un framework, ou armature, est un ensemble de biblioth`ques, doutils et de conventions permettant le dveloppement e e dapplications. Il fournit susamment de briques logicielles et impose susamment de rigueur pour pouvoir produire une application aboutie et dont la maintenance est aise. Ces composants sont organiss pour e e tre utiliss en interaction les uns avec les autres (voir urbanisation).Des e e tentatives de francisation du terme ont t faites. On trouve ainsi paree fois les termes cadre dapplications, propos par lOce qubcois de e e e la langue franaise ou cadriciel. Lexpression atelier de dveloppement c e est galement employe. e e data warehouse Le terme entrept de donnes ou data warehouse dsigne o e e une base de donnes utilise pour collecter et stocker de mani`re dnitive e e e e des informations volatiles provenant dautres bases de donnes. e DataMart (littralement en anglais magasin de donnes) est un sous-ensemble e e dune base de donnes relationnelle utilis en informatique dcisionnelle ; e e e il est gnralement exploit en entreprise pour restituer des informae e e tions cibles sur un mtier spcique, constituant pour ce dernier un e e e ensemble dindicateurs a vocation de pilotage de lactivit et daide a ` e ` la dcision. Un DataMart, selon les dnitions, est issu ou fait pare e tie dun DataWarehouse, et en reprend par consquent la plupart des e caractristiques. e ERP Progiciel qui permet de grer lensemble des processus dune entreprise e en intgrant lensemble de ses fonctions, dont la gestion des ressources e humaines, la gestion comptable et nanci`re, laide ` la dcision, mais e a e aussi la vente, la distribution, lapprovisionnement et le commerce lectronique. e ETL Extract-Transform-Load est connu sous le terme Extracto-Chargeur, (ou parfois : datapumping). Il sagit dune technologie informatique intergicielle (comprendre middleware) permettant deectuer des synchronisations massives dinformation dune base de donnes vers une e autre. Selon le contexte, on traduira par alimentation , extraction , transformation , constitution ou conversion , souvent combins. e hypermedia Un hypermdia est un mdia dans lequel les informations ne e e sont pas seulement de type texte, mais galement de type image, son, e vido ou encore multimdia, ont vocation a prsenter linformation . e e ` e Cest une extension de lhypertexte ` des donnes multimdias. a e e

OLAP Online Analytical Processing dsignait ` lorigine les bases de donnes e a e multidimensionnelles (aussi appeles cubes ou hypercubes) destines ` e e a des analyses complexes sur des donnes. e Progiciel Mot-valise, contraction de produit et logiciel, est un logiciel applicatif commercial prt-`-porter, standardis et gnrique, prvu e a e e e e pour rpondre a des besoins ordinaires. Ce terme soppose aux logie ` ciels sur mesure dvelopps en interne dans une entreprise et conus e e c pour rpondre ` des besoins spciques. e a e

Rfrences ee
[AFG+ 09] M. Armbrust, A. Fox, R. Grith, A.D. Joseph, R.H. Katz, A. Konwinski, G. Lee, D.A. Patterson, A. Rabkin, I. Stoica, et al. Above the clouds : A berkeley view of cloud computing. EECS Department, University of California, Berkeley, Tech. Rep. UCB/EECS-2009-28, 2009. [Bro09] Julian Browne. Brewers cap theorem, 2009. http ://www.julianbrowne.com/article/viewer/brewers-captheorem. E.F. Codd, S.B. Codd, and C.T. Salley. Providing OLAP (on-line analytical processing) to user-analysts : An IT mandate, 1993.

[CCS93]

[CDG+ 06] F. Chang, J. Dean, S. Ghemawat, W.C. Hsieh, D.A. Wallach, M. Burrows, T. Chandra, A. Fikes, and R.E. Gruber. Bigtable : A distributed storage system for structured data. In Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation (OSDI06), 2006. [FT02] R.T. Fielding and R.N. Taylor. Principled design of the modern Web architecture. ACM Transactions on Internet Technology (TOIT), 2(2) :115150, 2002. J. Hagel and J.S. Brown. Service Grids : The Missing Link in Web Services. White Paper, 2002. R. Kimball and J. Caserta. The data warehouse ETL toolkit : practical techniques for extracting, cleaning, conforming, and delivering data. Wiley, 2004. N. Leavitt. Will NoSQL Databases Live Up to Their Promise ? Computer, pages 1214, 2010. C. Li and X.S. Wang. A data model for supporting on-line analytical processing. In Proceedings of the fth international conference on Information and knowledge management, pages 8188. ACM, 1996. Figuiere Michael. Nosql europe : Tour dhorizon des bases de donnes nosql, 2009. http ://blog.xebia.fr/2009/11/18/devoxxe jour-1-nosql-avec-hbase/. Figuiere Michael. Nosql europe : Tour dhorizon des bases de donnes nosql, 2010. http ://blog.xebia.fr/2010/04/21/nosqle europe-tour-dhorizon-des-bases-de-donnees-nosql/.

[HB02] [KC04]

[Lea10] [LW96]

[Mic09]

[Mic10]

Annexes

Figure 26 NoSQL vs SQL

Figure 27 NoSQL vs SQL