将 MongoDB 与 Neo4J 相结合是一种好的做法吗?

Is combining MongoDB with Neo4J a good practice?

我已经在 MongoDB 上有一个 .Net Web 项目 运行,我在其中存储了一些 news/feed 数据。 一段时间后,我需要一种更快的方法来跟踪 "who shared what" 和 "how to find relationships depending on these information"。 然后我想出了一个想法,使用 graphDB 来跟踪相关的提要和用户。

由于系统在 MongoDB 上已经 运行,我正在考虑将数据保留在 Mongo 中并在 Neo4J 中创建图形表示以应用图形搜索。

我不想将所有数据迁移到 Neo4J,因为很多人告诉我 MongoDB 的 I/O 性能比 Neo4J 好得多,他们还指出输出 Sharding 功能。

在这种情况下你有什么建议? 如果我按照我的想法去做,这会是一个好习惯吗?

我个人认为没有唯一的答案和最佳实践。使用多语言持久性系统是常见的用法。

现在一切都基于您的上下文,有些点我们不能只为您回复:

  • 你有多少时间(学习一门新技术不是几天就能用在生产上睡个好觉)

  • 您可以在该项目上投资多少钱,分片是 AFAIK,neo4j 企业功能和许可证如果您不是开源公司或商业公司,则需要付费。集群模式下 Neo4j 的托管成本。

  • 多少数据?只要您的图形适合内存,就不会 运行 I/O 问题。

现在,远离这些点,是的,您可以首先尝试将 neo4j 映射到 mongoDB。

也许尝试进行增量迁移,然后在过程结束时,也许会问您以下问题,为什么您需要 MongoDB 来处理图形结构?