2
我是新ArangoDB用户,我使用在2万笔收集以下查询为什么这个ArangoDB查询太慢?
FOR i IN meteo
FILTER
i.`POM` == "Maxial"
&& TO_NUMBER(i.`TMP`) < 4.2
&& DATE_TIMESTAMP(i.`DTM`) > DATE_TIMESTAMP("2014-12-10")
&& DATE_TIMESTAMP(i.`DTM`) < DATE_TIMESTAMP("2014-12-15")
RETURN
i.`TMP`
。它有三个被过滤的字段的索引。它需要aprox。 Web界面上9秒。
运行速度有可能吗?
谢谢
雨果
你能提供集合'meteo'的索引定义和查询解释结果吗?我可以从上面的查询中看到,属性'TMP'和'DTM'上的索引不会被使用,因为这些属性是直接使用,但他们在函数表达式中使用。为了在'TMP'上使用索引,最好将表达式DATE_TIMESTAMP(即。DTM)
stj
在POM,DTM和TMP字段中有散列索引 – Hugo
@stj我有原始查询的explain()结果和查询与您的建议。我应该在这里发布吗? – Hugo