本包目录(311 条)
管道基础52 条
Kafka64 条调度与编排40 条数仓建模52 条数据质量50 条CDC 与同步53 条

Flink SQL 接入 Kafka

用 Flink SQL 声明 Kafka 源表/结果表即可完成流式加工:指定 connector、topic、bootstrap servers、启动位点与数据格式,再写查询语句。

连接器'connector' = 'kafka'(需对应版本 connector jar 放 lib)
启动位点earliest-offset / latest-offset / group-offsets / timestamp
格式'format' = 'json' 等,需要 flink-json 支持

Kafka 源表定义

Kafka 源表定义
CREATE TABLE orders_src (
  order_id STRING,
  amount DECIMAL(10,2),
  ts TIMESTAMP(3),
  WATERMARK FOR ts AS ts - INTERVAL '5' SECOND
) WITH (
  'connector' = 'kafka',
  'topic' = 'orders',
  'properties.bootstrap.servers' = 'kafka1:9092,kafka2:9092',
  'properties.group.id' = 'orders_sql',
  'scan.startup.mode' = 'group-offsets',
  'format' = 'json'
);
connector jar 与 Flink 大版本绑定:升级 Flink 时连接器要同步替换,否则提交时报找不到 connector。

易错点

  • group-offsets 模式依赖 group.id 已提交位点,首次启动前先确认没有历史位点
  • JSON 时间字段格式与 SQL 类型不匹配会整行解析失败,先统一格式

数据来源与参考

  • Apache Flink 官方文档:Kafka SQL Connector
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