2011-01-30 4 views
2

J'évalue (pas de cas d'utilisation spécifique), essayant juste de comprendre les solutions NoSQL (non-relationnelles) en largeur.Quels sont les facteurs importants à considérer lors de la sélection d'une solution NoSQL?

Alors, je assez bien comprendre Dynamo en terme de (taken from Dynamo paper):

  1. Cloisonnement -> hashage cohérent
  2. Haute disponibilité -> horloges Vector
  3. Pannes temporaires de manutention -> Sloppy Le quorum
  4. reprise d'échec -> Merkel Arbres
  5. membres et la détection échec -> protocole Gosisp

Ma question est, quelles sont les autres moyens de chacun de ces 5 (peut être plus "problèmes") sont dealed dans d'autres solutions comme:

  1. systèmes basés sur BigTable,
  2. Juste Key- stockage de valeur comme Redis et BDB.
  3. d'autres systèmes hybrides.

Répondre

1

Autres questions importantes:
1) Indices secondaires: Si vous N'avez pas besoin d'eux alors vous pouvez probablement trouver un moyen acceptable d'utiliser la plupart des banques de données.
2) Centres de données multiples: Si vous travaillez avec plusieurs centres de données, vous ne pourrez peut-être pas utiliser une architecture maître-esclave. Les systèmes multi-maîtres sont beaucoup plus compliqués.
3) Transactions: Si vous devez effectuer des transactions (opérations en plusieurs étapes qui doivent agir comme une étape), vous pouvez avoir des difficultés avec de nombreux systèmes non relationnels car ils ont tendance à sacrifier plus que strictement besoin en ce qui concerne ACID (atomicité, cohérence, isolation et durabilité).

Questions connexes