Les bases de données NoSQL, qui constituent un des composants essentiels de la planète big data, génèrent une effervescence et intérêt non démentis.

Au  début était SQL (Structured Query Language), un langage développé par IBM dans les années 70. SQL a été conçu pour la manipulation des données, leur définition qui permet de créer et de modifier l’organisation des données, le contrôle de transaction pour commencer et finir les transactions et le contrôle pour réguler l’accès aux données. SQL correspond aux données structurées et aux bases de données relationnelles dont les trois leaders sont aujourd’hui Oracle, IBM et Microsoft.

Le mouvement des bases de données NoSQL a été initié dans les années 90 avec la montée en puissance d’Internet et des systèmes distribués et amplifié par l’arrivée du cloud. Confrontés à des problèmes d’un nouveau type, les géants de l’Internet  tels que Google (BigTable), Amazon (Dynamo (en)), LinkedIn (Project Voldemort), Facebook (Cassandra Project puis HBase), SourceForge.net (MongoDB), Ubuntu One (CouchDB), ont développé et exploitent des bases de données de type NoSQL pour leurs besoins propres.

ACID versus BASE

L’omniprésence d’Internet et la montée en puissance du big data a complètement changé la problématique. Les bases de données vérifiaient les principes définis par l’acronyme ACID (Atomicity, Consistency, Isolation, Durability) censés assurer que les transactions sont menées à leurs termes dans les conditions prévues. On imagine assez mal par exemple qu’une transaction financière ne soit pas finalisée comme attendu.  A l’inverse, les bases données NoSQL répondent à des problématiques très différentes : un mélange de données structurées et non structurées (ces dernières représentent 80 %), des volumes qui peuvent être considérables et conception totalement différentes de la transaction…

De telle sorte que les principes qui régissent le monde NoSQL correspondent à l’acronyme BASE (Basically available, Soft state, eventually consistent). Alors que le modèle ACID met l’accent sur la fiabilité et la robustesse au détriment de la disponibilité, le modèle BASE fait l’inverse.

Si le modèle relationnel est relativement homogène, son équivalent NoSQL est beaucoup plus éclaté. NoSQL est une nouvelle vague de technologies de bases de données « immature et recouvrant une myriade de solutions répondant à des besoins très divers », explique le cabinet Robert Francis Group dans une série de notes sur le sujet. Le cabinet présente une taxonomie proposée par le fournisseur de services cloud RackSpace regroupant les principaux modèles des bases NoSQL : Collection, Columnar, Document-Oriented, Graph et  Key-Value. Robert Francis Group propose la classification (ci-dessous) des principaux produits du marché en fonction de ces différents modèles.

23 NoSQL1

Hadoop et NoSQL

Hadoop – un projet  open source aujourd’hui sous le contrôle de la fondation Apache (pour plus d’informations) – représente un ensemble de technologies incluant MapReduce, HDFS (hadoop distributed files system) et d’autres logiciels permettant l’import et l’export de données dans le système de fichiers HDFS. NoSQL désigne les bases de données se référant à ce nouveau modèle et font partie de l’écosystème hadoop.

Selon le cabinet Wikibon (Hadoop-NoSQL Software and Services Market Forecast 2012-2017), le marché haddop/NoSQL est encore très marginal. Les ventes de licences et de services ont atteint 540 M$ en 2012 mais devraient se développer assez vitre pour atteindre 3,5 mds$ en 2017. Comme pour tout  marché au début de son développement, il est animé par des startups et l’ensemble des grands fournisseurs de l’IT ne peuvent l’ignorer. C’est un domaine actif qui attire l’attention des acteurs du capital-risque. Les dix premières startups spécialisées ont collecté quelque 600 M$ dans les 5 dernières années et les 5 plus actives dans ce domaine ont été DataStax (Cassandra), MongoDB, MarkLogic, MapR, Couchbase, Basho (Riak), Neo Technology (Neo4j) et Aerospike. Dans les deux années à venir, il y a fort à parier que l’on observe de nombreux rachats dans le domaine par les grands prédateurs de l’IT.

Acquisitions (1/2) : Cisco, IBM, HP et Dell
Acquisitions (2/2) : Microsoft, Oracle et SAP

La série de notes sur NoSQL de Robert Francis Group
NoSQL Innovators – Part 3
NoSQL Innovators – Part 2
NoSQL Innovators – Part 1
Evolution of NoSQL – part 2
Evolution of NoSQL – part 1