1. 程式人生 > >大資料處理系統都有哪些?(批處理系統與迭代計算系統)

大資料處理系統都有哪些?(批處理系統與迭代計算系統)

我們在前面的文章中給大家介紹了資料查詢分析計算系統,資料查詢分析計算系統是一個比較常見的系統,其實除了這一個資料查詢分析計算系統還有很多系。我們在這篇文章中給大家介紹一下批處理系統和迭代計算系統,希望這篇文章能夠給大家帶來幫助。

我們首先說說批處理系統。批處理系統中的MapReduce是被廣泛使用的批處理計算模式。MapReduce對具有簡單資料關係、易於劃分的大資料採用“分而治之”的並行處理思想,將資料記錄的處理分為Map和Reduce兩個簡單的抽象操作,提供了一個統一的平行計算框架。批處理系統將複雜的平行計算的實現進行封裝,大大降低開發人員的並行程式設計難度。而Hadoop和Spark是典型的批處理系統。MapReduce的批處理模式不支援迭代計算。

說到這裡我們給大家介紹一下Hadoop和spark吧,Hadoop是目前大資料處理最主流的平臺,是Apache基金會的開源軟體專案,使用Java語言開發實現。同時Hadoop平臺使開發人員無需瞭解底層的分散式細節,即可開發出分散式程式,在叢集中對大資料進行儲存、分析。而Spark是由加州伯克利大學AMP實驗室開發,適合用於機器學習、資料探勘等迭代運算較多的計算任務。Spark引入了記憶體計算的概念,執行Spark時伺服器可以將中間資料儲存在RAM記憶體中,大大加速資料分析結果的返回速度,可用於需要互動分析的場景。Hadoop和spark給別人帶來不錯的內容。

然後給大家說一說迭代計算系統。這是由於針對MapReduce不支援迭代計算的缺陷,人們對Hadoop的MapReduce進行了大量改進,Haloop、iMapReduce、Twister、Spark是典型的迭代計算系統。而Haloop是Hadoop MapReduce框架的修改版本,用於支援迭代、遞迴型別的資料分析任務,如PageRank、K-means等。iMapReduce是一種基於MapReduce 的迭代模型,實現了MapReduce 的非同步迭代。Twister是基於Java的迭代MapReduce模型,上一輪Reduce的結果會直接傳送到下一輪的Map。Spark是基於記憶體計算的開源叢集計算框架。這些都是需要大家掌握的。

以上的內容就是小編為大家介紹的批處理系統以及迭代計算系統的相關內容了,想必大家看了這篇文章以後可能有一點幫助,大家在進行大資料工作的時候還是需要深入瞭解這些方法的,這樣會令我們的工作事半功倍。