汪文君Kafka Streams由淺入深 36講-Kafka Stateful
2023-07-30 21:11 作者:XiaKaLa_BOOM | 我要投稿

- Inner-Join
- 必須雙方都有數(shù)據(jù)才會輸出.
- 任意一方在時間窗口內(nèi)變更都會輸出新的數(shù)據(jù)
- 如果只有一側(cè)有數(shù)據(jù), 那數(shù)據(jù)會暫存在狀態(tài)存儲中等待另一側(cè)數(shù)據(jù)到達然后數(shù)據(jù). 狀態(tài)存儲可能會在窗口過期后重置.
- Left-JOIN
- 必須左側(cè)有數(shù)據(jù)才會輸出, 如果右側(cè)無數(shù)據(jù)則會直接輸出 Entity (不包含右側(cè)數(shù)據(jù)).
- 單一右側(cè)數(shù)據(jù)到達只會存放在狀態(tài)存儲中, 等待左側(cè)數(shù)據(jù)到達然后輸出數(shù)據(jù). (窗口過期會清空狀態(tài)存儲)
- 任意相同 key 變更都會輸出新的結(jié)果 (在相同時間窗口時, 新的時間窗口則會丟失一側(cè)數(shù)據(jù)).
- Outer-JOIN (FULL_JOIN)
- 任意一方數(shù)據(jù)到達就會輸出, 并存放在狀態(tài)存儲中.
- 當另一方相同key 在相同時間窗口到達時會輸整合數(shù)據(jù).
- 在相同時間窗口更改任意一側(cè)數(shù)據(jù)都會輸出. (如果另一側(cè)有值就是整合數(shù)據(jù)).
標簽: