Spark Streaming和Flink的區別

Better~Me發表於2020-09-30

Spark Streaming vs Flink

兩者最重要的區別(流和微批)

(1). Micro Batching 模式(spark)

Micro-Batching計算模式認為"流是批的特例",流計算就是將連續不斷的微批進行持續計算,如果批足夠小那麼就有足夠小的延時,在一定程度上滿足了99%的實時計算場景。那麼那1%為啥做不到呢? 這就是架構的魅力,在Micro-Batching模式的架構實現上就有一個自然流資料流入系統進行攢批的過程,這在一定程度上就增加了延時。具體如下示意圖:
在這裡插入圖片描述
從上面可以看到是把輸入的資料, 分成微小的批次, 然後一個批次一個批次的處理, 然後也是一片批次的輸出. 很顯然Micro-Batching模式有其天生的低延時瓶頸,但任何事物的存在都有兩面性,在大資料計算的發展歷史上,最初Hadoop上的MapReduce就是優秀的批模式計算框架,Micro-Batching在設計和實現上可以借鑑很多成熟實踐。

(2). Native Streaming 模式(flink)

Native Streaming計算模式認為“

相關文章