neo4j的异步密码查询
假设我在cypher中有一个select查询neo4j的异步密码查询,neo4j,cypher,Neo4j,Cypher,假设我在cypher中有一个select查询 MATCH (n:PERSON) RETURN n 这个查询应该会给我700亿个结果。但它不能,因为结果数据真的很大 或更新查询 MATCH (n :PERSON) SET n.name = NULL RETURN n 我知道这些查询很可笑,但为了说明我可以处理真正的大数据,我给出了上面的例子 所以现在我想要一些异步工作的东西,并向我展示这个过程。有时,我们会在查询中输入一些错误,或者犯一些我们想要的错误,查询会持续数小时。好的,它可以工作,但
MATCH (n:PERSON) RETURN n
这个查询应该会给我700亿个结果。但它不能,因为结果数据真的很大
或更新查询
MATCH (n :PERSON)
SET n.name = NULL RETURN n
我知道这些查询很可笑,但为了说明我可以处理真正的大数据,我给出了上面的例子
所以现在我想要一些异步工作的东西,并向我展示这个过程。有时,我们会在查询中输入一些错误,或者犯一些我们想要的错误,查询会持续数小时。好的,它可以工作,但我们想看看结果何时出现或过程
我写了cypher,但我读了一些文章,他们说还有其他方法可以访问或更改数据
那我该怎么办呢 如何编写某种批处理作业,从较小的节点集执行更新:
MATCH (n:person)
with n
SKIP ${nodes-to-be-skipped} limit ${maximal-nodes-to-be-match-or-updated}
SET n.name = NULL
RETURN n
如果知道要更新的节点数,则可以知道完成的百分比。
认为一个更大的限制值需要更多的内存,而一个更小的限制值需要更多的提交(因此需要更多的时间)。因此,您可以根据自己的需要进行调整
如果您需要一些批量操作,您可以查看批量批量插入,它必须更快,但在没有事务或索引的情况下工作,因此不会检查一致性
这取决于你的问题,哪一个是更好的解决方案。我可以为你的帖子解释的是,我只需要运行一个带有分页密码查询的作业
希望能有所帮助。您所说的“异步”过程是什么意思?它应该如何返回数据?@FylmTM尤其是更新过程它可以说我更新了50%的数据