在我的某些文档中,我有一个钥匙作为 school
。说文件是:
{
"id" : "123",
"name" : "Robert",
"school" : "Public"
}
现在,school
并不存在所有文档中。我想在尚未带有默认字符串的所有文档中插入 school
键。
我使用的是Elasticsearch版本编号2.4.5
。我该怎么做?我在看批量更新吗?
我会清楚地使用查询API的更新。您可以搜索所有没有school
字段的文档,并将其设置为您想要的任何默认值:
POST your-index/your-type/_update_by_query
{
"query": {
"bool": {
"must_not": {
"exists": {
"field": "school"
}
}
}
},
"script": {
"inline": "ctx._source.school = 'dummy'"
}
}
请注意,您需要启用动态脚本并重新启动ES服务器。