如何使用neo4j和gremlin处理大型数据集?

时间:2013-10-12 10:37:31

标签: neo4j gremlin

我有大约8800万个节点和2亿个边缘。我正在使用Neo4j Db。 我正在使用使用Gremlin的Batch Graph。因此,建议使用gremlin REPL对此数据集使用gremlin查询。我的意思是避免超时或与堆相关的问题。

目前我们的范围不是将faunus api用于hadoop map.reduce结构。

我可以使用简单的Neo4j Db和gremlin来处理这个问题吗?任何替代或解决方案?

1 个答案:

答案 0 :(得分:1)

我认为Marko / Peter在gremlin-users邮件列表上都给出了很好的答案:

https://groups.google.com/forum/#!topic/gremlin-users/w3xM4YJTA2I

我不确定我说的比他们说的多得多,但我会用自己的话重复一下。答案在很大程度上取决于您打算如何处理图表的性质以及图表本身的结构。如果你的工作量是很多局部遍历(即从某个顶点开始并从那里遍历)并且不期望有很多超级节点那么Gremlin和Neo4j应该做得很好。给它留下很多记忆,做一点neo4j specific tuning,你应该很高兴。另一方面,如果您的遍历本质上更具全局性(即它们以g.V或g.E开头),您必须触摸整个图形进行计算,否则您将不那么高兴。迭代数百/数亿的事情需要很长时间。

最终,您必须了解您所面临的问题,您的用例,图表结构以及图表数据库的优缺点,以确定如何处理该大小的图表。