gpt4 book ai didi

performance - 在 neo4j 中检索时如何避免最近更新的节点?

转载 作者:行者123 更新时间:2023-12-02 03:07:31 25 4
gpt4 key购买 nike

这可能是一个与数据库核心功能相关的奇怪问题,但由于性能问题我被困住了。

考虑以下场景:

PROFILE 
MATCH (n:Label1)
WHERE n.prop1<1484850600
OR (n.prop1=1484850600 AND n.prop2<2)
WITH n
LIMIT 10
RETURN n

情况就像我在执行上述查询后更新了 prop1 和 prop2(如果 n.prop1<1484850600 那么 [prop1=1484850600,prop2=1] 并且 n.prop1=1484850600 AND n.prop2<2 然后 [prop2=prop2+1])

但是当我再次执行上面的查询时,我显然会先得到 (prop1=1484850600) 的记录,这对我来说不是必需的(我需要其他未更新的节点)。

我可以通过对 id(该节点的自动递增值)进行排序来实现它,但是由于我有大量的数据集(1cr 节点,1cr 属性值排序),密码查询正在生成并且它是比平时花更多的时间,所以我坚持在这里。

PROFILE 
MATCH (n:Label1)
WHERE n.prop1<1484850600
OR (n.prop1=1484850600 AND n.prop2<2)
WITH n
ORDER BY n.id
LIMIT 10
RETURN n

有没有其他方法可以实现它,还是我错过了什么?

最佳答案

将查询分成两部分。处理 prop1 = 1484850600 和 prop2 < 2 的节点。然后执行第二个查询以处理 prop1 < 1484850600 的节点。

关于performance - 在 neo4j 中检索时如何避免最近更新的节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41765027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com