在Neo4j查询中“开始流式传输”和“已完成”之间有什么区别?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Neo4j查询中“开始流式传输”和“已完成”之间有什么区别?相关的知识,希望对你有一定的参考价值。
在Neo4j浏览器中,当我描述一个查询时,我得到:“在129毫秒后开始流式传输162063条记录并在13793毫秒后完成。”结果都是在129ms之后收集的,但是将它们输出到浏览器需要13793ms?
此外,当我在Cypher Shell中运行查询时,我得到“在9毫秒后可用的162063行,在另一个8673毫秒后消耗”。这是否意味着所有数据都是在9ms后收集的,但将它输出到shell需要8673ms?
答案
当流式传输记录(或行)时,neo4j服务器会在每条记录可用时立即发送 - 而不是等待所有记录“聚集”,然后立即发送所有记录。
因此,例如,“在129 ms之后开始流式传输162063记录并在13793 ms之后完成”。表示服务器在129 ms后流式传输第一条记录,在13793 ms之后流式传输最后一条记录。 (顺便说一下,这是每毫秒差不多12条记录的速度。)
[EDITED]
消耗流数据的速率会影响数据输入流的速率。
以上是关于在Neo4j查询中“开始流式传输”和“已完成”之间有什么区别?的主要内容,如果未能解决你的问题,请参考以下文章