我的Elasticsearch索引中存储了数据。我想使用某些字段进行查询。问题在于某些字段不可搜索。以下是有关映射结构的一些信息:
"bdate": {
"type": "string",
"store": true
},
"c": {
"type": "string",
"index": "no",
"store": true
}
我了解,由于"index":"no"
附加了"c"
字段,因此我无法使用此字段编写查询。但是,如何将"index"
从"no"
更改为另一个值才能获得编写所需查询的能力?
我的Elasticsearch版本是1.5。
答案 0 :(得分:0)
您必须更改映射。您不能更改现有字段的映射。
您需要重新索引索引,才能做到这一点: 1)创建一个新索引(空) 2)在此新索引上创建新映射 3)将数据从现有索引重新索引到新索引。您可以使用:
POST _reindex
{
"source": {
"remote": {
"host": "an url if your are not on the same server, if you use the same one on localhost for example: http://localhost:9200"
},
"index": "oldindex"
},
"dest": {
"index": "newindex"
}
}