Hadoop 管理員面試問題

banq發表於2021-12-23

生產 Hadoop 部署支援哪些作業系統?
主要支援的作業系統是 Linux。但是,透過一些額外的軟體,Hadoop可以部署在 Windows 上。

namenode的作用是什麼?
namenode 是Hadoop 叢集的“大腦”,負責根據複製策略管理系統上的分佈塊。namenode 還根據客戶端請求提供資料的特定地址。

當客戶端嘗試讀取資料檔案時,名稱節點上會發生什麼?
namenode 將在編輯檔案中查詢有關檔案的資訊,然後從檔案系統記憶體快照中檢索剩餘資訊。由於名稱節點需要支援大量客戶端,因此主名稱節點只會向資料位置發回資訊。資料節點本身負責檢索。

Hadoop 叢集(主要和次要名稱節點和資料節點)的硬體要求是什麼?
對資料節點沒有要求。但是,namenode 需要指定數量的 RAM 來將檔案系統映像儲存在記憶體中 基於主 namenode 和輔助 namenode 的設計,整個檔案系統資訊將儲存在記憶體中。因此,兩個名稱節點都需要有足夠的記憶體來包含整個檔案系統映像。

Hadoop 程式碼可以在什麼模式下執行?
Hadoop可以採用單機模式、偽分散式模式或全分散式模式進行部署。Hadoop 專為部署在多節點叢集上而設計。但是,它也可以部署在單臺機器上並作為單個程式進行測試

Hadoop 管理員將如何在生產中部署 Hadoop 的各種元件?
在master節點上部署namenode和jobtracker,在多個slave節點上部署datanodes和tasktracker。系統上只需要一個 namenode 和 jobtracker。資料節點的數量取決於可用的硬體

部署輔助名稱節點的最佳實踐是什麼
在單獨的獨立機器上部署輔助名稱節點。輔助名稱節點需要部署在單獨的機器上。它不會以這種方式干擾主要的 namenode 操作。輔助名稱節點必須與主名稱節點具有相同的記憶體要求。

是否有部署 Hadoop 的標準程式?
不,各種發行版之間存在一些差異。但是,它們都要求在機器上安裝 Hadoop jar。所有Hadoop發行版都有一些共同的要求,但不同供應商的具體程式會有所不同,因為它們都有一定程度的專有軟體

輔助名稱節點的作用是什麼?
輔助名稱節點執行合併編輯日誌和當前檔案系統快照的 CPU 密集型操作。由於具有 CPU 密集型操作和後設資料備份的額外要求,輔助名稱節點被分離為一個程式

不執行輔助名稱節點有什麼副作用?
叢集效能會隨著時間的推移而下降,因為編輯日誌會越來越大。如果輔助名稱節點根本沒有執行,編輯日誌將顯著增長,並且會減慢系統速度。此外,系統將長時間進入安全模式,因為 namenode 需要組合編輯日誌和當前檔案系統檢查點影像。

如果資料節點失去網路連線幾分鐘會發生什麼?
namenode 將檢測到 datanode 沒有響應,並將開始從剩餘副本複製資料。當 datanode 重新上線時,額外的副本將由 namenode 主動維護複製因子。namenode 監控所有資料節點的狀態並跟蹤哪些塊位於該節點上。當資料節點不可用時,它將觸發從現有副本複製資料。但是,如果資料節點恢復正常,則會刪除過度複製的資料。注意:資料可能會從原始資料節點中刪除。

如果其中一個資料節點的 CPU 速度慢得多會怎樣?
任務執行將與最慢的工人一樣快。但是,如果啟用了推測執行,最慢的工作執行緒將不會產生如此大的影響,因為 Hadoop 是專門為與商品硬體一起設計的。推測執行有助於抵消緩慢的工作人員。將建立同一任務的多個例項,作業跟蹤器將考慮第一個結果,並終止該任務的第二個例項。

什麼是投機執行?
如果啟用了推測執行,則作業跟蹤器將在多個節點上發出同一任務的多個例項,並將獲取最先完成的任務的結果。任務的其他例項將被殺死。
推測執行用於抵消叢集中慢速工人的影響。jobtracker 建立同一任務的多個例項並獲取第一個成功任務的結果。其餘任務將被丟棄。

 建立Hadoop叢集需要多少機架才能確保叢集可靠執行?
為了確保可靠執行,建議至少有 2 個機架配置了機架放置 Hadoop 具有內建的機架感知機制,允許根據配置在不同機架之間分配資料。

namenode 有什麼特殊要求嗎?
是的,namenode 儲存有關係統中所有檔案的資訊,需要格外可靠。namenode 是單點故障。它需要格外可靠,並且後設資料需要在多個地方複製。請注意,社群正在努力解決 namenode 的單點故障問題。
如果您有一個 128M 大小的檔案並且複製因子設定為 3,那麼您可以在叢集上找到多少個塊與該檔案對應(假設預設的 apache 和 cloudera 配置)?
6
根據配置設定,檔案會按照預設的塊大小 64M 分成多個塊。128M / 64M = 2。每個塊將根據複製因子設定(預設為 3)進行復制。2 * 3 = 6 。

