我想在弹性搜索中为_id字段设置doc_values想要基于_id进行排序
在api下点击以更新映射会给我一个错误
PUT my_index/my_type/_mapping
{
"properties": {
"_id": {
"type": "keyword",
"doc_values": true
}
}
}
原因:[_id]的映射定义具有不受支持的参数:[doc_value:true]
答案 0 :(得分:0)
它是“ doc_values”,您使用的参数不正确。 https://www.elastic.co/guide/en/elasticsearch/reference/current/doc-values.html
弹性不鼓励在_id字段上排序。参见this
_id字段的值也可以在聚合或排序中访问,但是不建议这样做,因为它需要在内存中加载大量数据。如果需要对_id字段进行排序或汇总,建议将_id字段的内容复制到另一个启用了doc_values的字段中。
编辑
为名称的索引模式创建一个脚本化字段。类型id
和脚本string
的{{1}}。有关脚本字段的更多信息,请参见this链接。这将创建一个新字段doc['_id'].value
,并为索引到与索引模式匹配的索引中的每个文档复制id
字段的值。然后,您可以在_id
字段上执行排序。