本文介绍: 需要提醒的是:Kafka Connect上必须安装Debezium MySQL Connector和Confluent Avro Converter两个插件,因此需要在官方镜像的基础上手动添加这两个插件;在上面的 SQL 中,开头部分的几个 SET 语句非常重要,它们用于设置 Checkpoint,如果没有这些设置,写入操作都不会提交,看到的状况就是:作业流一直运行,没有报错,但是 Hudi 表不会有任何数据,关于这一问题以及这些 SET 语句的解释,已在。
本文介绍的整体方案选型是:使用 Kafka Connect 的 Debezium MySQL Source Connector 将 MySQL 的 CDC 数据 (Avro 格式)接入到 Kafka 之后,通过 Flink 读取并解析这些 CDC 数据,其中,数据是以 Confluent 的 Avro 格式存储的,也就是说,Avro 格式的数据在写入到 Kafka 以及从 Kafka 读取时,都需要和 Confluent Schema Registry 进行交互,从而获取 Schema 信息,消息经 Flink 读取后会写入到 Hudi 表,从而完成全部的数据接入工作。
1. 前置依赖
本文不会展开介绍 CDC 数据进入 Kafka 之前的操作,此部分可以参考: 《CDC一键入湖: 当 Apache Hudi DeltaStreamer 遇见 Serverless Spark》一文的前半部分架构以及第 2 节环境准备部分的介绍,以下是前半部分数据管道使用到的相关组件的构建方法和文档:
①MySQL:如果仅以测试为目的,建议使用Debezium提供的 官方Docker镜像,构建操作可参考其 官方文档(下文将给出的操作示例所处理的CDC数据就是自于该MyS
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。