加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

将所有Neo4J数据库加载到RAM

发布时间:2020-12-12 08:26:10 所属栏目:MsSql教程 来源:网络整理
导读:我正在尝试将所有的Neo4j数据库加载到RAM中,所以查询速度会更快.当通过属性映射到图创建时,我没有看到进程像以前一样在内存中占用更多的空间,并且它与磁盘上文件的空间也不成比例. 可能是什么问题呢?怎么可以固定…. 谢谢 解决方法 Neo4j懒惰地加载所有的数
我正在尝试将所有的Neo4j数据库加载到RAM中,所以查询速度会更快.当通过属性映射到图创建时,我没有看到进程像以前一样在内存中占用更多的空间,并且它与磁盘上文件的空间也不成比例.
可能是什么问题呢?怎么可以固定….
谢谢

解决方法

Neo4j懒惰地加载所有的数据,这意味着它会在第一次访问时将它们加载到内存中.缓存选项只是GC策略,所以当(或者)引用将被GCed时.要将整个图形加载到内存中,您的缓存类型必须很强,您需要遍历整个图形一次.你可以这样做:
// untested java code

import org.neo4j.helpers.collection.IteratorUtil;

// ...

for(Node node : graph.getAllNodes()) {
  IteratorUtil.count(node.getRelationships());
}

这样,所有节点和关系将被使用一次,从而加载到高速缓存中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读