Hadoop概述


初始Hadoop

hadoop概述

查看官網,了解hadoop是一個開源的可靠的可擴展的分布式框架,它有很多的組件,比如Common,HDFS
YARN,MapReduce.

  1. Common:支持其他Hadoop模塊的常用實用程序
  2. HDFS:是一個分布式文件系統,提供對應用程序數據的高吞吐量訪問
  3. YARN:是一個作業調度和集群資源管理的框架
  4. MapReduce:基於YARN的系統,用於並行處理大型數據集

hadoop核心組件

分布式文件系統HDFS

HDFS特點

  1. 擴展性高,可以再集群中加入其他的單個服務器,來提高整個集群的性能
  2. 容錯性高
  3. 海量的數量存儲
  4. 將文件切分成指定大小的數據塊並以多副本的存儲在多個機器上(一般默認是128M的數據塊)
  5. 數據切分,多副本,容錯等操作對用戶是透明的,也就是說我們不需要關心這些,我們操作對象還是文件,而不是數據塊

分布式資源調度YARN

Yet Another Resource Negotiator

  1. 負責整個集群資源的管理和調度
  2. YARN特點:擴展性高,容錯性高,多框架資源統一調度

圖可以看出最下面是HDFS分布式文件系統,中間是YARN分布式資源調度系統,看出可以在YARN上跑很多的程序,比如pig,hive,hbase,spark等等。

分布式計算框架MapReduce

  1. 可擴展性,容錯性,海量數量離線處理(因為離線處理,就說明了延遲性,不能實時處理)
    下圖:
  2. input
    假設輸入的數據為上面幾個單詞
  3. spliting
    三台機器分別取出一部分
  4. mapping
    開始映射值,每個單詞出現的個數
  5. shuffling
    重新開始洗牌,把相同的單詞放在同一個機器中
  6. reducing
    開始合並數據
  7. 最終的結果

hadoop優勢

  1. 高可靠性
  2. 對於數據存儲來說,數據塊多副本。可以防止文件的丟失,提高容錯性
  3. 對於數據計算來說,重新調度作業計算。即使發生了異常,自己也可以重新開始作業調度
  4. 高擴展性
  5. 對於存儲/計算資源不夠時,可以橫向的線性擴展機器
  6. 一個集群中可以包含數以千計的節點
  7. 其他方面
  8. 存儲在廉價的機器上,可以減低成本,在一般的PC就可以
  9. 成熟的生態圈

hadoop發展史

網上查infoq.com

hadoop的生態系統

俠義的hadoop:是一個適合大數據分布式存儲(HDFS),分布式計算(MapReduce)和資源調度(YARN)的平台。
廣義的Hapdoop:指的是hadoop生態系統,hadoop生態系統是一個很龐大的概念,hadoop是其中最重要最基礎的一個部分,生態系統中每一個子系統只能解決某一個特定的問題域。

每個組件都有自己的應用場景

hadoop生態系統的提點

  1. 開源,社區活躍
  2. 囊括了大數據處理的方方面面
  3. 成熟的生態圈

hadoop發行版本的選擇

  1. Apache Hadoop
    存在着很多組件的jar包,各個組件有沖突
  2. CDH: Cloudera Distributed Hadoop
    適用於新手,基本不存在jar包沖突,但不是完全開源
  3. HDP: Hortonworks Data Platform
    完全開源的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM