是否可以通过 HTTP 查询 KSQL Table/Materialized 视图?

Is it possible to query a KSQL Table/Materialized view via HTTP?

我有一个使用

创建的物化视图
CREATE TABLE average_latency AS SELECT DEVICENAME, AVG(LATENCY) AS AVG_LATENCY FROM metrics WINDOW TUMBLING (SIZE 1 MINUTE) GROUP BY DEVICENAME EMIT CHANGES;

我想通过 REST API 调用查询 table average_latency 以获取响应中的 AVG_LATENCYDEVICENAME 列。

HTTP 客户端 -> KSQL Table/Materialized 查看

这个用例是否可行?如果是,怎么做?

可以通过在流应用程序上公开 RPC 端点来查询 Kafka 流使用的内部状态存储。 查看 Confluent 提供的以下文档和示例。

https://docs.confluent.io/platform/current/streams/developer-guide/interactive-queries.html#streams-developer-guide-interactive-queries-rpc-layer

https://github.com/confluentinc/kafka-streams-examples/blob/7.1.1-post/src/main/java/io/confluent/examples/streams/interactivequeries/kafkamusic/KafkaMusicExample.java

https://github.com/confluentinc/kafka-streams-examples/blob/4.0.x/src/main/java/io/confluent/examples/streams/interactivequeries/kafkamusic/MusicPlaysRestService.java