Flink CDC支持数据的实时同步和表结构变更的自动同步。您可以使用数据同步模版帮您快速生成数据同步的Flink SQL作业代码。本文为您介绍如何使用多库多表同步或者分库分表合并模板实现数据同步。
背景信息
Flink全托管支持多库多表同步和分库分表合并两种数据同步方式,二者的区别请参见下表。
同步方式 | 详情 |
---|---|
多库多表同步 | 如果您需要将一个或多个数据库中的一张或多张业务数据表实时复制到另一个数据库时,则可以使用多库多表同步模板。Flink CDC可以自动同步整库的全量和增量数据,同时还能实时将每张源表的表结构变更(加列等)实时同步到对应的目标表中。多库多表同步模板会将用户参数翻译成CDAS语句,有关CDAS语句的更多能力,详情请参见CREATE DATABASE AS(CDAS)语句。 |
分库分表合并 | 当同一份业务数据分散在不同的数据库或者业务表时,我们往往需要用到分库分表合并的能力,将表结构相似的分库分表的数据同步到一张目标表中。Flink CDC可以自动同步源中所有分库分表的全量和增量数据(包括新增的符合正则表达式的新表),同时还能实时将每张源表的表结构变更(加列等)实时同步到对应的目标表中。分库分表合并同步模板会将用户参数翻译成CTAS语句,有关CTAS语句的更多能力,详情请参见CREATE TABLE AS(CTAS)语句。 |
使用限制
目前仅支持从MySQL到Hologres的数据同步。
注意事项
在同步MySQL到Hologres的数据时,会同步表结构变更,详情请参见CREATE TABLE AS(CTAS)语句。同步时需要注意以下几点:
- 无需您手动在Hologres上创建表。
Flink会自动在Hologres上创建表,但如果Hologres已经存在对应的表,Flink会根据您创建计划中选择的目标库和表信息来映射。
- Hologres不支持更改列的类型。
如果当前字段的类型和Hologres下游表中对应的字段类型不同,则会写入失败,您需重修改列类型并重新同步。
关于Hologres结果表详情请参见Hologres结果表。