天天看點

颠覆大資料分析之第二章結束語

颠覆大資料分析之第二章結束語

諸如mpi這些傳統的并行程式設計工具或者spark這類的新範式則非常适用于這類優化的問題,它們能夠高效地進行擴充。另有數位研究人員也同時指出,hadoop并不擅長疊代式機器學習算法,包括發明了spark的伯克利的研究人員,以及graphlab的研究人員,還有加州大學聖巴巴拉分校的mapscale團隊。satish narayana srirama教授在他的論文中就這個問題進行了深入的讨論(srirama等2012)。最主要的原因就是它缺少長期存活的mr以及記憶體程式設計的支援。每一次mr疊代都要啟動新的mr作業,并将資料從hdfs中拷貝到記憶體裡,然後進行疊代,再将資料寫回到hdfs,檢查疊代是否終止…每次疊代都重複這些會帶來顯著的開銷。

mpi提供了一個叫做all-reduce的結構,它使得值可以在叢集節點間累加和廣播。hadoop上唯一的一個解決了一類優化問題的高效實作來自于vowpal wabbit的團隊,他們提供了基于hadoop的all-reduce結構的一個實作(agarwal等2013)。

對于另一類稍微不同的場景shark則非常有用:它可以不用進行預計算就能執行大規模的低延遲即席查詢。ooyala在視訊資料上進行的這類查詢就非常明顯,比如某個國家的移動使用者的熱門内容或者其它的動态趨勢的查詢。

mesos是一個可以管理叢集資源的資料總管,這個叢集可能會運作着多種架構,包括hadoop, spark, 或者storm。在資料倉庫環境中這個非常有用,比如說,hadoop可以用于etl而spark可以用來運作機器學習算法。

繼續閱讀