当前位置: 首页 > 知识库问答 >
问题:

Neo4j GC开销限制

姬弘文
2023-03-14

我建立了一个neo4j图。大小约为5 GB。当我想通过使用类似match(a)-[:know]-(b),(b)-[:know]-(c)merge(a)-[:maybe_know]-(c)这样的密码查询向每个节点添加一个关系时,我会得到GC开销限制错误。我不想为Neo4J增加内存。有什么方法可以一步一步地更新节点吗?比如,先有5000个节点,然后再有5000个节点...或者你对此有什么其他建议?

共有1个答案

益光亮
2023-03-14

就像@Twobit说的那样,将你的批处理限制在可管理的范围内,但也只匹配尚未匹配的东西。也就是说,如果AC已经know彼此,或者maybe_know关系已经在它们之间创建,那么永远不要再匹配它们。Yould还可以确保其中一个的id大于另一个,这将确保您不会进行两次相同的匹配(每个方向一次)。

match (a)-[:know]-(b),(b)-[:know]-(c)
where a <> c
  and not (a)-[:know|maybe_know]-(c)
  and id(a) > id(c)
merge (a)-[:maybe_know]-(c)
limit 1000
 类似资料:
  • 使用当我尝试构建我的项目时,这种错误越来越多: 错误:任务“:app:CompiledEbugJavaWithJavac”执行失败。OutofMemoryError:超出GC开销限制 有什么办法解决这个问题吗?

  • 我使用Jmeter将工作负载注入部署在AWS EC2实例上的应用程序。测试必须非常庞大:它持续10个小时,工作负载配置文件具有双峰形状,在5分钟内大约有2600个请求。实际上我有一个m3。部署应用程序的xlarge实例,8 m3。xlarge实例每个实例运行一个jmeter实例。使用python脚本,要注入的工作负载在8个客户机实例之间进行分割,因此在示例中,如果原始工作负载要注入800个请求,那

  • 我正在尝试预处理一个大的txt文件(10G),并将其存储在二进制文件中以备将来使用。当代码运行时,速度会减慢,并以 异常线程"main"java.lang.OutOfMemoryError: GC开销限制超过 输入文件具有以下结构 这是我正在使用的代码: 基本上,它通过in文件并将数据存储到对象HMbicnt(这是一个哈希映射)。一旦在第二列中遇到新值,它应该将对象写入输出文件,释放内存并继续。

  • 在Android Studio1.5.1只是通过移动源代码从一个系统到另一个即使干净的构建是成功的,但当代码运行我得到这种错误 java.lang.OutOfMemoryError: GC开销限制超过错误:任务': app: dexDebug'执行失败。 我在应用程序中添加了以下代码。格拉德尔还:

  • 问题内容: 我正在尝试建立一个包含2台服务器的Gridgain集群。 使用 GridDataLoader 将.csv文件中的数据(100万至5000万个数据)加载到Gridgain 。 从加载的数据中找到最小值,最大值,平均值等, 当在Eclipse中作为独立应用程序运行时,我得到正确的输出。 但是,在建立集群(eclipse环境中的2个服务器中的2个节点+我的Eclipse环境中的1个节点)的同

  • 问题内容: 我在一个程序中创建了这个错误,该程序创建了几个(数十万)HashMap对象,每个对象都有几个(15-20)文本条目。这些字符串必须全部收集(不分解成较小的数量),然后再提交给数据库。 根据Sun的说法,该错误发生“如果在垃圾回收上花费了太多时间:如果在垃圾回收上花费了总时间的98%以上,而回收不到2%的堆,则将引发OutOfMemoryError。 ”。 显然,可以使用命令行将参数传递