2010-06-28 8 views
1

Je développe un service qui doit effectuer une insertion en bloc de dizaines de milliers de lignes/éléments/objets à la fois, environ 20 fois par seconde.Efficacité d'insertion en masse dans les bases de données NoSQL

(.. Le stockage NoSQL peut être fragmentées, donc inserts peuvent travailler en parallèle La stratégie de sharding et sharding en général, ne pas d'importance pour cette discussion)

La question est la suivante: quels produits NoSQL à votre avis présenter la meilleure performance dans de telles circonstances? La réponse doit inclure tous les coûts, y compris la sérialisation et les frais généraux des protocoles bavards/laconiques.

Il n'y a aucune exigence pour que le stockage soit persistant.

Merci!

Répondre

0

Je suis assez sûr que vous voulez MongoDB (utilisez la version 1.5.x si vous voulez sharding - ne tenez pas compte des avertissements que ce n'est pas prêt pour la production).

+0

Salut Taw, merci d'avoir répondu. Pouvez-vous s'il vous plaît expliquer pourquoi? – Teleo

+0

Mes repères disent que mongodb est beaucoup plus rapide que tout le reste et que les tessons bien, ymmv ;-) La raison sous-jacente est que c'est écrit avec efficacité en tête - sur du matériel moderne. Il n'y a pas de couches d'abstraction inutiles comme SQL/JDBC/quoi que ce soit. Il n'y a pas d'ACID - juste atomicité par document qui est assez bon pour de nombreux cas. Et le plus important - il n'essaie pas de faire le travail du système d'exploitation comme tous les autres dbs - il 'mmap's tout et laisse le matériel MMU et OS faire la gestion de la mémoire. [Cela seul a tendance à vous donner 3x + accélérer gratuitement] (http://varnish-cache.org/wiki/ArchitectNotes). – taw

+0

Voulez-vous dire que MongoDB est une échelle web? http://www.xtranormal.com/watch/6995033/ –

Questions connexes