1. Hadoop的簡單介紹
1.1 狹義
Hadoop指的是Apache軟體基金會的一款開源軟體,允許用戶使用簡單的編程模型實現跨機器集群對海量數據進行分布式計算處理。
Hadoop核心組件
Hadoop HDFS(分布式文件存儲系統):解決海量數據存儲。
Hadoop MapReduce(分布式計算框架):解決海量數據計算。
1.2 廣義
廣義上Hadoop指的是圍繞Hadoop打造的大數據生態圈。
1.3 現狀
- HDFS作為分布式文件存儲系統,處在生態圈的底層與核心地位;
- YARN作為分布式通用的集群資源管理系統和任務調度平台,支撐各種計算引擎運行,保證了Hadoop地位;
- MapReduce作為大數據生態圈第一代分布式計算引擎,由於自身設計的模型所產生的弊端,導致企業一線幾乎不再直接使用MapReduce進行編程處理,但是很多軟體的底層依然在使用MapReduce引擎來處理數據。
2. Hadoop特性
實際應用場景
- Yahoo
支持廣告系統
用戶行為分析
支持Web搜索
反垃圾郵件系統 - Facebook
存儲處理數據挖掘和日誌統計
構建基於Hadoop數據倉庫平台(Apache Hive來自FB) - IBM
藍雲基礎設施構建
商業化Hadoop發行、解決方案支持 - 百度
用戶搜索表徵的需求數據、阿拉丁爬蟲數據存儲
數據分析和挖掘 競價排名 - 阿里巴巴
為電子商務網絡平台提供底層的基礎計算和存儲服務
交易數據、信用數據 - 騰訊
用戶關係數據
基於Hadoop、Hive構建TDW(騰訊分布式數據倉庫) - 華為
對Hadoop的HA方案,以及HBase領域有深入研究
3. Hadoop發行版本
3.1 Hadoop 1.0
HDFS(分布式文件存儲)
3.2 Hadoop 2.0
HDFS(分布式文件存儲)
MapReduce(分布式數據處理)
YARN(集群資源管理、任務調度)
3.3 Hadoop 3.0
架構組件和Hadoop 2.0類似,3.0著重於性能優化。
- 通用方面
精簡內核、類路徑隔離、shell腳本重構 - Hadoop HDFS
EC糾刪碼、多NameNode支持 - Hadoop MapReduce
任務本地化優化、內存參數自動推斷 - Hadoop YARN
Timeline Service V2、隊列配置