首页 > 解决方案 > 生成的 KSQL 连接流显示没有数据

问题描述

我正在加入一个 KSQL 流和一个 KSQL 表。两者都映射到同一个键。

但是没有数据进入结果流。

create stream kz_yp_loan_join_by_bandid WITH (KAFKA_TOPIC='kz_yp_loan_join_by_bandid',VALUE_FORMAT='AVRO') AS 
select ypl.loan_id, ypl.userid ,ypk.name as user_band_id_name 
FROM kz_yp_loan_stream_partition_by_bandid ypl 
     INNER JOIN kz_yp_key_table ypk 
     ON ypl.user_band_id = ypk.id;

流 kz_yp_loan_join_by_bandid 中没有数据

但是,如果我只是这样做:

select ypl.loan_id, ypl.userid ,ypk.name as user_band_id_name 
FROM kz_yp_loan_stream_partition_by_bandid ypl 
     INNER JOIN kz_yp_key_table ypk 
     ON ypl.user_band_id = ypk.id;

有数据存在。

它表明未写入流,但为什么会这样?

我已尝试再次进行整个设置。

标签: ksqldbconfluent-platform

解决方案


需要检查的几件事:

  1. 如果您想处理所有现有数据以及新数据,请确保在运行CREATE STREAM … AS SELECT(“CSAS”)之前您已经运行SET 'auto.offset.reset' = 'earliest';
  2. 如果连接在 CSAS 之外运行时返回数据,那么这可能不相关,但检查您的连接是否符合所有要求总是好的
  3. 检查 KSQL 服务器日志,以防写入目标主题、在模式注册表上创建模式等出现问题。

这些参考资料将很有用:


推荐阅读