NoSQL : JSON, indexation distribuée et géoréplication débarquent dans Couchbase
Le concurrent de MongoDB
Le 2012-12-14 12:09:56, par Hinault Romaric, Responsable .NET
Couchbase Server, le système de gestion de bases de données NoSQL, vient de subir une mise à jour assez importante.
La version 2.0 de Couchbase introduit un modèle de stockage de documents et un magasin clé-valeur (key-value), permettant à l’outil de faire un grand pas dans le support du Big Data (gros volumes de données).
Pour rappel, CouchBase est un projet initialement basé sur le système noSQL Apache CouchDB, à la différence que le code Erlang de CouchDB a été entièrement réécrit en C++, avec des ajustements et ajouts en tirant profit du système de gestion de mémoire cache distribuée memcached.
Couchbase Server 2.0 prend désormais en charge le format JSON (JavaScript Object Notation) grâce à son nouveau modèle de données flexible. Il dispose d’un système d’indexation distribuée, de nouvelles capacités d’interrogation et intègre le support de MapReduce.
Le système NoSQL introduit également la fonction « cross data center replication » (XDCR), une sorte de géoreplication basée sur l’approche « active-active cluster », ou l’utilisateur peut décider de faire une réplication synchrone ou asynchrone en fonction du temps de latence réseau entre les centres de données.
La prise en charge de JSON, de l’indexation, de la recherche en texte intégral et des caractéristiques de MapRduce, étendent la base de données qui devient un gestionnaire de contenu riche, qui fournit aux développeurs des outils de gestion permettant une meilleure analyse des données, selon les responsables du projet.
Ainsi, les développeurs pourront stocker des documents JSON dans les bases de données, créer des index et effectuer des requêtes sur ceux-ci.
Toutes ces améliorations majeures font de Couchbase un puissant système NoSQL, qui n’a plus rien à envier à MongoDB.
Couchbase Server 2.0 est disponible gratuitement dans sa version Community Edition. L’édition Entreprise est basée sur cette version, mais dispose des derniers correctifs de sécurité.
Télécharger Couchbase Server 2.0
Source : Spécifications de Couchbase Server 2.0 (au format PDF)
Et vous ?
Que pensez-vous de ces nouveautés ?
La version 2.0 de Couchbase introduit un modèle de stockage de documents et un magasin clé-valeur (key-value), permettant à l’outil de faire un grand pas dans le support du Big Data (gros volumes de données).
Pour rappel, CouchBase est un projet initialement basé sur le système noSQL Apache CouchDB, à la différence que le code Erlang de CouchDB a été entièrement réécrit en C++, avec des ajustements et ajouts en tirant profit du système de gestion de mémoire cache distribuée memcached.
Couchbase Server 2.0 prend désormais en charge le format JSON (JavaScript Object Notation) grâce à son nouveau modèle de données flexible. Il dispose d’un système d’indexation distribuée, de nouvelles capacités d’interrogation et intègre le support de MapReduce.
Le système NoSQL introduit également la fonction « cross data center replication » (XDCR), une sorte de géoreplication basée sur l’approche « active-active cluster », ou l’utilisateur peut décider de faire une réplication synchrone ou asynchrone en fonction du temps de latence réseau entre les centres de données.
La prise en charge de JSON, de l’indexation, de la recherche en texte intégral et des caractéristiques de MapRduce, étendent la base de données qui devient un gestionnaire de contenu riche, qui fournit aux développeurs des outils de gestion permettant une meilleure analyse des données, selon les responsables du projet.
Ainsi, les développeurs pourront stocker des documents JSON dans les bases de données, créer des index et effectuer des requêtes sur ceux-ci.
Toutes ces améliorations majeures font de Couchbase un puissant système NoSQL, qui n’a plus rien à envier à MongoDB.
Couchbase Server 2.0 est disponible gratuitement dans sa version Community Edition. L’édition Entreprise est basée sur cette version, mais dispose des derniers correctifs de sécurité.
Source : Spécifications de Couchbase Server 2.0 (au format PDF)
Et vous ?
-
heidMembre confirméJ'utilise mongo, qu'apporte Couchbase de plus ?le 14/12/2012 à 14:16
-
c_creatixNouveau membre du ClubDe mémoire couchbase dispose d'un versionning des documents. Il est donc plus simple de trouver la version du document d'il y a une semaine. Par contre il repose sur un système de vues et mapreduce pour faire les requêtes. Il n'est pas possible de faire des requêtes en direct depuis le programme il faut les écrire en avance. En tout cas ce que je raconte c'était le cas à l’époque de couchdb.le 19/12/2012 à 17:25
-
tgrallMembre du ClubJ'utilise mongo, qu'apporte Couchbase de plus ?
- Mongo est tres simple d'acces pour les developpeurs, notamment en supportant les requetes adhoc avec un langage de requete relativement simple. (attention a bien creer vos index avant de passer en production!)
- Couchbase a ete construit pour garantir de tres bonnes performances et une grande scalabilité. C'est pourquoi Couchase 2.0 s'appuie sur le protocol Memcache. D'autre part il est tres simple de modifier a chaud la topologie du cluster (ajout/suppression de noeud) tout en gardant l'application active. (rebalance/failover des data sur les differents noeuds). Voici quelques liens interessant sur Couchbase:
- Couchbase Performance Benchmarking (Benchmark effectué par Altoros en s'appuyant sur YCSB)
- http://gigaom.com/cloud/how-omgpop-s...n-three-weeks/ (DrawSomething & Couchbase)
Un case d'usage interessant, mais qui est ici completement different de Mongo est le remplacement de Memcache par Couchbase :
- http://www.couchbase.com/memcachedle 31/12/2012 à 7:58 -
tgrallMembre du ClubDe mémoire couchbase dispose d'un versionning des documents.
Mais le versionning des documents n'est pas present dans Couchbase 2.0. Trop couteux en terme de performances lorsque les applications ont un tres gros throughput.Il n'est pas possible de faire des requêtes en direct depuis le programme il faut les écrire en avance.
Cela dit il est possible, via les API de Couchbase de creer les views par programmation, voir Create views (MapReduce) from your Java application
Notes que pour d'autres bases de données, il est également necessaire de creer des index (en amont) afin de garantir de bonnes performances. Ce qui est équivalent; une vue dans Couchbase, crée un index qui est ensuite utilisable dans les requetes.le 31/12/2012 à 8:06 -
moustic98Membre à l'essaiBonjour,
auriez vous des exemple d'utilisation de base de données NoSql dans un système de GED/ECM tel Alfresco ou Maarch
Merci d'avancele 24/12/2012 à 11:13