91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hadoop相關概念

發布時間:2020-07-22 06:54:33 來源:網絡 閱讀:279 作者:么啥好說的 欄目:大數據
Hadoop是什么
  • Hadoop是一個開源的大數據框架
  • Hadoop是一個分布式計算的解決方案
  • Hadoop = HDFS(分布式文件系統)+ MapReduce(分布式計算)
Hadoop核心
  • HDFS分布式文件系統:存儲是大數據技術的基礎
  • MapReduce編程模型:分布式計算是大數據應用的解決方案
Hadoop基礎架構

 HDFS概念
  數據塊
  NameNode
  DataNode

數據塊:抽象塊而非整個文件作為存儲單;默認大小64MB一般設置為128M,備份X3。
NameNode:管理文件系統的命名空間,存放文件元數據;維護著文件系統的所有文件和目錄,文件與數據塊的映射;記錄每個文件中各個塊所在數據節點的信息。
DataNode:存儲并檢索數據塊;向NameNode更新所存儲塊的列表。

HDFS優點
  • 適合大文件存儲,支持TB、PB級的數據存儲,并有副本策略。
  • 可以構建在廉價的機器上,并有一定的容錯和恢復機制。
  • 支持流式數據訪問,一次寫入多次讀取最高效。
HDFS缺點
  • 不適合大量小文件存儲
  • 不適合并發寫入,不支持文件隨機修改。
  • 不支持隨機讀取等低延時的訪問方式。
Hadoop各個功能模塊的理解

1、HDFS模塊

HDFS負責大數據的存儲,通過將大文件分塊后進行分布式存儲方式,突破了服務器硬盤大小的限制,解決了單臺機器無法存儲大文件的問題,HDFS是個相對獨立的模塊,可以為YARN提供服務,也可以為HBase等其他模塊提供服務。

2、YARN模塊

YARN是一個通用的資源協同和任務調度框架,是為了解決Hadoop1.x中MapReduce里NameNode負載太大和其他問題而創建的一個框架。
YARN是個通用框架,不止可以運行MapReduce,還可以運行Spark、Storm等其他計算框架。

3、MapReduce模塊

MapReduce是一個計算框架,它給出了一種數據處理的方式,即通過Map階段、Reduce階段來分布式地流式處理數據。它只適用于大數據的離線處理,對實時性要求很高的應用不適用。

延伸思考
  • 如何通過Hadoop存儲小文件?
    a、在客戶端將小文件合并為大文件。
    Hadoop會把每一個小文件傳遞給map()函數,而Hadoop在調用map()函數時會創建一個映射器,這樣就會創建了大量的映射器,應用的運行效率并不高。如果使用和存儲小文件,通常就會創很多的映射器。解決小文件問題的主要目的就是通過合并小文件為更大的文件來加快Hadoop的程序的執行,解決小文件問題可以減少map()函數的執行次數,相應地提高hadoop作業的整體性能。
    b、使用Hadoop的CombineFileInputFormat<K,V>實現小文件的合并。
    使用Hadoop API(抽象類CombineFileInputFormat)來解決小文件的問題。抽象類CombineFileInputFormat的基本思想是通過使用一個定制的InputFormat允許將小文件合并到Hadoop的分片(split)或塊(chunk)中。
  • 當有節點故障的時候,集群是如何繼續提供服務的,如何讀、寫?
  • 哪些是影響MapReduce性能的因素?
    a、硬件(或者資源)因素,如CPU、磁盤I/O、網絡帶寬和內存大小。
    b、底層存儲系統。
    c、輸入數據、分揀(shuffle)數據以及輸出數據的大小,這與作業的運行時間緊密相關。
    d、作業算法(或者程序),如map、reduce、partition、combine和compress。有些算法很難在MapReduce中概念化,或者在MapReduce中效率可能會降低。

HDFS寫流程

Hadoop相關概念
1、客戶端想NameNode發起寫數據請求
2、分塊寫入DataNode節點,DataNode自動完成副本備份
3、DataNode向NameNode匯報存儲完成,NameNode通知客戶端

HDFS讀流程

Hadoop相關概念
1、客戶端向NameNode發起讀數據請求
2、NameNode找出距離最近的DataNode節點信息
3、客戶端從DataNode分塊下載文件

MapReduce

MapReduce是一種編程模型,是一種編程方法,是抽象的理論。

  • YARN概念(通用的資源協同和任務調度框架)
    • ResourceManager
      分配和調度資源、啟動并監控ApplicationMaster、監控NodeManager
    • ApplicationMaster
      為MR類型的程序申請資源,并分配給內部任務、負責數據的切分、監控任務的執行及容錯
    • NodeManager
      管理單個節點的資源、處理來自ResourceManager的命令、處理來自ApplicationMaster的命令

MapReduce四個階段

  • Split階段
  • Map階段(需要編碼)
  • Shuffle階段
  • Reduce階段(需要編碼)
MapReduce編程模型
- 輸入一個大文件,通過split之后將其分為多個分片    
- 每個文件分片由單獨的機器去處理,這就是Map方法    
- 將各個機器計算的結果進行匯總并得到最終的結果,這就是Reduce方法。    
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

瑞丽市| 饶平县| 白银市| 江川县| 靖宇县| 伊宁市| 永顺县| 平江县| 宜兰县| 赫章县| 萝北县| 景德镇市| 若尔盖县| 瓦房店市| 色达县| 北宁市| 洪江市| 玉田县| 来宾市| 长治市| 临武县| 蕲春县| 靖西县| 积石山| 仁布县| 林周县| 合江县| 禹城市| 二连浩特市| 越西县| 济南市| 长春市| 油尖旺区| 余庆县| 黑河市| 邯郸市| 绵阳市| 额济纳旗| 怀柔区| 沁阳市| 桓台县|