我的重建索引的轻松脚本是添加一个字段。如何使用painless将新字段索引为keyword副文本字段?
POST _reindex
{
8<
"script" : {
"source" : "ctx._source.newfield = 'test'"
"lang" : "painless"
}我想让newfield成为newfield.keyword
发布于 2021-10-05 20:42:34
默认情况下,Elasticsearch会将其映射到一个text字段,并带有一个keyword子字段,除非您指定了显式映射。您的映射将如下所示:
"mappings": {
"properties": {
"newfield": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}因此,既可以在newfield上执行全文搜索,也可以使用newfield.keyword字段执行关键字搜索和聚合。
如果您希望将其映射为keyword,则必须指定您自己的explicit mappings。
https://stackoverflow.com/questions/69456153
复制相似问题