hadoop多個job 淺談Spark和Hadoop作業(yè)之間的區(qū)別?
淺談Spark和Hadoop作業(yè)之間的區(qū)別?我認(rèn)為你所說的Hadoop是map/reduce。主要區(qū)別如下:1。Mr-Jobs的資源控制是通過yarn實現(xiàn)的。Spark是否可以通過紗線控制資源。但是,
淺談Spark和Hadoop作業(yè)之間的區(qū)別?
我認(rèn)為你所說的Hadoop是map/reduce。主要區(qū)別如下:
1。Mr-Jobs的資源控制是通過yarn實現(xiàn)的。Spark是否可以通過紗線控制資源。但是,如果將多個組件設(shè)置在一起(例如,群集中同時存在spark計劃和HBase查詢),建議使用yarn;
2。Spark基于內(nèi)存計算。計算的中間結(jié)果存儲在內(nèi)存中,可以訪問行迭代計算;而Mr計算的中間結(jié)果是放到磁盤上,所以一個作業(yè)會涉及到對磁盤的重復(fù)讀寫,這也是性能不如spark的主要原因;
3。Mr的任務(wù)對應(yīng)于一個容器,每次都需要花費大量的時間來啟動。一些Hadoop版本(如華為oceaninsight)性能不同,Hadoop實現(xiàn)了容器預(yù)熱(重用)功能,可能消耗較少,而spark是基于線程池的,因此資源分配會更快。