Are there any reliable and well-known NoSQL DBs available that support JTA transactions? In my application I need to store some data to the RDBMS DB and some data to the NoSQL DB in the same transaction and I am using JTA for my RDBMS transactions.
Are there any reliable and well-known NoSQL DBs available that support JTA transactions?
Neo4j does support XA-protocol transactions, deadlock detection, transaction recovery, JTA.
Update: Answering a comment from the OP:
While Neo4j is not an RDBMS, it is my understanding that NoSQL databases refer to these new generation of document-oriented databases like CouchDB and MongoDB. But thanks for the answer.
Document-oriented databases (CouchDB and MongoDB) are just ONE kind of NoSQL databases, your understanding is wrong. Key / Value databases (Riak, Redis, Voldemort), column-oriented databases (HBase and Cassandra), graph-oriented databases (Neo4j, HypergraphDB and FlockDB) all belong to the NoSQL databases family.
If you're specifically looking for a document-oriented database, you should maybe update your question because it's misleading.
Well this is a yes and a no answer, yes a few NoSQL db's offer atomic operations but these are not transactions in the sense of a RDMBS and generally only affect a single document.
However you have a bigger problem, your NoSQL connection resource would need to support XA transactions which is a big ask I cannot find any reference to XA transaction support in the most popular offerings. You could always create your own XA resource or possibly place things inside a UserTransaction?
© 2022 - 2024 — McMap. All rights reserved.