Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Neo4j返回节点或属性是否更快?_Java_Neo4j_Attributes_Cypher_Nodes - Fatal编程技术网

Java Neo4j返回节点或属性是否更快?

Java Neo4j返回节点或属性是否更快?,java,neo4j,attributes,cypher,nodes,Java,Neo4j,Attributes,Cypher,Nodes,我正在处理具有多个属性的节点,每个节点有7或8个属性。由于Neo4j是基于节点对象的,如果我只想获取其中一个属性,那么返回整个节点然后获取属性,或者直接返回属性,会更快吗?我指的是返回数百万条记录的查询,我使用Java API来收集结果。如果您指的是实际返回,那么返回节点将隐式返回所有属性,因此成本会更高 如果您还没有完成返回,并且仍在事务中处理,那么在您自己实际访问一个或多个属性之前,不会进行属性访问 无论是Cypher还是Java,在完成过滤/限制/聚合之前,最好都不要访问属性,如果这样做有

我正在处理具有多个属性的节点,每个节点有7或8个属性。由于Neo4j是基于节点对象的,如果我只想获取其中一个属性,那么返回整个节点然后获取属性,或者直接返回属性,会更快吗?我指的是返回数百万条记录的查询,我使用Java API来收集结果。

如果您指的是实际返回,那么返回节点将隐式返回所有属性,因此成本会更高

如果您还没有完成返回,并且仍在事务中处理,那么在您自己实际访问一个或多个属性之前,不会进行属性访问


无论是Cypher还是Java,在完成过滤/限制/聚合之前,最好都不要访问属性,如果这样做有意义的话,只使用节点。这将避免在可能因这些操作而被过滤掉的节点上执行属性访问。

是的,我说的是实际回报,而您的回复正是我所想的。无论如何,我会在将来做一些测试来检查每个性能,我会把它贴在这里。谢谢@InverseFalcon