任务:更新许多边属性的最快方法。出于性能原因,我忽略了图形方法并直接使用集合进行过滤。
ArangoDB 2.8b3
查询【报价-边缘集合】:
FOR O In Offer
FILTER O._from == @from and O._to == @to and O.expired > DATE_TIMESTAMP(@newoffertime)
UPDATE O WITH { expired: @newoffertime } IN Offer
RETURN { _key: OLD._key, prices_hash: OLD.prices_hash }
我在 _to、_from 上有系统索引,在过期时有范围索引
查询解释显示
7 edge Offer false false 49.51 % [ `_from`, `_to` ] O.`_to` == "Product/1023058135528"
系统索引仅用于过滤部分记录 (_to),不用于两者 (_from, _to),“过期”索引也未使用。请向我解释这种行为的原因,如果我在规划数据模型时确定,是否有可能指定用于最短路径的索引提示?