簡體   English   中英

Kafka Streams 中流流連接的默認 WindowBytesStoreSupplier 是什么?

[英]What is the default WindowBytesStoreSupplier for stream-stream join in Kafka Streams?

新的 API 具有以下特征:

join(KStream<K,VO> otherStream, ValueJoiner<? super V,? super VO,? extends VR> joiner, JoinWindows windows, StreamJoined<K,V,VO> streamJoined)

如果我只使用StreamJoined<K,V,VO> streamJoined參數設置商店名稱,那么WindowBytesStoreSupplierretentionPeriodwindowSizeretainDuplicates方面的默認配置是什么? 從文檔中不清楚。 這是在 memory state 商店嗎? 還是 Kafka Streams 配置的默認配置?

如果您僅使用StreamJoined設置商店名稱,則:

  1. windowSize來自您提供的JoinWindows配置 object。 即使您使用自定義WindowBytesStoreSupplier ,Kafka Streams 也會驗證供應商 window 設置是否與提供的JoinWindows object 的設置相匹配。 所以JoinWindows.of(Duration.ofSeconds(30))windowSize等於30000毫秒。
  2. retentionPeriod期是 window 大小 + 寬限期。 默認寬限期為 24 小時。
  3. retainDuplicates配置為true 但即使在提供自定義StoreSupplier時, retainDuplicates字段也必須設置為true
  4. 存儲類型是持久化(RocksDB)存儲,由 Kafka Streams 配置,如上所述。

另外,請注意,使用StreamJoined ,您現在可以為連接的雙方提供自己的StoreSupplier ,因此可以擁有內存存儲。

高溫下,

賬單

暫無
暫無

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

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