Developpez.com

Le Club des Développeurs et IT Pro

NoSQL : MongoDB 2.2 est disponible

Framework d'agrégation, meilleure gestion des clusters distribués et de l'accès concurrentiel

Le 2012-09-04 13:57:03, par tarikbenmerar, Chroniqueur Actualités
10Gen, l'entreprise derrière le SGBD populaire MongoDB, vient d'annoncer la dernière version de l'outil, à savoir la 2.2. Elle comporte des fonctionnalités anticipées dans la Developer Preview de la 2.1, mais adaptées à un environnement de production.
L'apport le plus important de cette version est un nouveau framework d'agrégation en temps réel idéal pour les opérations complexes d'analyse. Celui-ci permettra de récupérer et de manipuler les données dans MongoDB, sans faire appel à des traitements complexes en batch avec Map/Reduce.

Il fournit des fonctionnalités apportées par les opérateurs tels que GROUP BY en SQL, ou d'autres tels que SUM, MIN, MAX, AVERAGE, LIMIT, SKIP ou SORT. Parmi les instructions de requête, on dénombre aussi « project » pour sélectionner certains attributs pour l'agrégation de données ou « Match » pour filtrer certaines données.

Dans un environnement Cloud, il est de plus en plus commun de retrouver de larges ensembles de données géographiquement réparties, avec le lot de difficultés que cette distribution pose pour gérer les différents fragments. C'est ainsi que la fonctionnalité « Data Center Awareness » vient apporter son aide pour gérer de façon standard les préférences de lecture entre les différents pilotes et clusters.

On retrouve aussi une autre fonctionnalité adaptée à un environnement Cloud distribué, appelée « Tag Aware Sharding », qui assure que les données des clusters fragmentées soient toujours proches de l'application qui les utilise le plus fréquemment.

Enfin, on remarque une amélioration dans l'accès concurrent aux données. Le verrou global a été complètement éliminé du processus MongoDB, et a été remplacé par un verrou pour chaque base de données. Un nouveau sous-système a été introduit et permet d'éviter les verrous pour la plupart des évènements d'erreur de page (Page Fault). Le parallélisme dans les écritures des applications secondaires a lui aussi été amélioré.

Page de téléchargement

Sources :

annonce sur le blog
Release note de la 2.2
vidéo explicative sur les changements des accès concurrents

Et vous ?

Quelle a été votre expérience personnelle avec MongoDB ?
Qu'apportera-t-elle de plus pour vous cette version 2.2 ?
  Discussion forum
2 commentaires
  • Lujeni
    Membre régulier
    L'ajout du features TTL sur les collections est très pratique !
  • J'ai personnellement utilisé l'Aggregation Framework sur un outil récemment, vraiment cool que ça arrive dans la version stable. Ça comble un grand manque dans MongoDB, ça peut même remplacer map/reduce.
    Bref de mieux en mieux pour ce moteur NoSQL, mon petit préféré dans le domaine.