簡體   English   中英

KSQL 將 Kafka stream 加入到 KTable

[英]KSQL joining Kafka stream to KTable

我正在嘗試在表和 stream 之間執行連接,但由於某種原因,它不起作用。

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 而不是 null 值。 GROUP_TABLE 是從通過 Postgres JDBC 連接器同步到 Kafka 的主題創建的。

上述行為適用於現有數據。 如果我碰巧在 Postgres 中輸入了新數據,join 語句會返回正確的值

它很可能是數據上的時間戳。 流表連接更像是傳統 SQL 連接的查找/擴充。 ksqlDB 盡量按時間順序處理數據。 如果DEVICE_STREAM上的時間戳在GROUP_TABLE之前,則 ksqlDB 不會加入數據,因為表中尚不存在該行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM