我正在处理具有几个属性的节点,每个节点7或8个属性。因为Neo4j是基于节点对象的,所以如果我只想获取那些属性之一,那么返回整个节点然后获取属性或直接返回属性会更快吗?我说的是查询返回了数百万条记录的查询,并且我正在使用Java API来收集结果。
答案 0 :(得分:0)
如果您正在谈论实际的收益,那么返回节点将隐式返回所有属性,因此它将变得更加昂贵。
如果您还没有完成退货,并且仍在交易中进行处理,那么只有您自己实际访问一个或多个属性时,属性访问才会发生。
对于Cypher或Java,无论哪种情况,通常最好都保留属性访问权限,直到您完成过滤/限制/聚合并改为使用该节点为止(如果您这样做有意义)。这样可以避免在可能由于这些操作而被滤除的节点上执行属性访问。