hadoop筆記一
Hadoop是Apache軟件基金會旗下的一個開源分布式計算平台。
是Apache 下的一個項目,由HDFS、MapReduce、HBase、Hive 和ZooKeeper等成員組成。其中,HDFS 和MapReduce 是兩個最基礎最重要的成員
Hadoop 由許多元素構成。其最底部是 Hadoop Distributed File System[3](HDFS),它存儲 Hadoop
集群中所有存儲節點上的文件。HDFS(對於本文)的上一層是MapReduce 引擎,該引擎由 JobTrackers 和 TaskTrackers 組成
hadoop兩部分組成
1、分布式文件係統( HDFS Hadoop distributed FileSystem)
2、MapReduce
hadoop兩大類角色:
1、master 主服務器
2、salve 子服務器
1、分布式文件係統
1、NameNode 作為主服務器,管理文件係統的命名空間和客戶端對文件係統的訪問操作(CRUD)
統計數據需要多大的空間,多少個DataNode塊,進行存儲數據
2、DataNode 管理存儲的數據
數據真正儲存的節點內容、或者物理地址 存儲(blockID-塊地址,data-數據)
hadoop啟動時會將dataNode節點的數據主動上傳到NameNode空間中,讓所有的數據都讓nameNode維護起來,DataNode與NameNode保持心跳(實時通信)實現數據共享、
2、MapReduce
分布式計算和任務處理 JobTrackers
和 TaskTrackers 組成
1、Map
接受數據並且將數據抓換成key \ value形式保存
2、Reduce 對Map進行邏輯處理 排序 、 計算、處理的邏輯處理
同時又兩個集中處理的子任務
1、JobTracker、分解任務的執行
2、TaskTracker、任務的執行(分解出來的任務執行(存儲在硬盤或DataNode))
HDFS在MapReduce任務處理過程中提供了文件操作和存儲等支持,假設輸入域是 one small step for man,one giant leap for mankind。在這個域上運行 Map 函數將得出以下的鍵/值對列表:(one,1) (small,1) (step,1) (for,1) (man,1)MapReduce 流程的概念流
(one,1) (giant,1) (leap,1) (for,1) (mankind,1)如果對這個鍵/值對列表應用 Reduce 函數,將得到以下一組鍵/值對:(one,2) (small,1) (step,1) (for,2) (man,1)(giant,1) (leap,1) (mankind,1)
MapReduce在HDFS的基礎上實現了任務的分發、跟蹤、執行等工作,並收集結果
最後更新:2017-04-03 12:55:47