Ja Daniel, es gibt NoSQL mit ACID

Ich bin kürzlich auf diese Frage von Yehuda-Daniel Korotkin im NoSQL-Forum von Linkedin gestoßen und habe gefragt: „Glauben Sie, dass es möglich ist, Transaktionen in NoSQL durchzuführen?“

Ich begegne dieser Frage in der einen oder anderen Form so ziemlich die ganze Zeit und die Befragten lenken die Person normalerweise auf die vielen Ressourcen, die zeigen, dass Sie mit NoSQL eine Transaktion durchführen können … wenn die Datenbanktechnologie von Anfang an so konzipiert ist, dass sie sie unterstützt.

Diesmal begann jedoch einer der ersten Kommentare, die Notwendigkeit der Anforderung zu verwerfen: „Die Unterstützung für ACID-Transaktionen macht NoSQL-Datenbanken ein wenig nutzlos, da sie erheblich langsamer werden und gleichzeitig viel weniger Funktionalität bieten als herkömmliche Datenbanken.“

Nein Nein Nein! Keine Sorge, Daniel – Sie können Transaktionen mit NoSQL durchführen! Und im Gegensatz zu der hoffnungsvollen Legende von Virginia und Santa Claus, in der es um den Glauben geht … können Sie es heute mit Enterprise NoSQL sehr greifbar und ohne auf Funktionalität zu verzichten.

Hier ist eine kurze Zusammenfassung meines Beitrags zu diesem Thread:

  1. Ja, Sie können ACID mit NoSQL haben!
  2. Es nicht zu haben bedeutet, dass das System den ‚Management System‘-Teil des DBMS in seinem ursprünglichen Design nicht berücksichtigt hat
  3. MarkLogic tut dies mit Multi-Version Concurrency Control (Zeitstempelkontrolle über den Cluster), Shared-Nothing Scale out (um die Updates zu vereinfachen und eine wirklich parallelisierte Abfrageverarbeitung zu ermöglichen) und Clustern zu Clustern, um selbst die größten Datensätze zu verwalten. Und wir freuen uns, jedem zu zeigen, wie wir es tun, hier ist ein Deep-Dive ein Papier über genau das, was MarkLogic unter der Haube tut.
  4. Dies ist keine Theorie (oder Glaube): Einige der größeren MarkLogic-Datenbanken sind ein 1024-Cluster, der die Leistung beim Skalieren beibehielt, und eine 36-Milliarden-Dokumentendatenbank, in der eine einzelne Aktualisierung des Dokumentwerts in der nächsten Suche oder Abfrage berücksichtigt wurde . . . Ganz zu schweigen von den 100 von MarkLogic betriebenen unternehmenskritischen Anwendungen, bei denen die Mitarbeiter auf Datenkonstanz angewiesen sind, um ihr Geschäft zu führen.
  5. Ohne ACID, Transaktionen und Datenkonsistenz in der Datenbank bleibt das Erstellen und Verwalten dieser Funktionalität den Entwicklern überlassen. Die Ergebnisse sind für jeden klar zu sehen, dessen LinkedIn-Update nicht geklebt hat oder dessen Facebook-Posts zufällig und doppelt eingehen. Und das sind exzellente, ingenieursorientierte Technologieunternehmen – denken Sie nur daran, was an Orten passiert, deren Hauptgeschäft nicht die Technologie ist!

Beginnen Sie also mit dem richtigen DBMS und ja, Daniel, Sie (und alle anderen, die nach der neuen Datenbankgeneration suchen) können NoSQL mit ACID haben!

Nun zu dieser anderen großen Frage um diese Jahreszeit … hier ist ein sehr alter Beitrag über Santa (und tatsächlich Batch-Updates mit Transaktionen), der mich sicherlich in das Virginia-Lager bringt!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.