什麼是分散式副本(distcp)?
Distcp 是一個 Hadoop 實用程式,用於啟動 MapReduce 作業以複製資料。主要用途是複製大量資料。Hadoop 環境中的主要挑戰之一是跨多個叢集複製資料,distcp 將允許利用多個資料節點並行複製資料。

什麼是複製因子?
複製因子控制每個單獨的塊可以複製多少次——
根據複製因子在 Hadoop 叢集中複製資料。高複製因子保證了發生故障時的資料可用性。

主節點上執行哪些守護程式?
NameNode、輔助 NameNode 和 JobTracker
Hadoop由五個獨立的守護程式組成,每個守護程式都在自己的 JVM 中執行。NameNode、Secondary NameNode 和 JobTracker 執行在 Master 節點上。DataNode 和 TaskTracker 執行在每個 Slave 節點上。

什麼是機架意識?
機架感知是名稱節點根據機架定義決定如何放置塊的方式。Hadoop 將盡量減少同一機架內資料節點之間的網路流量,並且只會在必要時聯絡遠端機架。由於機架感知,namenode 能夠控制它

jobtracker 在 Hadoop 叢集中的作用是什麼?
jobtracker負責在slave節點上排程任務,收集結果,重試失敗的任務。作業跟蹤器是 map-reduce 執行的主要元件。它控制將作業劃分為更小的任務,將任務提交給單獨的 tasktracker,跟蹤作業的進度並將結果報告給呼叫程式碼。

Hadoop叢集如何容忍datanode故障?
由於 Hadoop 設計為在商品硬體上執行,因此預計會出現資料節點故障。Namenode 跟蹤所有可用的資料節點並積極維護所有資料的複製因子。
namenode 主動跟蹤所有 datanode 的狀態,如果 datanode 變得無響應,則立即採取行動。namenode 是HDFS的中央“大腦”,並在檢測到斷開連線的那一刻開始複製資料。

namenode恢復的過程是什麼?
可以透過兩種方式恢復名稱節點:從備份後設資料啟動新名稱節點或將輔助名稱節點提升為主名稱節點。
namenode恢復過程對於保證資料的可靠性非常重要,可以透過使用備份資料啟動一個新的namenode或將secondary namenode提升為primary來實現。

Web-UI 顯示一半的資料節點處於退役模式。這意味著什麼?從網路中刪除這些節點是否安全?
這意味著 namenode 正在嘗試透過將副本移動到剩餘的 datanode 來從這些 datanode 檢索資料。如果管理員在退役完成之前刪除這些資料節點,則資料可能會丟失。
由於複製策略,在完成退役過程之前,由於資料節點被大量刪除,可能會丟失一些資料。退役是指名稱節點試圖透過將副本移動到剩餘的資料節點來從資料節點檢索資料。

Hadoop 叢集新增新的資料節點後,Hadoop 管理員需要做什麼?
由於新節點上不會有任何資料,因此管理員需要啟動平衡器以在所有節點之間均勻地重新分配資料。
Hadoop 叢集會自動檢測新的資料節點。但是,為了最佳化叢集效能,建議啟動 rebalancer 以在資料節點之間均勻地重新分配資料。

如果Hadoop管理員需要更改,他需要更改哪個配置檔案?
Hadoop 叢集中的每個節點都有自己的配置檔案,並且需要在每個檔案中進行更改。原因之一是每個節點的配置可能不同。

Map Reduce 作業在剛剛重新啟動的叢集上失敗。他們在重新啟動之前工作。可能有什麼問題?
叢集處於安全模式。管理員需要等待namenode退出安全模式再重新啟動作業
這是Hadoop管理員在叢集上沒有secondary namenode並且叢集很長時間沒有重新啟動時的一個非常常見的錯誤。namenode 將進入安全模式並結合編輯日誌和當前檔案系統時間戳

Map Reduce 作業花費的時間太長。可以做些什麼來提高叢集的效能?
Hadoop 叢集出現效能問題的最常見原因之一是任務分佈不均。任務數量必須與叢集上的可用插槽數量相匹配
Hadoop 不是硬體感知系統。確保資源供需匹配是開發人員和管理員的責任。

你多久需要重新格式化namenode?
絕不。namenode 一開始只需要格式化一次。重新格式化namenode將導致整個資料丟失
namenode 是唯一需要格式化一次的系統。它將為檔案系統後設資料建立目錄結構併為整個檔案系統建立 namespaceID。

提高複製級別後,我仍然看到資料複製不足。可能有什麼問題?
由於資料量大,資料複製需要時間。在Hadoop的管理員應該留出足夠的時間進行資料複製
根據資料大小,資料複製將需要一些時間。Hadoop 叢集仍然需要複製資料,如果資料量足夠大,複製需要幾分鐘到幾個小時的情況並不少見。

相關文章