1. 程式人生 > >4.mapreduce與spark的優虐

4.mapreduce與spark的優虐

MapReduce存在的問題

1. MapReduce框架侷限性

  1)僅支援Map和Reduce兩種操作

  2)處理效率低效。

    a)Map中間結果寫磁碟,Reduce寫HDFS,多個MR之間通過HDFS交換資料; 任務排程和啟動開銷大;

    b)無法充分利用記憶體

    c)Map端和Reduce端均需要排序

  3)不適合迭代計算(如機器學習、圖計算等),互動式處理(資料探勘) 和流式處理(點選日誌分析)

2. MapReduce程式設計不夠靈活

  1)嘗試scala函數語言程式設計語言

3. 主要用於hue或者支援hive sql 的表/檢視建立、清空、刪除,資料的查詢,表結構的設定與檢視。

Spark

1. 高效(比MapReduce快10~100倍)

  1)記憶體計算引擎,提供Cache機制來支援需要反覆迭代計算或者多次資料共享,減少資料讀取的IO開銷

  2)DAG引擎,減少多次計算之間中間結果寫到HDFS的開銷

  3)使用多執行緒池模型來減少task啟動開稍,shuffle過程中避免 不必要的sort操作以及減少磁碟IO操作

2. 易用

  1)提供了豐富的API,支援Java,Scala,Python和R四種語言

  2)程式碼量比MapReduce少2~5倍

3. 與Hadoop整合 讀寫HDFS/Hbase 與YARN整合 

相關推薦

4.mapreducespark

MapReduce存在的問題1. MapReduce框架侷限性  1)僅支援Map和Reduce兩種操作  2)處理效率低效。    a)Map中間結果寫磁碟,Reduce寫HDFS,多個MR之間通過HDFS交換資料; 任務排程和啟動開銷大;    b)無法充分利用記憶體    c)Map端和Reduce端均

mapreducespark的區別--內容詳細

Hadoop MapReduce採用了多程序模型,而Spark採用了多執行緒模型: Apache Spark的高效能一定程度上取決於它採用的非同步併發模型(這裡指server/driver 端採用的模型),這與Hadoop 2.0(包括YARN和MapReduce)是一致的

MapReduce---之spark的區別

Mapreduce和spark是資料處理層兩大核心,瞭解和學習大資料必須要重點掌握的環節,根據自己的經驗和大家做一下知識的分享。   首先了解一下Mapreduce,它最本質的兩個過程就是Map和Reduce,Map的應用在於我們需要資料一對一的元素的對映轉換,比如說進行擷取,進行

Python資料探勘機器學習_通訊信用風險評估實戰(4)——模型訓練調

