溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

常見Hadoop面試題有哪些

發(fā)布時間:2021-12-04 15:33:51 來源:億速云 閱讀:143 作者:iii 欄目:大數(shù)據(jù)

本篇內(nèi)容介紹了“常見Hadoop面試題有哪些”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

1 單選題

1.1 下面哪個程序負(fù)責(zé) HDFS 數(shù)據(jù)存儲。

a)NameNode

b)Jobtracker

c)Datanode

d)secondaryNameNode

e)tasktracker

答案 C datanode

1.2 HDfS 中的 block 默認(rèn)保存幾份?

a)3 份

b)2 份

c)1 份

d)不確定

答案 A 默認(rèn) 3份

1.3 下列哪個程序通常與 NameNode 在一個節(jié)點(diǎn)啟動?

a)SecondaryNameNode

b)DataNode

c)TaskTracker

d)Jobtracker

答案 D,此題分析:

hadoop 的集群是基于 master/slave 模式,namenode 和 jobtracker 屬于 master,datanode 和  tasktracker 屬 于 slave , master 只 有 一 個 , 而 slave 有多個SecondaryNameNode 內(nèi)存需求和  NameNode 在一個數(shù)量級上,所以通常 secondary ,NameNode(運(yùn)行在單獨(dú)的物理機(jī)器上)和 NameNode 運(yùn)行在不同的機(jī)器上。

JobTracker 和 TaskTracker,JobTracker 對應(yīng)于 NameNode,TaskTracker 對應(yīng)于  DataNode,DataNode 和 NameNode 是針對數(shù)據(jù)存放來而言的,JobTracker 和 TaskTracker 是對于 MapReduce  執(zhí)行而言的,mapreduce 中幾個主要概念,mapreduce 整體上可以分為這么幾條執(zhí)行線索:obclient,JobTracker 與  TaskTracker。

JobClient會在用戶端通過JobClient類將應(yīng)用已經(jīng)配置參數(shù)打包成jar文件存儲到hdfs,并把路徑提交到 Jobtracker,然后由  JobTracker 創(chuàng)建每一個 Task(即 MapTask 和ReduceTask)并將它們分發(fā)到各個 TaskTracker 服務(wù)中去執(zhí)行。

JobTracker 是一個 master 服務(wù),軟件啟動之后 JobTracker 接收 Job,負(fù)責(zé)調(diào)度 Job的每一個子任務(wù) task 運(yùn)行于  TaskTracker 上,并監(jiān)控它們,如果發(fā)現(xiàn)有失敗的 task 就重新運(yùn)行它。一般情況應(yīng)該把 JobTracker 部署在單獨(dú)的機(jī)器上。

TaskTracker 是運(yùn)行在多個節(jié)點(diǎn)上的 slaver 服務(wù)。TaskTracker 主動與 JobTracker  通信,接收作業(yè),并負(fù)責(zé)直接執(zhí)行每一個任務(wù)。TaskTracker 都需要運(yùn)行在 HDFS 的 DataNode上。

1.4 Hadoop 作者

a)Martin Fowler

b)Kent Beck

c)Doug cutting

答案 C Doug cutting

1.5 HDFS 默認(rèn) Block Size

a)32MB

b)64MB

c)128MB

答案:B

(因為版本更換較快,這里答案只供參考)

1.6 下列哪項通常是集群的最主要瓶頸:

a)CPU

b)網(wǎng)絡(luò)

c)磁盤 IO

d)內(nèi)存

答案:C 磁盤

該題解析:

首先集群的目的是為了節(jié)省成本,用廉價的 pc 機(jī),取代小型機(jī)及大型機(jī)。小型機(jī)和大型機(jī)有什么特點(diǎn)?

cpu 處理能力強(qiáng)

內(nèi)存夠大。所以集群的瓶頸不可能是 a 和 d

網(wǎng)絡(luò)是一種稀缺資源,但是并不是瓶頸。

