lucene - Elasticsearch 统计方面文档中缺失字段的默认值

标签 lucene elasticsearch

我正在使用统计方面 (@see http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-facets-statistical-facet.html) 对我的 Elastic Search 索引中文档中的几个字段执行聚合。

我想知道是否有人知道 API 是否提供了一种方法来在特定字段不存在时提供默认值。例如,如果某个字段不存在,则使用 0(零)作为该字段值。默认情况下,它似乎在聚合发生时给出空指针异常。

我最初的想法是利用脚本字段来测试聚合字段是否为空,并在那里执行默认的 0 逻辑。

最佳答案

正如您在问题中所述,您可以尝试此处定义的脚本字段:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-facets-statistical-facet.html#_script_field_2

例如:"script": "_source.place == null ? null : 0"

我承认我没有在统计方面尝试过这个,但我在术语统计方面使用了一个类似的脚本并且效果很好。

关于lucene - Elasticsearch 统计方面文档中缺失字段的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19497413/

相关文章:

elasticsearch - 查询时查询上下文和过滤上下文之间的区别

lucene - Nutch - 如何通过小块爬行?

lucene - Sitecore Lucene 从索引中排除项目

c# - 如何为 .Net 构建 PDFBox

java - Lucene 的评分如何取决于查询的相对位置?

elasticsearch - 在 Elasticsearch 2.3.4中更改字段类型

elasticsearch - 为什么我在elasticsearch中需要 "store":"yes"?

ruby-on-rails-3 - 如何在Tyre elasticsearch中动态增强相关性(从数据库获取增值)

mongodb - 检测过时的mongodb elasticsearch river并重新启动它

java - 具有日期属性的 Hibernate Search MultiFieldQueryParser