首页  /  百科知识 / 【Kafka系列教程】088:Kafka Streams之概念——状态

【Kafka系列教程】088:Kafka Streams之概念——状态

分类:百科知识

某些流处理应用程序不需要状态,这意味着消息的处理独立于所有其他消息的处理。然而,能够维护状态为复杂的流处理应用程序打开了许多可能性:您可以加入输入流,或分组和聚合数据记录。许多这样的有状态运算符是由Kafka Streams DSL.

Kafka Streams提供了所谓的状态存储,流处理应用程序可以使用这些存储和查询数据。这是实现有状态操作时的重要能力。Kafka Streams中的每个任务都嵌入了一个或多个状态存储,这些状态存储可以通过API访问,以存储和查询处理所需的数据。这些状态存储可以是持久的键值存储、内存中的哈希映射或其他方便的数据结构。Kafka Streams为本地状态存储提供容错和自动恢复。

Kafka Streams允许通过创建状态存储的流处理应用程序外部的方法、线程、进程或应用程序直接只读查询状态存储。这是通过称为交互式查询的功能提供的。所有存储都是命名的,交互式查询仅公开基础实现的读取操作。

参考引用

本系列归档至《跟老卫学Apache Kafka开发》 https://github.com/waylau/apache-kafka-tutorial

猜你喜欢