Apache kafka 当KSQL服务器以无头模式运行时,如何处理流数据?

Apache kafka 当KSQL服务器以无头模式运行时,如何处理流数据?,apache-kafka,streaming,confluent-platform,ksqldb,Apache Kafka,Streaming,Confluent Platform,Ksqldb,我必须在生产服务器上部署KSQL,所以我将交互模式更改为无头模式。创建SQL脚本以在容器启动时加载所有流。现在我想查看流数据。有多少种方式可以看到这些实时流,比如我们可以将KSQL服务器连接到控制中心并实现这一点。但我不想让依赖性变成我们需要购买Confluent的企业版。 请给出您的建议或意见。KSQL(或者从技术上讲是正确的)是一个构建在apachekafka之上的流分析层。虽然这很有意思,对不同的人来说可能意味着不同的事情——在您的特殊情况下,这意味着如果您需要查看数据流,您只需监视SQL

我必须在生产服务器上部署KSQL,所以我将交互模式更改为无头模式。创建SQL脚本以在容器启动时加载所有流。现在我想查看流数据。有多少种方式可以看到这些实时流,比如我们可以将KSQL服务器连接到控制中心并实现这一点。但我不想让依赖性变成我们需要购买Confluent的企业版。 请给出您的建议或意见。

KSQL(或者从技术上讲是正确的)是一个构建在apachekafka之上的流分析层。虽然这很有意思,对不同的人来说可能意味着不同的事情——在您的特殊情况下,这意味着如果您需要查看数据流,您只需监视SQL脚本的流/表创建的Kafka主题


在ksqlDB中,由连续查询支持的每个流和/或表将其结果刷新到生成的主题中,该主题包含前缀(由
ksql.output.topic.name.prefix
配置参数指定)和流/表的名称。只需使用任何CLI工具(如kafka console consumer、kafkacat等)连接到kafka群集并打印主题内容。

我无法查看流的主题。对于表格,我可以看到关于卡夫卡的主题。如果您愿意,我可以共享我的yaml文件。您应该能够看到通过连续查询创建的任何主题。在ksqlDB中,有两种类型的流:封装主题源的流和实际作用于现有流的流。那些简单地包装主题源的主题不会有任何生成的主题,因为它们只是包装,因此数据包含在被包装的主题中。但是,任何从另一个流读取数据的流都将为其生成一个主题。例如:[sourceTopic]-->[stream1]-->[stream2]在本例中,您应该有一个名为“stream2”而不是“stream1”的新主题。感谢@Ricardo的回复。在我的另一个问题中需要您的帮助我已经创建了JDBCSink连接器来将我的事件转储到DB,它工作正常。现在我的问题与时间窗有关。我已经做了一个流,它正在计算过去1小时的事件,并存储在DB中。如果我在第一个小时内有一些事件,那么这些事件将存储在DB中,并且在接下来的两个小时内没有事件。现在,如果我签入db,它仍然显示第一个小时的计数,但它必须显示计数为0,因为最后一个小时没有事件。我们如何才能做到这一点?