大資料面試題目第一部分
阿新 • • 發佈:2018-11-02
一 Linux
- Linux常用命令
- CentOS檢視版本的命令
- linux 檢視埠呼叫
- linux命令 檢視記憶體 磁碟 io 埠 程序
- 使用Linux命令查詢file1裡面空行的所在行號
- 有檔案chengji.txt內容如下:
張三 40
李四 50
王五 60
請使用Linux命令計算第二列的和並輸出 - 在Linux環境下有檔案/home/dim_city.txt如何載入dim_city外部表中,HDFS路徑/user/dim/dim_city
- Shell腳本里如何檢查檔案是否存在,如果不存在該如何處理?Shell裡如何檢查一個變數是否是空?
- Shell腳本里如何統計一個目錄下(包含子目錄)有多少個java檔案?如何取得每一個檔案的名稱(不包含路徑)
- Shell腳本里如何檢查檔案是否存在,如果不存在該如何處理?Shell裡如何檢查一個變數是否是空?
- Shell腳本里如何統計一個目錄下(包含子目錄)有多少個java檔案?如何取得每一個檔案的名稱(不包含路徑)
二 Hadoop入門
- 簡要描述如何安裝配置apache的一個開源Hadoop,只描述即可,無需列出具體步驟,列出具體步驟更好。
- Hadoop中需要哪些配置檔案,其作用是什麼?
- 請列出正常工作的Hadoop叢集中Hadoop都分別需要啟動哪些程序,它們的作用分別是什麼?
- 簡述Hadoop的幾個預設埠及其含義。
三 Hadoop的HDFS - HDFS的儲存機制(讀寫流程)。
- SecondaryNameNode 工作機制。
- NameNode與SecondaryNameNode 的區別與聯絡?
- 服役新資料節點和退役舊節點步驟
- NameNode掛了怎麼辦?
四 Hadoop的MapReduce - 談談Hadoop序列化和反序列化及自定義bean物件實現序列化?
- FileInputFormat切片機制
- 自定義InputFormat流程
- 如何決定一個job的map和reduce的數量?
- Maptask的個數由什麼決定?
- MapTask工作機制
- ReduceTask工作機制
- 請描述mapReduce有幾種排序及排序發生的階段
- 請描述mapReduce中shuffle階段的工作流程,如何優化shuffle階段
- 請描述mapReduce中combiner的作用是什麼,一般使用情景,哪些情況不需要,及和reduce的區別?
- Mapreduce的工作原理,請舉例子說明mapreduce是怎麼執行的?
- 如果沒有定義partitioner,那資料在被送達reducer前是如何被分割槽的?
- MapReduce 怎麼實現 TopN?
- 有可能使 Hadoop 任務輸出到多個目錄中麼?如果可以,怎麼做?
- 簡述hadoop實現join的幾種方法及每種方法的實現方法
- 請簡述hadoop怎樣實現二級排序
- 參考下面的MR系統的場景:
–hdfs塊的大小為64MB
–輸入型別為FileInputFormat
–有三個檔案的大小分別是:64KB 65MB 127MB
Hadoop框架會把這些檔案拆分為多少塊? - Hadoop中RecordReader的作用是什麼?
- 給你一個1G的資料檔案。分別有id,name,mark,source四個欄位,按照mark分組,id排序,手寫一個MapReduce?其中有幾個Mapper?
五 Hadoop的Yarn - 簡述Hadoop1與Hadoop2 的架構異同。
- 為什麼會產生yarn,它解決了什麼問題,有什麼優勢?
- MR作用提交全過程
- HDFS的資料壓縮演算法?
- Hadoop的排程器總結。
- mapreduce推測執行演算法及原理。
六 Hadoop優化 - mapreduce 跑的慢的原因?
- mapreduce 優化方法。
- HDFS小檔案優化方法。
- MapReduce怎麼解決資料均衡問題,如何確定分割槽號?
- Hadoop中job和Tasks之間的區別是什麼?
- MR資料傾斜?