更新时间:2022-03-15 03:51:01
本文介绍如何使用 DTS 快速创建RDS for MySQL->阿里云Elasticsearch的实时同步作业,实现RDS for MySQL数据到阿里云Elasticsearch的实时同步。
本文字数: 2239
阅读时间: 5~8分钟
您将了解
1、支持实时同步的类型
2、支持SQL操作的类型
3、配置步骤
以下是正文
数据传输服务 DTS (以下简称 DTS)
支持RDS for MySQL与阿里云Elasticsearch实时同步数据,通过 DTS 提供的 RDS for MySQL->阿里云Elasticsearch实时同步功能,可以将企业线上RDS for MySQL中的生产数据实时同步到阿里云Elasticsearch中进行搜索。
同一个阿里云账号下 RDS for MySQL->阿里云Elasticsearch实例。
主要支持的SQL操作类型如下:
说明 目前暂不支持 DDL同步,如果同步过程中遇到DDL操作,DTS会忽略掉。
如果后续遇到DDL某个表,则对应表的DML操作可能失败,修复方法为:
如果是修改表、新增列的DDL,建议DDL的操作顺序为:
下面详细介绍创建RDS for MySQL实例到阿里云Elasticsearch实例同步链路的具体步骤。
说明:在配置同步链路之前需要先购买一个同步链路,同步链路目前支持包年包月及按量付费两种付费模式,可以根据需要选择不同的付费模式。
说明 DTS控制台的同步实例按照地域展示,刚才购买的同步实例所属的地域为同步实例的目标地域。例如上面购买的是 杭州RDS for MySQL->杭州阿里云Elasticsearch的同步实例,那么这个同步实例在DTS的杭州地区。进入杭州区域的实例列表,查找刚才购买的同步实例,然后点击新购实例右侧的 配置同步作业开始配置实例。
同步作业名称
同步作业名称没有唯一性要求,为了更方便识别具体的作业,建议选择一个有业务意义的作业名称,方便后续的链路查找及管理。、
源实例信息
本示例采用数据源为 RDS for MySQL,需要配置RDS实例的ID、数据库账号、数据库密码。
目标实例信息
目标实例信息中需要配置阿里云Elasticsearch的实例ID,及访问阿里云ES实例账号密码
以上内容配置完成后,点击授权白名单并进入下一步进行RDS for MySQL及阿里云Elasticsearch的白名单添加。
说明 如果是RDS for MySQL,DTS会自动添加白名单或安全组。
如果源实例为RDS for MySQL,那么DTS将自身的IP段添加到RDS实例的白名单的安全组中,避免因为RDS实例设置了白名单,DTS服务器连接不上数据库导致同步作业创建失败。为了保证同步作业的稳定性,在同步过程中,请勿将这些服务器 IP 从 RDS实例的白名单的安全组中删除。
当白名单授权后,点击下一步,进入同步账号创建。
e.配置完同步对象后,进入高级配置步骤。
a. 同步初始化类型,建议选择 结构初始化+全量数据初始化,由DTS自动进行索引的创建及全量数据的初始化。如果不选择结构初始化,那么需要在同步创建之前,先手动在阿里云Elasticsearch中完成索引mapping的定义。如果不选择全量数据初始化,那么DTS同步增量数据的起始时间点为:启动同步的时间点。
b. 索引分片配置,默认为5个分片,1个副本。可以根据业务需要进行调整,一旦调整后,所有的索引按照这个配置定义分片。
c.字符串analyzer定义,可以选择字符串的analyzer,默认为Standard Analyzer。取值包括:Standard Analyzer、Simple Analyzer、Whitespace Analyzer、Stop Analyzer、Keyword Analyzer、English Analyzer、Fingerprint Analyzer,所有索引的字符串字段按照这个配置定义Analyzer。
d. 时区,可以配置同步到阿里云Elasticsearch中的时间字段存储的时区,默认为东八区。
2019年阿里云云栖大会上,Elasticsearch背后的商业公司Elastic与阿里云Elasticsearch确定战略合作升级,在100%兼容开源的基础上,完成了ELK的完整生态云上闭环,欢迎开通使用。
点击了解更多产品信息