Spring 大量插入后,neo4j速度减慢
我是从比特币核心RESTAPI读取数据并将块、地址和事务作为图形对象插入Neo4j的所有者 在一些进口产品之后,这一过程正在放缓,直到2011年。我不想使用CSV导入。我的问题不在于性能,我的目标是在应用程序不因内存而停止的情况下插入内容(即使需要花费相当多的时间) 我使用的是spring-boot-starter-data-neo4jSpring 大量插入后,neo4j速度减慢,spring,neo4j,spring-data-neo4j,Spring,Neo4j,Spring Data Neo4j,我是从比特币核心RESTAPI读取数据并将块、地址和事务作为图形对象插入Neo4j的所有者 在一些进口产品之后,这一过程正在放缓,直到2011年。我不想使用CSV导入。我的问题不在于性能,我的目标是在应用程序不因内存而停止的情况下插入内容(即使需要花费相当多的时间) 我使用的是spring-boot-starter-data-neo4j 在我的代码中,我尝试多次进行session.clear,但似乎没有效果。重新启动tomcat8后,事情又进展得很快。因为您的项目是关于批量插入的,所以我不会使用
在我的代码中,我尝试多次进行
session.clear
,但似乎没有效果。重新启动tomcat8后,事情又进展得很快。因为您的项目是关于批量插入的,所以我不会使用类似于Spring Data Neo4j的OGM来写入数据
您不希望会话将数据保留在客户端上
相反,使用Cypher直接发送您从区块链API获得的更新,作为每个请求的批处理,请参阅(其中一些我们也在SDN/Neo4j OGM中使用)
您仍然可以将SDN用于单个实体处理(CRUD),这正是OGM在我的书中用来简化样板的好处
但是对于具有聚合、筛选、投影和路径匹配的更复杂的读取操作,我仍然会在带注释的存储库方法上使用Cypher,返回可以映射到DTO列表的行。因为您的项目是关于大规模插入的,所以我不会使用类似OGM的Spring Data Neo4j来写入数据 您不希望会话将数据保留在客户端上 相反,使用Cypher直接发送您从区块链API获得的更新,作为每个请求的批处理,请参阅(其中一些我们也在SDN/Neo4j OGM中使用) 您仍然可以将SDN用于单个实体处理(CRUD),这正是OGM在我的书中用来简化样板的好处
但是对于具有聚合、筛选、投影和路径匹配的更复杂的读取操作,我仍然会在带注释的存储库方法上使用Cypher,返回可以映射到DTO列表的行。谢谢!你知道为什么session.clear不足以做我想做的事吗?谢谢!你知道为什么session.clear不足以做我想做的事吗?