由于大數(shù)據(jù)面臨海量數(shù)據(jù),讀寫數(shù)據(jù)都需要 io,然后還要冗余數(shù)據(jù),hadoop 一般備 3份數(shù)據(jù),所以 IO 就會打折扣。

1.7 關(guān)于 SecondaryNameNode 哪項是正確的?

a)它是 NameNode 的熱備

b)它對內(nèi)存沒有要求

c)它的目的是幫助 NameNode 合并編輯日志,減少 NameNode 啟動時間

d)SecondaryNameNode 應(yīng)與 NameNode 部署到一個節(jié)點(diǎn)。

答案 C

2 多選題

2.1 下列哪項可以作為集群的管理?

a)Puppet

b)Pdsh

c)Cloudera Manager

d)Zookeeper

答案:ABD

2.2 配置機(jī)架感知的下面哪項正確:

a)如果一個機(jī)架出問題,不會影響數(shù)據(jù)讀寫

b)寫入數(shù)據(jù)的時候會寫到不同機(jī)架的 DataNode 中

c)MapReduce 會根據(jù)機(jī)架獲取離自己比較近的網(wǎng)絡(luò)數(shù)據(jù)

答案 ABC

2.3 Client 端上傳文件的時候下列哪項正確?

a)數(shù)據(jù)經(jīng)過 NameNode 傳遞給 DataNode

b)Client 端將文件切分為 Block,依次上傳

c)Client 只上傳數(shù)據(jù)到一臺 DataNode,然后由 NameNode 負(fù)責(zé) Block 復(fù)制工作

答案 B,該題分析:

lient 向 NameNode 發(fā)起文件寫入的請求。

NameNode 根據(jù)文件大小和文件塊配置情況,返回給 Client 它所管理部分 DataNode 的

信息。

Client 將文件劃分為多個 Block,根據(jù) DataNode 的地址信息,按順序?qū)懭氲矫恳粋€DataNode 塊中。

2.4 下列哪個是 Hadoop 運(yùn)行的模式:

a)單機(jī)版

b)偽分布式

c)分布式

答案 ABC

2.5 Cloudera 提供哪幾種安裝 CDH 的方法?

a)Cloudera manager

b)Tarball

c)Yum

d)Rpm

答案:ABCD

3 判斷題

3.1 Ganglia 不僅可以進(jìn)行監(jiān)控,也可以進(jìn)行告警。( 正確)

分析:此題的目的是考 Ganglia 的了解。嚴(yán)格意義上來講是正確。ganglia 作為一款最常用的 Linux  環(huán)境中的監(jiān)控軟件,它擅長的的是從節(jié)點(diǎn)中按照用戶的需求以較低的代價采集數(shù)據(jù)。

但是 ganglia 在預(yù)警以及發(fā)生事件后通知用戶上并不擅長。***的 ganglia 已經(jīng)有了部分這方面的功能。但是更擅長做警告的還有  Nagios。Nagios,就是一款精于預(yù)警、通知的軟件。通過將 Ganglia 和 Nagios 組合起來,把 Ganglia 采集的數(shù)據(jù)作為 Nagios  的數(shù)據(jù)源,然后利用 Nagios 來發(fā)送預(yù)警通知,可以***的實(shí)現(xiàn)一整套監(jiān)控管理的系統(tǒng)。

3.2 Block Size 是不可以修改的。(錯誤 )

分析:它是可以被修改的 Hadoop 的基礎(chǔ)配置文件是 hadoop-default.xml,默認(rèn)建立一個 Job 的時候會建立 Job 的  Config,Config 首先讀入 hadoop-default.xml 的配置,然后再讀入 hadoop-site.xml  的配置(這個文件初始的時候配置為),hadoop-site.xml 中主要配置需要覆蓋的 hadoop-default.xml 的系統(tǒng)級配置。

3.3 Nagios 不可以監(jiān)控 Hadoop 集群,因為它不提供 Hadoop 支持。(錯誤 )

分析:Nagios 是集群監(jiān)控工具,而且是云計算三大利器之一

