Oui Daniel, Il y a NoSQL Avec ACID

J’ai récemment rencontré cette question de Yehuda-Daniel Korotkin dans le forum NoSQL de Linkedin demandant « Pensez-vous qu’il est possible de faire des transactions dans NoSQL? »

Je rencontre cette question sous une forme ou une autre à peu près tout le temps et les répondants orientent généralement la personne vers les nombreuses ressources qui montrent que, de manière tout à fait raisonnable, vous pouvez effectuer une transaction avec NoSQLif si la technologie de base de données est architecturée pour la prendre en charge.

Cette fois, cependant, l’un des premiers commentaires a commencé à rejeter la nécessité de l’exigence: « La prise en charge des transactions ACID rend les bases de données NoSQL un peu inutiles car elles deviennent beaucoup plus lentes tout en offrant beaucoup moins de fonctionnalités que les bases de données traditionnelles. »

Non Non Non! Ne vous inquiétez pas Daniel – vous pouvez avoir des transactions avec NoSQL! Et contrairement à la légende pleine d’espoir de Virginia et du Père Noël où la réponse est à propos de la foi you vous pouvez, de manière très tangible et sans renoncer à la fonctionnalité, l’avoir aujourd’hui avec Enterprise NoSQL.

Voici un résumé rapide de mon article sur ce fil:

  1. Oui, vous pouvez avoir de l’ACIDE avec NoSQL!
  2. Ne pas l’avoir signifie que le système n’a pas pris en compte la partie « Système de gestion » du SGBD dans sa conception originale
  3. MarkLogic le fait avec un contrôle de la concurrence multi-versions (contrôle de l’horodatage sur le cluster), une mise à l’échelle sans partage (pour simplifier les mises à jour et alimenter le traitement des requêtes vraiment parallélisé) et des clusters en clusters pour gérer même les plus grands ensembles de données. Et nous sommes heureux de montrer à tout le monde comment nous le faisons, voici un article détaillé sur exactement ce que fait MarkLogic sous le capot.
  4. Ce n’est pas de la théorie (ou de la foi): certaines des bases de données MarkLogic les plus importantes sont un cluster de 1024 qui a maintenu ses performances à mesure qu’elles se développaient et une base de données de documents de 36 milliards où une seule mise à jour de la valeur du document était reflétée dans la recherche ou la requête suivante. . . Sans parler des 100 applications critiques basées sur MarkLogic, dans lesquelles les utilisateurs comptent sur la constance des données pour gérer leur entreprise.
  5. Sans ACID, transactions et cohérence des données dans la base de données, la création et la gestion de cette fonctionnalité restent un exercice pour les développeurs. Les résultats sont clairs pour quiconque dont la mise à jour LinkedIn n’a pas été collée ou dont les publications Facebook sont présentées au hasard et en double. Et ce sont d’excellentes entreprises technologiques axées sur l’ingénierie – pensez simplement à ce qui se passe dans des endroits dont l’activité principale n’est pas la technologie!

Alors commencez avec le bon SGBD et oui, Daniel, vous (et tous ceux qui recherchent la nouvelle génération de base de données) pouvez avoir NoSQL avec ACID!

Maintenant, pour ce qui est de cette autre grande question à cette période de l’année here voici un très vieux post sur le Père Noël (et en fait des mises à jour par lots avec des transactions) qui me met certainement dans le camp de la Virginie!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.