系列目錄: 訓練資料拆分 把訓練資料拆分為訓練集和交叉驗證集,比例為7:3。x_train和y_train用來訓練模型,x_test和y_test用來交叉驗證。 data_train = data_train.set_index('Us

[深入理解Java虛擬機器] 第4、5章 效能監控調

文章目錄 JDK的命令列工具 jps:虛擬機器程序狀況工具 jstat:虛擬機器統計資訊監視工具 jinfo:Java配置資訊工具 jmap:Java記憶體映像工具 jhat:虛擬機器堆轉儲快照分

linux 性能測試調

inux 2.3 color 0.10 ilo x86 average 0.00 定位 CPU  性能評估 通過下面命令能了解到cpu是否出現性能瓶頸,再結合top、ps等命令進一步檢查,就可以定位到哪些進程導致cpu負載過大。 vmstat查看cpu負載 [[email

Oracle spark-local 模式的性能對比

spark 大數據 hadoop spark-sqlOracle中的查詢如果放到spark-local 模式中計算會有怎樣的結果?下面我們看一個案例 這裏需要說明的是,我這裏並沒有用spark集群,以免大家認為這裏性能的提示只是集群計算能力的功勞,具體原因和優化方式我會在後續的博客中說明。本文出自 “去

MySQL性能診斷調

檢查 ner 內多 空間 evel 順序 str 書籍 -o [MySQL性能診斷與調優] LAMP 系統性能調優,第 3 部分: MySQL 服務器調優 http://www.ibm.com/developerworks/cn/linux/l-tune-lamp-3.

MySQL寫壓力性能監控調

host 數據 update 海量 ice mage 調用 有意義 一個 寫壓力調優:數據庫的寫、寫壓力性能監控、寫壓力調優參數 一、關於DB的寫 1、數據庫是一個寫頻繁的系統 2、後臺寫、寫緩存 3、commit需要寫入 4、寫緩存失效或者

Pandas基礎學習Spark Python初探

入學 init sparkconf sch 時間 com inux mas 取數 摘要:pandas是一個強大的Python數據分析工具包,pandas的兩個主要數據結構Series(一維)和DataFrame(二維)處理了金融,統計,社會中的絕大多數典型用例科學,以及許多

談談HINT /*+parallel(t,4)*/在SQL調中的重要作用

gate expand cut plan 簡單 bsp pla 數據庫 4.0 /*+parallel(t,4)*/在大表查詢等操作中能夠起到良好的效果,基於並行查詢要啟動並行進程、分配任務與系統資源、合並結果集,這些都是比較消耗資源,但我們為能夠減少執行事務的時間使用pa

Scala2.12.4 安裝配置

mage markdown blog 文件 home pro scala cal 移動 下載 解壓並移動到/software目錄: tar -zxvf scala-2.12.4.tgz mv scala-2.12.4 /software/scala 在/etc/profil

Nginx-4apache性能對比

http.conf start nds .html 並發 sed sse request currently 壓力測試修改httpd壓力測試的配置文件添加到http.conf<Location /server-status>SetHandler server-s

MapReduce批處理------《Designing Data-Intensive Applications》讀書筆記14

利用 目的 專業 構建 創建 實現邏輯 內容 sign 傳統 之前的文章大量的內容在和大家探討分布式存儲,接下來的章節進入了分布式計算領域。坦白說,個人之前專業的重心側重於存儲,對許多計算的內容理解可能不是和確切,如果文章中的理解有所不妥,願虛心賜教。本篇將和大家聊一聊分

FineBI學習系列之FineBISpark數據連接(圖文詳解)

gpo 編碼轉換 nload -s div 語言 分享圖片 bre con 不多說,直接上幹貨!   這是來自FineBI官網提供的幫助文檔 http://help.finebi.com/http://help.finebi.com/doc-vie

精讀《構建之法》第4第17章

道德 block 學習能力 話題 適應 名詞 交流 習慣 其他人 一、前言   精讀書可以讓人有不一樣的收獲,通過本次閱讀我認識了不少之前從未註意過的問題。第4章中提出了許多編程方面的規範和兩人合作結對編程的階段和技巧,第17章有許多生動的故事來形容“人”“效績”“職業道

實驗4對象2

圖形 lse OS info size AC 函數 div com 1.實驗內容2 graph.h #ifndef GRAPH_H #define GRAPH_H // 類Graph的聲明 class Graph { public: Graph

ArcGIS API for JavaScript 4.x npm

resolved 進行 ali IE fun IT rop async creat 在4.7版本中,不僅增加了WebGL的渲染支持(渲染前端速度加快,渲染量也加大)、增強了ES6中的Promises語法支持,還支持了npm管理及webpack打包,實屬喜訊。 “意味著可以

Spark筆記整理(二):RDDspark核心概念名詞

大數據 Spark [TOC] Spark RDD 非常基本的說明,下面一張圖就能夠有基本的理解: Spark RDD基本說明 1、Spark的核心概念是RDD (resilient distributed dataset,彈性分布式數據集),指的是一個只讀的,可分區的分布式數據集,這個數據集的全

MongoDB3.6.4安裝配置

ora title 一個 08 r2 使用 描述 ssa 9.png cti 參考文檔:MongoDB官方文檔 版本:3.6.4 從版本3.6開始,MongoDB需要Windows Server 2008 R2,Windows 7或更高版本。 第一步,在下載中心下載最新版本