通过 Kafka Consumer 原生参数控制 单次拉取数据量,限制消费速率。
CREATE TABLE kafka_source (
...
) WITH (
'connector' = 'kafka',
'topic' = 'your_topic',
'properties.bootstrap.servers' = 'localhost:9092',
'properties.group.id' = 'flink-consumer-group',
'scan.startup.mode' = 'latest-offset',
'format' = 'json',
-- 关键限流参数
'properties.max.poll.records' = '100', -- 单次 poll 最多拉取 100 条
'properties.fetch.max.bytes' = '1048576', -- 单次拉取最大字节数 (1MB)
'properties.fetch.max.wait.ms' = '500', -- 单次拉取最长等待时间(默认500ms)
'properties.fetch.min.bytes' = '1048576', -- 单次拉取最小数据量(1MB)
'properties.max.partition.fetch.bytes' = '524288' -- 每个分区单次拉取上限 (512KB)
);