Elasticsearch简单的function_score查询非常慢

时间:2015-05-06 10:43:00

标签: java performance elasticsearch

我正在运行一个如下所示的查询,只有许多过滤器:

{
  "size": 30,
  "query": {
    "function_score": {
      "query": {
        "filtered": {
          "query": {
            "match_all": {}
          }
        }
      },
      "script_score": {
        "script": "( doc['num'].value <= 3 || Math.random() < 1/doc['num'].value ) ? Math.random() : 0"
      },
      "boost_mode": "replace"
    }
  }
}

并且看到运行时间比没有功能评分脚本慢10倍,即使使用所有可能的过滤器也是如此。

我们正在运行Elastic版本1.0.0并使用Java API(包org.elasticsearch.client)

有没有办法以更好的性能获得类似的结果? Elasticsearch教程中的“Native Java Scripts”链接似乎已经破解。

0 个答案:

没有答案