1

一般来说,我是 elasticsearch 和 nosql 文档模型的新手。

在弹性搜索中,空字段的最佳做法是什么。

我们应该将其声明为 null 还是完全忽略它?

示例:电子邮件字段

[{
    id:1,
    name:"John",
    email:"userone@erj.com"
},
{
    id:2,
    name:"David",
    email:null
},
{
    id:3,
    name:"Tony"
}]
4

1 回答 1

2

你想对空字段做什么完全取决于你。默认情况下,ES 会完全忽略 null 字段。如果需要,您也可以在文档的映射中为空字段指定默认值。

映射示例:

{
    "_default_" : {
        "properties" : {
            "id" : {"type" : "string", "index" : "not_analyzed"},
            "name" : {"type" : "string"},
            "email" : {"type" : "string", "index" : "not_analyzed", "null_value" : "NOEMAILAVAILABLE"}
        }
    }
}

此处概述了处理此问题的潜在方法:http ://www.elasticsearch.org/guide/reference/mapping/core-types.html

于 2011-12-13T21:24:59.817 回答