我正在使用统计方面(@see http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-facets-statistical-facet.html)对我的弹性搜索索引中的文档中的几个字段执行聚合。
我想知道是否有人知道如果特定字段不存在,API是否提供了提供默认值的方法。例如,如果字段不存在,则使用0(零)作为该字段值。默认情况下,聚合发生时似乎会给出空指针异常。
我最初的想法是利用脚本字段来测试聚合字段是否为空并在那里执行默认的0逻辑。
答案 0 :(得分:3)
正如您在问题中所述,您可以尝试按此处定义的脚本字段:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-facets-statistical-facet.html#_script_field_2
例如:"script" : "_source.place == null ? null : 0"
我承认我没有在统计方面尝试这个,但我在术语统计方面使用了类似的脚本,它运行良好。