7

我正在考虑一种设置,其中我将实体存储在文档数据库(例如 CouchDB)和图形数据库(例如 Neo4j)中。基本原理是将每个实体信息(数据、blob、值、复杂的内部结构)存储在文档数据库中,同时将实体关系(父、子、关联实体)存储在图形数据库中。

有没有人做过/看到/被这样的设置咬过?我应该期待什么样的问题?首先想到的是两阶段提交。但是备份在这里也有问题。

4

2 回答 2

4

您可以查看“七周内的七个数据库”一书。第 8 章讨论通过 CouchDB、Neo4j 和 Redis 构建多语言结构。

于 2012-09-09T13:27:39.253 回答
0

冉,

由于 CouchDB 和大多数(全部?)文档/ kv 存储不支持事务,因此您需要停止担心两阶段提交。例如,您可以在 Neo4j 和 MySQL 之间进行 XA 事务,但不能在 CouchDB 或其亲属之间进行。

确实,为简单起见,为什么不采用纯图形数据库架构呢?您获得了更好的表现力和交易 - 以第二个商店类型的形式添加另一个移动部分的基本原理是什么?

于 2012-08-30T09:07:25.840 回答