3.4 如果 NameNode 意外終止,SecondaryNameNode 會接替它使集群繼續(xù)工作。

(錯誤 )

分析:SecondaryNameNode 是幫助恢復(fù),而不是替代,如何恢復(fù),可以查看

3.5 Cloudera CDH 是需要付費(fèi)使用的。(錯誤 )

分析:***套付費(fèi)產(chǎn)品是 Cloudera Enterpris,Cloudera Enterprise 在美國加州舉行的Hadoop 大會 (Hadoop  Summit) 上公開,以若干私有管理、監(jiān)控、運(yùn)作工具加強(qiáng)Hadoop 的功能。收費(fèi)采取合約訂購方式,價格隨用的 Hadoop 叢集大小變動。

3.6 Hadoop 是 Java 開發(fā)的,所以 MapReduce 只支持 Java 語言編寫。(錯誤 )

分析:rhadoop 是用 R 語言開發(fā)的,MapReduce 是一個框架,可以理解是一種思想,可以使用其他語言開發(fā)。

3.7 Hadoop 支持?jǐn)?shù)據(jù)的隨機(jī)讀寫。(錯 )

分析:lucene是支持隨機(jī)讀寫的,而 hdfs 只支持隨機(jī)讀。但是 HBase 可以來補(bǔ)救。HBase提供隨機(jī)讀寫,來解決 Hadoop  不能處理的問題。HBase自底層設(shè)計開始即聚焦于各種可伸縮性問題:表可以很“高”,有數(shù)十億個數(shù)據(jù)行;也可以“寬”,有數(shù)百萬個列;水平分區(qū)并在上千個普通商用機(jī)節(jié)點(diǎn)上自動復(fù)制。表的模式是物理存儲的直接反映,使系統(tǒng)有可能提高高效的數(shù)據(jù)結(jié)構(gòu)的序列化、存儲和檢索。

3.8 NameNode 負(fù)責(zé)管理 metadata,client 端每次讀寫請求,它都會從磁盤中讀取或則會寫入 metadata 信息并反饋  client 端。(錯誤)

此題分析:

NameNode 不需要從磁盤讀取 metadata,所有數(shù)據(jù)都在內(nèi)存中,硬盤上的只是序列化的結(jié)果,只有每次 namenode  啟動的時候才會讀取。

1)文件寫入

Client 向 NameNode 發(fā)起文件寫入的請求。

NameNode 根據(jù)文件大小和文件塊配置情況,返回給 Client 它所管理部分 DataNode 的信息。

Client 將文件劃分為多個 Block,根據(jù) DataNode 的地址信息,按順序?qū)懭氲矫恳粋€

DataNode 塊中。

2)文件讀取

Client 向 NameNode 發(fā)起文件讀取的請求。

3.9 NameNode 本地磁盤保存了 Block 的位置信息。( 個人認(rèn)為正確,歡迎提出其它意見)

分析:DataNode 是文件存儲的基本單元,它將 Block 存儲在本地文件系統(tǒng)中,保存了 Block的 Meta-data,同時周期性地將所有存在的  Block 信息發(fā)送給 NameNode。NameNode返回文件存儲的 DataNode 的信息。

Client 讀取文件信息。

3.10 DataNode 通過長連接與 NameNode 保持通信。(有分歧 )

這個有分歧:具體正在找這方面的有利資料。下面提供資料可參考。

首先明確一下概念:

(1).長連接

Client 方與 Server 方先建立通訊連接,連接建立后不斷開,然后再進(jìn)行報文發(fā)送和接收。

這種方式下由于通訊連接一直存在,此種方式常用于點(diǎn)對點(diǎn)通訊。

(2).短連接

Client 方與 Server 每進(jìn)行一次報文收發(fā)交易時才進(jìn)行通訊連接,交易完畢后立即斷開連接。

此種方式常用于一點(diǎn)對多點(diǎn)通訊,比如多個 Client 連接一個 Server.

“常見Hadoop面試題有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI