欧洲时报本篇文章1290字,读完约3分钟

阿里云国际站经销商,主营阿里云,腾讯云,华为云,亚马逊aws,谷歌云gcp,微软云az,免费开户,代充值优惠大,联系客服飞机@jkkddd


基于reindex实现低版本多type数据迁移

操作流程
准备工作
准备阿里云Elasticsearch和Logstash实例,确保两者在同一专有网络下。
阿里云Elasticsearch实例:存储索引数据。
阿里云Logstash实例:通过管道配置功能,迁移处理后的数据。
步骤一:转换索引类型
通过reindex,将阿里云Elasticsearch 5.x实例中的多type索引转换为单type索引。您可以通过以下两种方式来实现:
合并type方式:将Elasticsearch 5.x实例中的单索引多type数据,通过reindex script方式合并成一个单索引单type数据。
拆分type方式:将Elasticsearch 5.x实例中的单索引多type数据,按照不同的type,通过reindex拆分成多个单索引单type数据的方式。
步骤二:通过Logstash迁移数据
使用阿里云Logstash,将处理后的索引数据迁移至高版本Elasticsearch 6.x实例中。
步骤三:查看数据迁移结果
在Kibana中查看迁移成功的索引。
准备工作
准备低版本(5.5.3)和高版本(6.7.0)的阿里云Elasticsearch实例,并准备待迁移的多type数据。
创建实例的具体操作,请参见创建阿里云Elasticsearch实例。
创建阿里云Logstash实例,要求与阿里云Elasticsearch实例处于同一专有网络下。
具体操作,请参见步骤二:创建阿里云Logstash实例。
步骤一:转换索引类型
以下步骤介绍通过合并type方式,将单索引多type数据合并成一个单索引单type数据。
开启Elasticsearch实例的自动创建索引功能。
登录阿里云Elasticsearch控制台。
在左侧导航栏,单击Elasticsearch实例。
在顶部菜单栏处,选择资源组和地域。
在实例列表中,单击低版本的实例ID。
在左侧导航栏,单击ES集群配置。
单击YML文件配置右侧的修改配置。
在YML文件配置页面,设置自动创建索引为允许自动创建索引。
勾选该操作会重启实例,请确认后操作,单击确定。
登录低版本Elasticsearch实例的Kibana控制台。
具体操作,请参见登录Kibana控制台。
在左侧导航栏,单击Dev Tools(开发工具)。
在Console中,执行以下命令,将单索引多type数据合并成单索引单type数据。
以上示例通过自定义type的方式,指定ctx._source.type在new1索引中添加type字段,将其设置为原始_type的值。并且new1索引的_id由_type-_id组成,防止存在不同类型的文档具有相同的ID而发生冲突的情况。
执行GET new1/_mapping命令,查看合并后的Mapping结构。

执行以下命令,查看合并后的索引数据。