ksql将kafka流连接到ktable

axzmvihb  于 2021-06-04  发布在  Kafka
关注(0)|答案(1)|浏览(354)

我试图在表和流之间执行连接,但由于某些原因,它不起作用。

ksql> SELECT GROUP_TABLE.SOCIETY_ID, GROUP_TABLE.ID FROM GROUP_TABLE;
1 | 2
^CQuery terminated
ksql> SELECT DEVICE_STREAM.GROUP_ID FROM DEVICE_STREAM
2
^CQuery terminated
ksql> SELECT GROUP_TABLE.SOCIETY_ID  FROM DEVICE_STREAM LEFT JOIN GROUP_TABLE ON DEVICE_STREAM.GROUP_ID = GROUP_TABLE.ID;
null

我期望的是1而不是空值。groupu表是通过postgresjdbc连接器从同步到kafka的主题创建的。
以上行为适用于现有数据。如果我碰巧在postgres中输入了新数据,join语句将返回正确的值

djmepvbi

djmepvbi1#

很可能是数据上的时间戳。流表联接比传统的sql联接更像是一种查找/扩充。ksqldb尽力按时间顺序处理数据。如果 DEVICE_STREAM 是在 GROUP_TABLE 行,则ksqldb不会加入数据,因为该行在表中还不存在。

相关问题