Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Couchdb 同时使用图形数据库和文档数据库_Couchdb_Neo4j_Graph Databases_Document Database_2phase Commit - Fatal编程技术网

Couchdb 同时使用图形数据库和文档数据库

Couchdb 同时使用图形数据库和文档数据库,couchdb,neo4j,graph-databases,document-database,2phase-commit,Couchdb,Neo4j,Graph Databases,Document Database,2phase Commit,我正在考虑一种设置,其中实体存储在文档数据库(例如CouchDB)和图形数据库(例如Neo4j)中。 基本原理是将每个实体信息(数据、blob、值、复杂的内部结构)存储在文档数据库中,同时将实体关系(父、子、关联实体)存储在图形数据库中 有人做过/看到过/被这样的设置咬过吗?我应该期待什么样的问题?mindaka的第一件事是两阶段提交。但这里的备份也有问题。 由于CouchDB和大多数(全部?)document/kv存储不支持事务,您需要停止担心2阶段提交。例如,您可以在Neo4j和MySQL之

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

有人做过/看到过/被这样的设置咬过吗?我应该期待什么样的问题?mindaka的第一件事是两阶段提交。但这里的备份也有问题。

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


实际上,为了简单起见,为什么不使用纯图形数据库体系结构呢?您可以获得更好的表现力和交易-以第二种存储类型的形式添加另一个移动部件的理由是什么?

您可以查看“书籍”。第八章讨论如何通过CouchDB、Neo4j和Redis建立多语言结构

如果每个节点都有一些非常大的上下文(例如,构建包含其内容的网站图表),我认为使用文档数据库的双重设置是合理的。除非内容是视频和图像的斑点,否则将其全部保留在图表中是没有问题的。@Andreas-啊-但我确实有斑点。但更重要的是,我在每个节点上都有很多非结构化属性,我希望在实体上运行报告和批处理过程。“图形数据库将大大降低我的速度,并将施加我不想处理的容量限制。”我明白了。同意重要的是你想对数据提出的问题。您可以使用一些类似Spring的数据来查看跨存储持久性,以便将正确的位保存到正确的存储桶中。arangodb()似乎结合了文档和图形数据库的功能