- 创建新索引
- 新索引创建新mapping
- 原索引导出数据到新索引
- 新索引创建原索引一致的别名
- 删除原索引
针对于第四步:这个就要用到索引别名了,如果你最开始建索引的时候没有考虑设计索引别名,那就杯具了。
你可以把索引的名称设置成name_v1 别名设置为name,然后代码里面访问搜索的时候连接的其实是别名name;
这样当你以后索引结构调整需要重新创建的时候,就可以在新建一个索引name_v2,然后把数据初始化完成之后,把原来索引的别名去掉,把name_v2的别名设置成name,这样代码就不用改动了。