是否有任何支持 JTA 事务的可靠且知名的 NoSQL DB?在我的应用程序中,我需要在同一个事务中将一些数据存储到 RDBMS DB 和一些数据到 NoSQL DB,并且我使用 JTA 进行 RDBMS 事务。
问问题
3901 次
2 回答
6
是否有任何支持 JTA 事务的可靠且知名的 NoSQL DB?
Neo4j确实支持 XA 协议事务、死锁检测、事务恢复、JTA。
更新:回答 OP 的评论:
虽然 Neo4j 不是 RDBMS,但据我了解,NoSQL 数据库指的是新一代的面向文档的数据库,如 CouchDB 和 MongoDB。但感谢您的回答。
面向文档的数据库(CouchDB 和 MongoDB)只是一种 NoSQL 数据库,你的理解是错误的。键/值数据库(Riak、Redis、Voldemort)、面向列的数据库(HBase 和 Cassandra)、面向图的数据库(Neo4j、HypergraphDB 和 FlockDB)都属于 NoSQL 数据库家族。
如果您专门寻找面向文档的数据库,您可能应该更新您的问题,因为它具有误导性。
于 2010-05-12T06:33:34.913 回答
2
好吧,这是一个是也不是的答案,是的,一些 NoSQL 数据库提供原子操作,但这些不是 RDMBS 意义上的事务,通常只影响单个文档。
但是你有一个更大的问题,你的 NoSQL 连接资源需要支持 XA 事务,这是一个很大的问题,我在最流行的产品中找不到任何对 XA 事务支持的参考。您总是可以创建自己的 XA 资源或可能将东西放在 UserTransaction 中?
于 2010-05-12T06:05:39.243 回答