首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >组合MongoDB和像Neo4J这样的GraphDB

组合MongoDB和像Neo4J这样的GraphDB
EN

Stack Overflow用户
提问于 2013-02-03 22:28:10
回答 2查看 2.6K关注 0票数 2

作为我正在开发的内容管理系统的一部分,我已经将MongoDB作为主要的数据存储,它提供给ElasticSearch和Redis。所有这些都是以解密方式配置的。

我目前正在尝试用JSON (一种DSL )开发一个声明式api,在实现时,它将使我能够用JSON编写统一的查询,但在后端,这些数据存储协同工作才能得出结果。联合搜索,如果您愿意的话。

现在,在充实此Json api支持的查询类型时,我遇到了当前设置不(有效)支持的一类查询:基于图形的查询,如friend- of -friend、RDF-queries等。我也希望支持这些查询。

因此,我正在寻找一种方法,以最合适的方式将GraphDB引入这个生态系统。我可能应该说应用层位于Node.js中。

我读过很多比较Neo4J (一种流行的GraphDB)和MongoDB的文章,但没有太多的实际用例,现实世界中两者互补的场景。

任何指点都非常感谢。

EN

回答 2

Stack Overflow用户

发布于 2013-02-03 23:45:19

您可能想看看structr1,它有一个可以使用Java配置的RESTful图形数据库后端。在未来的版本中,将有一个仅使用REST调用的配置选项,以便您可以启动structr服务器,并将其配置和使用为独立的图形数据库后端。

请通过推特或电子邮件与我们联系。

(免责声明:我是structr的开发者之一,所以这条评论可能不是100%公正的:)

1

票数 5
EN

Stack Overflow用户

发布于 2013-05-07 02:01:14

这些数据库具有很强的互补性。

使用MongoDB存储原始数据/记录系统,并将原始数据加载到Neo4j中,以获得更多洞察/分析。当您处理非结构化数据时,您希望将信息存储在有利于非结构化数据的数据存储中- MongoDB可以满足您的要求(其他类似的数据库也是如此)。虽然Neo4j被认为是一个非结构化数据库,但它并不适合非结构化数据。因为您必须确定什么是关系,什么是节点,以及为每个节点存储了什么属性-当您拥有半结构化数据并对要执行的分析类型有所了解时,它更适合。

一个很好的体系结构是将非结构化数据存储在MongoDB中,然后使用作业将它们加载到Neo4j中。这允许您重新加载图形,如果您发现有新的信息要存储在图形中以进行额外的分析。

它们绝对不是彼此的替代品。它们适合非常不同的用例。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14673521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档