【发布时间】:2020-04-18 12:31:33
【问题描述】:
长话短说:
我创建了一个严格的模板,创建了几个每日索引并将其中一种文档类型(%_level 类型从 float 更改为 integer ) 在模板中。
之后,我创建了其余的每日索引。
问题:
我需要将旧索引中的文档类型(%_level 类型从 float 更改为 integer)以与新索引兼容指数。 我怎样才能做到这一点?
现在了解详情...
我有以下严格的模板:
PUT _template/example-template
{
"order":0,
"version":200,
"index_patterns":["example-*"],
"settings":{
"index":{
"number_of_shards":4
}
},
"mappings": {
"iterations": {
"dynamic":"strict",
"properties": {
"%_average1": {
"type":"float"
},
"%_average2": {
"type":"float"
},
"sum": {
"type":"integer"
},
"%_level": {
"type":"float"
}
}
}
}
}
使用此模板创建了几个索引。
- example-20191220
- example-20191221
- example-20191222
- example-20191223
一段时间后我意识到我们需要将 %_level 类型从 float 更改为 integer,所以我更改了模板如下:
PUT _template/example-template
{
"order":0,
"version":200,
"index_patterns":["example-*"],
"settings":{
"index":{
"number_of_shards":4
}
},
"mappings": {
"iterations": {
"dynamic":"strict",
"properties": {
"%_average1": {
"type":"float"
},
"%_average2": {
"type":"float"
},
"sum": {
"type":"integer"
},
"%_level": {
"type":"integer"
}
}
}
}
}
现在创建了以下索引,其中 %_level 类型是 整数。
- example-20192412
- example-20192512
- example-20192612
但旧索引包含 %_level 为 float 的索引,而新索引包含 %_level 为 整数.
我需要将旧的索引 %_level 从 float 转换为 integer,这样我就可以构建包含所有索引的报告。
如何将旧索引中的 %_level 从 float 更改为 integer?
【问题讨论】:
标签: elasticsearch indexing types updates