tags:

views:

221

answers:

2

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.

+2  A: 

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?

Justin
+3  A: 

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.

Pascal Thivent
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.
Bytecode Ninja
@BytecodeNinja See my update, your understanding is wrong and you need maybe to clarify your question.
Pascal Thivent
Thanks for the clarification. I will keep this question as is and I may post a new question regarding document-oriented databases later.
Bytecode Ninja
@BytecodeNinja You're welcome (and thank you for not invalidating my answer by modifying the question :)
Pascal Thivent
@Pascal: You're welcome! ;-)
Bytecode Ninja