我正在为自己的需要构建一个apache集群,其中大部分是无状态的。但有一种情况我真的需要一个状态。
为了解释,让我们假设我存储了每一个药店,打开和交易发生在这和每一个商店。因此,商店以药品数量的初始状态打开。随着药品的销售和库存的增加,国家也在不断变化。
当Kafka满足我实时跟踪实时交易的需要时,我需要能够建立药店状态,并在任何给定点查询和找出药店中给定药品的数量。有可能吗?这就是Kafka流的用途吗?
我正在为自己的需要构建一个apache集群,其中大部分是无状态的。但有一种情况我真的需要一个状态。
为了解释,让我们假设我存储了每一个药店,打开和交易发生在这和每一个商店。因此,商店以药品数量的初始状态打开。随着药品的销售和库存的增加,国家也在不断变化。
当Kafka满足我实时跟踪实时交易的需要时,我需要能够建立药店状态,并在任何给定点查询和找出药店中给定药品的数量。有可能吗?这就是Kafka流的用途吗?
1条答案
按热度按时间ymzxtsji1#
是的,您可以使用kafka streams构建一个应用程序,该应用程序使用kafka主题并维护一个可查询的存储区,该存储区会不断更新以维护(如您的示例中所示)当前药物库存。
查看文档以开始:http://docs.confluent.io/current/streams/index.html
还可以使用kafka streams的“交互式查询”功能查看以下示例:
https://github.com/confluentinc/examples/blob/3.1.x/kafka-streams/src/main/java/io/confluent/examples/streams/interactivequeries/wordcountinteractivequeriesexample.java
https://github.com/confluentinc/examples/blob/3.1.x/kafka-streams/src/main/java/io/confluent/examples/streams/interactivequeries/kafkamusic/kafkamusicexample.java