当然支持,而且支持的很好,可以多多练习哦
Flink CDC支持计算列,MySQL CDC 是 Flink CDC 中使用最多也是最重要的 Connector
肯定是可以的,首先,Flink CDC支持全量同步以及增量的同步功能,Flink是支持全自动的数据集成。Flink CDC已经具备了全增量自动切换的能力,这个是Flink CDC的两点之一。自动的发现是否已经增加新列以及删除列的数据等等。 整个的流:全增量自动切换(Flink CDC)、元信息自动发现(Flink Catalog)、表结构自动同步(Schema Evolution)、整库同步(CDAS语法、Source合并)
Flink CDC 是由 Flink 社区开发的集数据采集、数据转换、数据装载一体的组件,可以直接从 MySQL、PostgreSQL、Oracle 等数据源直接读取全量或增量数据并写入下游的 OLAP 数据存储系统。使用 Flink CDC 后,可以简单高效的抓取上游的数据变更,同步到下游的 OLAP 数据仓库中。
由于上游的数据源不一致,可能会在数据采集层接入不同的同步与采集工具,比如采集 Oracle 中的数据时,通常选择 GoldenGate,而对于 MySQL,我们可能会选择 Canal 或 Debezium。
数据经过采集层后,会传输到消息队列中如 Kafka,然后通过 Flink 消费 Kafka 中的增量数据再写入下游的 OLAP 数据仓库或者数据湖中。
使用 Flink CDC 拉取 MySQL 中的增量数据,通过 Flink SQL 创建事实与维度的 MySQL CDC 表,并在 Flink 中进行打宽操作,将结果写入到下游的 StarRocks 中。
在模式中声明proctime属性,可以使用Computed Column语法来声明从proctime()内置函数生成的计算列。计算列是不存储在物理数据中的虚拟列。
CREATE TABLE MyTable (
MyField1 INT,
MyField2 STRING,
MyField3 BOOLEAN
MyField4 AS PROCTIME() -- declares a proctime attribute
) WITH (
...
)
不支持水平扩展,因为 Flink CDC 底层是基于 Debezium,起架构是单节点,所以Flink CDC 只支持单并发。在全量阶段读取阶段,如果表非常大 (亿级别),读取时间在小时甚至天级别,用户不能通过增加资源去提升作业速度。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。