mardi 4 mai 2010

Les alternatives à Cassandra

Maintenant que nous avons un peu vu ce qu'est Cassandra, j'aimerais parler des alternatives qui existent.
Cet article est en partie une traduction de l'excellent article :

Il ne faut pas croire qu'il existe actuellement une ou deux bases NoSQL qui se battent en duel, c'est un mouvement qui est bien enclenché maintenant et qui possède une excellente dynamique dynamique.

Voici une liste non exhaustive des bases qui existent, classées suivant leurs caractéristiques. J'ai mis en gras celles qui semblaient à mon goût être utilisable de façon stable et qui sont activement développées.

Excellente consistance des données (bonne réplications dans les nodes) :

Les bases ci-dessous assurent que les données ne seront pas perdues et donc que les modifications, inclusions des données se feront de façon sûre à travers les nodes. Cependant le principal désavantage de ces bases est que l'on doit faire constamment attention car il faut attendre que les modifications soient répercutées dans l'ensemble des noeuds.
  • BigTable : Table de Google
  • HyperBase : Base de données performante
  • HBase : Cette base de données est performante pour les accès très fréquents et courts. Elle peut en particulier dépasser (et de loin si on en croit les tests effectués par rapport à Cassandra 0.5.1, cf le rapport de yahoo déjà posté sur ce blog).
  • MongoDB
  • Terrastore : Base de données utile pour la gestion de base de données très importantes.
  • Redis
  • Scalaris
  • MemcacheDB
  • Berkeley DB

Consistance moyenne des données, mais disponibilité excellente :

Cette catégorie correspond aux bases de données qui sont plus tolérantes à des données non intégralement répliquées. La plupart de ces dernières ont une variable "consistency" qui indiquent à quel point les données sont correctement répliquées au travers des noeuds (nodes). L'avantage est que l'accès, l'écriture et la lecture peuvent se faire à n'importe quel moment.
  • Dynamo
  • Voldemort
  • Tokyo Cabinet 
  • KAI
  • Cassandra : Peut être la plus couramment utilisée parmis toutes les bases de données du monde NoSQL. Utilisée en version modifiée dans Twitter, Digg, Reddit.
  • CouchDB
  • SimpleDB
  • Riak : Toute jeune base, cf l'article sur linuxfr.org


Enfin pour finir, une petite image issue du même blog qu'en haut, voici un petit graphique qui résume bien les capacités de chacune des bases ainsi que leurs caractéristiques :


Aucun commentaire:

Enregistrer un commentaire