问题
In the Neo4j browser, when I profile a query, I get: "Started streaming 162063 records after 129 ms and completed after 13793 ms." Were the results all gathered after 129ms, but it took 13793ms to output them to the browser?
Also, when I run queries in the Cypher Shell, I get "162063 rows available after 9 ms, consumed after another 8673 ms". Does this mean all of the data was gathered after 9ms, but it took 8673ms to output it to the shell?
回答1:
When records (or rows) are streamed, the neo4j server sends each record as soon as it is available -- as opposed to waiting for all the records to be "gathered" and then sending them all at once.
So, for instance, "Started streaming 162063 records after 129 ms and completed after 13793 ms." means that the server streamed the first record after 129 ms and the last record after 13793 ms. (By the way, that is a rate of almost 12 records per ms.)
[EDITED]
The rate at which streamed data is consumed affects the rate at which data can be fed into the stream.
来源:https://stackoverflow.com/questions/48976429/what-is-the-difference-between-started-streaming-and-completed-in-neo4j-quer