什么是运行Neo4J实例的真正最小RAM

时间:2016-06-08 23:49:22

标签: neo4j

我希望尽可能在单个VM上运行尽可能多的Neo4J实例(使用企业版)。启动实例的最低RAM要求是什么?

现在,TaskManager告诉我Java.exe大约需要70,000K(70兆)。听起来不错吗?

我并不担心性能,我只想在一个盒子上填充尽可能多的实例,这样人们就可以对它们的图形进行低需求搜索。

3 个答案:

答案 0 :(得分:3)

有一件事是推荐的,第二件是"它取决于"。

Neo4j能够在Raspberry Pi上运行。但是你不应该期待很好的表现。我也使用AWS t2.micro进行测试,这已经足够了。

答案 1 :(得分:2)

当图形被加载到内存中以执行遍历时以及当它被分页回到磁盘时(当内存用完时),大小必然会波动。

如果我可以提供建议,您只能运行一个数据库实例,并为每个用户提供未连接的图表。就服务器资源而言,这很可能会更有效率。

例如,如果你说(:Item)节点构成了每个用户的图形, 您可以将它们标记为(:Item-User1),并为每个用户添加唯一的前缀或后缀。

因此,当您想要更改为每个用户运行的查询时,您只需添加该唯一元素并搜索图表。

想法是为每个用户创建一个单独的子图,该子图与其他用户的子图不相关。而不是为每个Individual用户提供单独的数据库实例。只要每个用户的子图与其他用户的子图不相连,就不会有用户被授予访问其他用户数据的安全漏洞。

通过这种方式,您可能拥有无限数量的用户(在合理范围内。很可能在数百万用户中),每个用户都有自己的子图,可能没有性能损失,而不是少数几个可以启动的数据库实例在单个虚拟机上,可能会竞争资源并扼杀。

答案 2 :(得分:0)

对于neo4j 3.x,documented最小内存要求为2GB。