一、Hadoop入門
1、常用端口號
hadoop3.x
HDFS NameNode 內部通常端口:8020/9000/9820
HDFS NameNode 對用戶的查詢端口:9870
Yarn查看任務運行情況的:8088
歷史服務器:19888
hadoop2.x
HDFS NameNode 內部通常端口:8020/9000
HDFS NameNode 對用戶的查詢端口:50070
Yarn查看任務運行情況的:8088
歷史服務器:19888
2、常用的配置文件
3.x core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml workers
2.x core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml slaves
二、HDFS
1、HDFS文件塊大小(面試重點)
硬盤讀寫速度
在企業中 一般128m(中小公司) 256m (大公司)
2、HDFS的Shell操作(開發重點)
3、HDFS的讀寫流程(面試重點)
三、Map Reduce
1、InputFormat
1)默認的是TextInputformat kv key偏移量,v :一行內容
2)處理小文件CombineTextInputFormat 把多個文件合併到一起統一切片
2、Mapper
setup()初始化; map()用戶的業務邏輯; clearup() 關閉資源;
3、分區
默認分區HashPartitioner ,默認按照key的hash值%numreducetask個數
自定義分區
4、排序
1)部分排序 每個輸出的文件內部有序。
2)全排序: 一個reduce ,對所有數據大排序。
3)二次排序: 自定義排序範疇, 實現 writableCompare接口, 重寫compareTo方法
總流量倒序 按照上行流量 正序
5、Combiner
前提:不影響最終的業務邏輯(求和 沒問題 求平均值)
提前聚合map => 解決數據傾斜的一個方法
6、Reducer
用戶的業務邏輯;
setup()初始化;reduce()用戶的業務邏輯; clearup() 關閉資源;
7、OutputFormat
1)默認TextOutputFormat 按行輸出到文件
2)自定義
四、Yarn
1、Yarn的工作機制(面試題)
2、Yarn的調度器
1)FIFO/容量/公平
2)apache 默認調度器 容量; CDH默認調度器 公平
3)公平/容量默認一個default ,需要創建多隊列
4)中小企業:hive spark flink mr
5)中大企業:業務模塊:登錄/註冊/購物車/營銷
6)好處:解耦 降低風險 11.11 6.18 降級使用
7)每個調度器特點:
相同點:支持多隊列,可以藉資源,支持多用戶
不同點:容量調度器:優先滿足先進來的任務執行
公平調度器,在隊列裡面的任務公平享有隊列資源
8)生產環境怎麼選:
中小企業,對併發度要求不高,選擇容量
中大企業,對併發度要求比較高,選擇公平。
3、開發需要重點掌握:
1)隊列運行原理
2)Yarn常用命令
3)核心參數配置
4)配置容量調度器和公平調度器。
5)tool接口使用。