2017-03-16 3 views
1

Ich versuche zu verstehen, welche Art von verteilten Transaktionen OrientDB unterstützt. Die Dokumentation über verteilte Transaktionen hier:Unterstützt OrientDB Multi-Cluster-Transaktionen?

http://orientdb.com/docs/last/Distributed-Architecture.html#distributed-transactions

Scheint transaktions Aktualisierung Repliken eines Clusters zu beschreiben, zu einem Konsens-Protokoll verwendet, beschreibt aber nicht, etwas über mehrere Cluster auf mehreren Servern aktualisieren.

Sind verteilte Transaktionen in OrientDB auf die Ausführung in einem einzelnen Cluster beschränkt oder können ACID-Transaktionen in mehreren Clustern auf mehreren Servern ausgeführt werden? Wenn ja, welchen Mechanismus verwendet OrientDB, um dies zu erreichen?

Antwort

1

Die verteilte Transaktion kann Datensätze mehrerer Klassen/Cluster enthalten. Das verwendete Protokoll ist ein optimistisches 2-Phasen-Commit, das dem in Google BigTable verwendeten sehr ähnlich ist (https://arxiv.org/html/1106.3325). Der Konsens basiert auf einer writeQuorum, die standardmäßig die Mehrheit ist, aber kann entspannt (endgültige Konsistenz) oder erhöht (= alle), um keine Dirty Reads zwischen Servern zu haben.