2016-11-15 113 views
1

本書中的紅色火花在行動如下:Spark用於異步更新。

「Spark不適合用於共享數據的異步更新(例如,在線事務處理),因爲它是用批量創建的(Spark流只是在一個時間窗口中將數據應用於批量分析),專門用於這些用例的工具仍然是必需的。「

有人可以解釋是它的意思嗎?

我有興趣使用火花來執行一些ETL過程。作爲一個便箋,我打算在中間使用卡夫卡。雖然我不明白這個問題。因爲從卡夫卡獲取數據並將其寫入數據庫會有些相同的問題。這將平行完成。

回答

2

Spark流以小批量工作 - 即每X次,Spark會讀取自上次從流式源讀取後可用的所有數據。它們一起處理所有這些數據。

這個批處理工作意味着更新下游系統具有固有的等待時間(X時間),而不像其他工具(例如Flink,Apex)通過記錄工作記錄。但是,請注意,在更新OLTP目標時,如果您可以忍受延遲,則實際上可能會獲得更好的吞吐量,因爲批量更新通常更高效