Apache Kafka 3.0 的流处理功能通过 Kafka Streams API 实现,它允许开发者以轻量级方式构建实时数据流应用。以下是关键知识点:

核心概念 📌

  • Kafka Streams:嵌入式流处理库,支持分布式、容错的流处理任务
  • 拓扑定义:通过 Topology 接口构建数据处理流程(如过滤、聚合、连接)
  • 状态存储:使用状态存储(State Stores)实现窗口计算和持续查询
  • KSQL:集成式流处理查询语言,支持实时数据转换与分析

快速入门步骤 🚀

  1. 添加依赖
    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka-streams</artifactId>
        <version>3.0.0</version>
    </dependency>
    
  2. 定义流处理拓扑
    StreamsBuilder builder = new StreamsBuilder();
    KStream<String, String> stream = builder.stream("input-topic");
    stream.mapValues(value -> {
        // 业务逻辑处理
        return value.toUpperCase();
    }).to("output-topic");
    
  3. 启动应用
    KafkaStreams streams = new KafkaStreams(config, builder.build());
    streams.start();
    

扩展阅读 🔗

kafka_streams_api
stream_processing_pipeline