NoSQL (Not Only SQL) est une base de données non relationnelle. NoSQL, à la différence des bases de données relationnelles telles que MySQL, PostgreSQL, Oracle…) s’affranchit du langage SQL : aucune requête SQL n’est exécutée pour accéder aux données.
Selon wikipédia, « NoSQL («Not Only SQL ») est une technologie relative aux bases de données, qui a émergé à partir du printemps 2009. Le terme se réfère au stockage non relationnel de données en vue d’améliorer les bases de données dans une direction nécessitant une évolutivité horizontale. NoSQL tente de répondre à cette exigence ».
Les projets s’intéressant à cette nouvelle technologie sont déjà nombreux :
Liste des bases de données NOSQL
Les bases de données orientées colonnes
- Amazon SimpleDB (Projet non open source)
- Cassandra (API: Thrift [Ruby, C++, Java, Python, PHP, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk, OCamletc], Méthode d’interrogation: MapReduce, Ecrit en: Java)
- Cloudera (Logiciel professionnel – Services basés sur le projet Hadoop)
- Hadoop / HBase (API: Java, Méthode d’interrogation: MapReduce Java, Réplication: HDFS, Ecrit en: Java)
- HYPERtable (API: Thrift [Ruby, C++, Java, Python, PHP, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk, OCamletc], Méthode d’interrogation: HQL, API Thrift native, Réplication: HDFS)
Les bases de données orientées document
- Citrusleaf ()
- CouchDB (API: JSON, Protocole: REST, Méthode d’interrogation: Function Javascript MapReduceR, Replication: Master Master,Ecrit en Erlang)
- MongoDB (API: BSON, Méthode d’interrogation: dynamic object-based language, Réplication: Master Slave, Ecrit en: C++,)
- OrientDB (Langage: Java, Schema: Has features of an Object-Database, DocumentDB, GraphDB or Key-Value DB, Ecrit en: Java, Méthode d’interrogation: Native et SQL,)
- RavenDB(Solution .Net. Acces HTTP/JSON. Support de LINQ queries et Sharding)
- Terrastore (API: Java & http, Protocole: http, Méthode d’interrogation: Range queries, Predicates, Réplication: Partitioned with consistent hashing)
- ThruDB (Utilise Apache Thrift pour intégrer divers backend de base de données comme BerkeleyDB, Disk, MySQL, S3)
Les bases de données orientées clé
- Amazon Dynamo
- Azure Table Storage
- Berkeley DB
- Chordless
- Dynomite
- Faircom C-Tree
- GenieDB
- GT.M
- HamsterDB
- KAI
- Keyspace
- LightCloud
- MEMBAS
- MemcacheDB
- Mnesia
- Riak
- Redis
- Tokyo Cabinet / Tyrant
- Voldemort
Les bases de données orientées graphe
- AllegroGraph
- DEX
- Bigdata
- HyperGraphDB
- Infinite Graph
- InfoGrid
- Neo4J
- OpenLink Virtuoso
- Sones
- VertexDB
Système Logiciel NoSQL
Bases de données « Objet »
Bases de données « Grid »
Bases de données « XML »
- BaseX
- Berkeley DB XML
- EMC Documentum xDB (commercial)
- eXist
- Qizx (commercial)
- Mark Logic Server (commercial)
- Sedna
- Tamino
- Xindice
Bases de données « Multivalue »
Autres bases de données NoSQL
Pour approfondir le sujet, je vous recommande fortement de lire l’article de Michael Figuiere, « NoSQL Europe : Tour d’horizon des bases de données NoSQL« , qui aborde notamment Les familles de NoSQL, à savoir « Les bases de données clé-valeur », « Les bases de données orientées document », « Les bases de données orientées colonnes », « Les bases de données orientées graphe », etc.