我正在尝试将我的数据从旧的Elasticsearch(版本1.4.4)群集迁移到新的群集(5.1)
我在新的Elasticsearch中使用reindex api,但无法将旧_timestamp
转到新字段timestamp
。其他一切都很好。
POST _reindex
{
"source": {
"remote": {
"host": "http://oldhost:9200"
},
"index": "source",
"query": {
"match_all": {}
}
},
"dest": {
"index": "dest"
}
}
有没有办法添加脚本标记来设置旧timestamp
的新字段_timestamp
?
答案 0 :(得分:0)
我不是100%肯定这会起作用,但是使用reindex API你可以指定一小部分可以读取旧_timestamp
字段的脚本(虽然我从来没有亲自试了一下):
POST _reindex
{
"source": {
"remote": {
"host": "http://oldhost:9200"
},
"index": "source"
"query": {
"match_all": {}
}
},
"dest": {
"index": "dest"
},
"script": {
"lang": "painless",
"inline": "ctx._source.timestamp = ctx._timestamp"
}
}