2017-08-02 32 views
0

假設由spark和其中一個流式傳輸給出的流式傳輸不是100%同步。獲取流媒體可能有所不同。我們需要通過密鑰加入流媒體。有什麼辦法可以做到這一點,沒有任何持續性?基於密鑰加入流式傳輸 - Spark/Kafka

+0

你的意思是不是100%同步,你的意思是它們之間有延遲嗎? – marvel308

+0

由持久性你是指存儲在國有商店? – marvel308

+0

@ marvel308是的。它可能會延遲幾秒鐘,持續的意思是存儲在某些外部存儲器中,或者沒有緩存 –

回答

0

我不認爲這是可能的,Kafka Streams提供內置支持來解釋Kafka主題中的數據,並將其作爲一個不斷更新的表格。在Kafka Streams DSL中,這是通過所謂的Ktable

實現的這些KTable在卡夫卡流中由state stores支持。這些狀態存儲對於您的應用程序來說是本地的(更準確地說,它們對於您的應用程序的實例是本地的,其中可以有一個或多個),這意味着與這些狀態存儲的交互不需要通過網絡進行交談,所以閱讀寫操作速度非常快。 Incase你決定不堅持數據,你可能會開始丟失你可能不想要的信息