1、报错信息:
Fielddata is disabled on text fields by default. Set fielddata=true on [createTime] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory. Alternatively use a keyword field instead.
2、翻译如下:
默认情况下在文本字段中禁用 Fielddata。在字段 [createTime] 上设置 fielddata=true,以便通过不反转反转索引将 fielddata 加载到内存中。注意,这可能会使用大量内存,或者使用其他字段代替。
3、报错原因:
ElasticSearch 5.x 版本之后将 String 类型去掉了,以 text 和 keyWord 代替。
官方解释如下: https://www.elastic.co/guide/en/elasticsearch/reference/current/fielddata.html
4、解决方式:
PUT 我的index/_mapping
示例:localhost:9200/other_logs/_mapping
{
"properties": {
"createTime": {
"type": "text",
"fielddata": true
}
}
}
返回以下报文说明修改成功
{
"acknowledged": true
}