scan.startup.mode 是 Flink 中用于设置消费 Kafka topic 数据的起始 offset 的配置参数之一。scan.startup.mode 可以设置为以下几种模式:

  • earliest-offset:从最早的 offset 开始消费数据。
  • latest-offset:从最新的 offset 开始消费数据。
  • group-offsets:从消费者组的 offset 开始消费数据。
  • timestamp:根据指定的时间戳开始消费数据。
  • specific-offsets:根据指定的 offset 开始消费数据。

        在 Flink 的配置文件(如 flink-conf.yaml)中,,可以通过设置以下参数来配置 scan.startup.mode

# 设置启动模式为 earliest-offset
flink.connector.kafka.scan.startup.mode: earliest-offset

        或者在程序中使用 FlinkKafkaConsumersetStartupMode() 方法来设置启动模式:

Properties props = new Properties();
props.setProperty("bootstrap.servers", "localhost:9092");
props.setProperty("group.id", "consumer-group");

FlinkKafkaConsumer<String> kafkaConsumer = new FlinkKafkaConsumer<>("topic-name", new SimpleStringSchema(), props);
kafkaConsumer.setStartupMode(StartupMode.EARLIEST);

// 使用 kafkaConsumer 进行后续操作

        需要注意的是,scan.startup.mode 参数是用于 Flink 1.14 版本及以上。在更早的版本中,可以使用 flink.consumer.startup-mode 参数来设置消费 Kafka 数据的起始 offset 模式。

更多消息资讯,请访问昂焱数据

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