我有旧映射的旧索引。我需要一个新的映射。所以我必须创建新索引导致映射无法更改。
我的问题是如何将数据从旧索引/映射传输和转换为新索引?
例如我有一个结构:
{
...
"a",
"b"
}
但是新的映射是:
{
"c": {
"a",
"b"
}
}
我查了article。但是没有关于数据转换的信息。
答案 0 :(得分:1)
您可以使用reindex Api。这个API支持脚本来转换文档。文档中的示例:
{
"source": {
"index": "twitter"
},
"dest": {
"index": "new_twitter"
},
"script": {
"inline": "if (ctx._source.foo == 'bar') {ctx._version++; ctx._source.remove('foo')}",
"lang": "painless"
}
}
在脚本中,您可以根据需要转换源文档。