Hadoop應(yīng)用開發(fā)與案例實(shí)戰(zhàn)課后習(xí)題參考答案1-10章全書章節(jié)練習(xí)題答案題庫(kù)_第1頁(yè)
Hadoop應(yīng)用開發(fā)與案例實(shí)戰(zhàn)課后習(xí)題參考答案1-10章全書章節(jié)練習(xí)題答案題庫(kù)_第2頁(yè)
Hadoop應(yīng)用開發(fā)與案例實(shí)戰(zhàn)課后習(xí)題參考答案1-10章全書章節(jié)練習(xí)題答案題庫(kù)_第3頁(yè)
Hadoop應(yīng)用開發(fā)與案例實(shí)戰(zhàn)課后習(xí)題參考答案1-10章全書章節(jié)練習(xí)題答案題庫(kù)_第4頁(yè)
Hadoop應(yīng)用開發(fā)與案例實(shí)戰(zhàn)課后習(xí)題參考答案1-10章全書章節(jié)練習(xí)題答案題庫(kù)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

習(xí)題

一、選擇題

1,下列有關(guān)Hadoop的說法正誦的是(ABCD\

A.Hadoop最早起源于Nulch

B.Hadoop中HDFS的理念來源于谷歌發(fā)表的分布式文件系統(tǒng)(GFS)的論文

C.Hadoop中MapReduce的思想來源于谷歌分布式計(jì)算框架M叩Reduce的論文

D.Hadoop是在分布式服務(wù)器集群上存儲(chǔ)海量數(shù)據(jù)并運(yùn)行分布式分析應(yīng)用的一個(gè)開源的

軟件框架

2.使用Hadoop的原因是(ABCD\

A.方便:Hadoop運(yùn)行在由f商用機(jī)器構(gòu)成的大型集群上或者云計(jì)算服務(wù)上

B.穩(wěn)?。篐adoop致力于在一般商用硬件上運(yùn)行,其架構(gòu)假設(shè)硬件會(huì)頻繁失效,Hadoop

可以從容地處理大多數(shù)此類故障

C.可擴(kuò)展:Hadoop通過增加集群節(jié)點(diǎn),可以線性地?cái)U(kuò)展以處理更大的數(shù)據(jù)集

D.簡(jiǎn)單:Hadoop允許用戶快速編寫高效的并行代碼

3.Hadoop的作者是(B\

A.MartinFowlerB.DcugCuttingC.KentBeckD.GraceHopper

4.以下關(guān)于大數(shù)據(jù)特點(diǎn)的描述中,不正確的是(ABCX

A.巨大的數(shù)據(jù)量B.多結(jié)構(gòu)化數(shù)據(jù)C.增長(zhǎng)速度快D.價(jià)值密度高

二、簡(jiǎn)答題

1.Hadoop是一個(gè)什么樣的框架?

答:Hadoop是一款由Apache基金會(huì)開發(fā)的可靠的、可伸縮的分布式計(jì)算的開源軟件。它

允許使用簡(jiǎn)單的編程模型在跨計(jì)算機(jī)集群中對(duì)大規(guī)模數(shù)據(jù)集進(jìn)行分布式處理。

2.Hadoop的核心組件有哪些?簡(jiǎn)單介紹每一個(gè)組件的作用。

答:核心組彳牛有HDFS、MapReduce、YARN。

HDFS(HadoopDistributedFileSystem,Hadoop分布式文件系統(tǒng))是Hadoop的核心組件之

-,作為最底層的分布式存儲(chǔ)服務(wù)而存在。它是一個(gè)高度容錯(cuò)的系統(tǒng),能檢測(cè)和應(yīng)對(duì)硬件故障,

可在低成本的通用硬件上運(yùn)行。

M叩Reduce是Hadoop的一個(gè)分布式計(jì)算框架也是一種大規(guī)模數(shù)據(jù)集并行運(yùn)算的編程模型,

主要用于處理海量數(shù)據(jù)的運(yùn)算。MapReduce主要包括map(映射)和reduce(規(guī)約)兩部分。它

是一個(gè)分布式運(yùn)算程序的編程框架,其核心功能是將用戶編寫的業(yè)務(wù)邏輯代碼和自帶的默認(rèn)組

件整合成一個(gè)完整的分布式運(yùn)算程序,并發(fā)運(yùn)行在Hadoop集群上。

HadoopYARN是開源Hadoop分布式處理框架中的資源管理和作業(yè)調(diào)度框架,主要負(fù)責(zé)將

系統(tǒng)資源分配給在Hadoop集群中運(yùn)行的各種應(yīng)用程序,并調(diào)度在不同集群節(jié)點(diǎn)上執(zhí)行的任務(wù)

3.簡(jiǎn)述Hadoop生態(tài)體系,并列舉此生態(tài)體系中涉及的技術(shù)。

答:當(dāng)今的Hadoop已經(jīng)成長(zhǎng)為一個(gè)龐大的生態(tài)體系,隨著生態(tài)體系的成長(zhǎng),新出現(xiàn)的項(xiàng)目

也越來越多,其中不乏一些非Apache主管的項(xiàng)目,這些項(xiàng)目對(duì)Hadoop做了更好的補(bǔ)充或者更

高層的抽象,涉及的技術(shù)有HBase、Hive、Sqoop、Pig、Flume、Oozie、ZooKe叩er、kafka、Spark

等。

4.簡(jiǎn)單列舉幾個(gè)Hadoop的應(yīng)用場(chǎng)景。

答:(1)在線旅游

(2)電子商務(wù)

(3)移動(dòng)數(shù)據(jù)

(4)能源發(fā)現(xiàn)

(5)節(jié)約能源

(6)圖像處理

(7)醫(yī)療保健

(8)IT安全

(9)欺詐檢測(cè)

(10)基礎(chǔ)設(shè)施管理

習(xí)題

一、填空題

1.Hadoop集群中的節(jié)點(diǎn)DataNode負(fù)責(zé)HDFS的數(shù)據(jù)存儲(chǔ)。

2.Hadoop集群中的Jobtracker程序通常與NameNode在一個(gè)節(jié)點(diǎn)啟動(dòng)。

3.Hadoop的運(yùn)行模式有獨(dú)立(本地)運(yùn)行模式、偽分布式運(yùn)行模式和完全分布式運(yùn)行

環(huán)境。

4.Had(x)p集群搭建中常用的4個(gè)配置文件有hadoop-envsh、core-siie,xml、mapred-

site,.xml和yam-site.xml.

二、操作題

1?根據(jù)2.2節(jié)偽分布式安裝的安裝及配置步驟,在自己計(jì)算機(jī)上搭建偽分布式Hadoop集群

環(huán)境,環(huán)境搭建完畢后通過命令及Web訪問方式查看集群的啟動(dòng)情況。

答:具體步驟見章節(jié)內(nèi)容。

2.根據(jù)2.3節(jié)完全分布式安裝的安裝及配置步驟,根據(jù)自己計(jì)算機(jī)的實(shí)際配置情況分析是

否可以搭建至少2臺(tái)節(jié)點(diǎn)的完全分布式Hadoop集群環(huán)境,如果配置允許則搭建完全分布式集群

環(huán)境,搭建完畢后通過命令或Web訪問方式查看集群的啟動(dòng)信息。

答:具體步驟見章節(jié)內(nèi)容。

習(xí)題

一、填空題

1,由于NameNode宕機(jī),導(dǎo)致無(wú)法對(duì)外提供服務(wù),可通過搭建HDFSHA來解決。

2.YARN的高1可用主要是解決ResourceManager單點(diǎn)故障。

3.由于HDFS存儲(chǔ)數(shù)據(jù)量過大,導(dǎo)致NameNode內(nèi)存不足,可以通過搭建聯(lián)邦

來解決。

二、簡(jiǎn)答題

1.Had(x)p是如何解決高可用問題的?

答:對(duì)于Hadoop集群,RM和NN都是"SinglePointofFailure(單點(diǎn)故障)",起著"一票否

決”的作用,所以Hadoop對(duì)NN和RM都提供了HA選項(xiàng),采用的都是Active/Standby的措施來

達(dá)到HA的要求。所謂Active/Standby是一種熱備方案,這種方案中,"在位"的行使職權(quán)的Active

的管理者只有一個(gè),但有—N乍為備份(即Standby)的候補(bǔ)管理者時(shí)刻準(zhǔn)備著,當(dāng)Active的管

理者發(fā)生故障,Standby的管理者就立刻頂上,并進(jìn)行業(yè)務(wù)的接管,不用臨時(shí)開機(jī)和初始化。

2.簡(jiǎn)述ZooKeeper的功能及其在Hadoop高可用中起到的作用。

答:ZooKeeper主要用來解決分布式應(yīng)用中經(jīng)常遇到的一些數(shù)據(jù)管理問題,如統(tǒng)一命名服務(wù)、

狀態(tài)同步服務(wù)、集群管理、分布式應(yīng)用配置項(xiàng)的管理等。

在Hadoop的HA集群中,使用ZooKeeper的存儲(chǔ)功能可保存NameNode的狀態(tài)信

息,ZooKeeper會(huì)監(jiān)聽兩個(gè)NameNode的工作狀態(tài)當(dāng)狀態(tài)發(fā)生改變時(shí),由其協(xié)調(diào)Active與Standby

狀態(tài)的切換。

3.YARN是如何解決高可用問題的?

答:Hadoop在2.4版本之后,針對(duì)YARN弓|入了HA機(jī)制,也就是ResourceManager的

Active/Standby.YARN的HA與HDFS的HA基本相同,但YARNHA能夠支持多個(gè)Standby的

ResourceManager(Hadoop2.x的HDFSHA只允許有一個(gè)Standby的NameNode,Hadoop3.x之

后,允許有多個(gè)Standby的NameNode),Active和Standby的狀態(tài)可以通過控制臺(tái)命令手動(dòng)切

換,也可以自動(dòng)切換。

4.Hadoop聯(lián)邦解決了什么問題?

答:Hadoop集群?jiǎn)?dòng)后,NameNode在內(nèi)存中保存了文件和塊的映射關(guān)系,這意味著對(duì)于

一個(gè)擁有大量文件的超大集群來說,由于數(shù)據(jù)量太大,NameNode的內(nèi)存中可能也無(wú)法放下這么

多的對(duì)應(yīng)關(guān)系,內(nèi)存將成為限制系統(tǒng)橫向擴(kuò)展的瓶頸。Hadoop2.x版本中引入了HDFS聯(lián)邦機(jī)制

來解決這個(gè)問題

一、選擇題

1.數(shù)據(jù)塊(block)的大小由(A)參數(shù)決定。

A.dfs.blocksizeB.fs.replicationC.fs.defaultFSD.dfs.block

2.創(chuàng)建HDFS新目錄"/newdir”的命令為(D\

A.hadoopmkdir/newdirB.hadoopfsmkdir/newdir

C.hadoopfs-mkdirnewdirD.hadoopfs-mkdir/newdir

二、簡(jiǎn)答題

簡(jiǎn)述HDFS的寫數(shù)據(jù)流程。

答:(1)客戶端首先與NameNode建立連接,發(fā)起文件上傳請(qǐng)求。

(2)NameNode檢查上傳路徑是否存在,目標(biāo)文件是否存在,權(quán)限是否允許。若無(wú)問題則修

改命名空間,并反饋允許上傳。

(3)客戶端收到允許上傳反饋后再次請(qǐng)求第一個(gè)Block所在的節(jié)點(diǎn)名。

(4)NameNode根據(jù)機(jī)架感知原理選取三個(gè)節(jié)點(diǎn)(DataNodel、DataNode2%DataNode3)并

將其反饋給客戶端。

(5)客戶端從獲取的三個(gè)節(jié)點(diǎn)中選取一個(gè)節(jié)點(diǎn)建立管道(Pipeline)連接,請(qǐng)求上傳數(shù)據(jù)。節(jié)

點(diǎn)1收到請(qǐng)求后與節(jié)點(diǎn)2獲取連接,節(jié)點(diǎn)2收到請(qǐng)求后與節(jié)點(diǎn)3獲取連接。

(6)連接全部建立成功后,客戶端開始向第一個(gè)節(jié)點(diǎn)傳輸?shù)谝粋€(gè)Block.該Block數(shù)據(jù)以

Packet為單位進(jìn)行傳輸。數(shù)據(jù)的校驗(yàn)則是以更小的Chunk單位進(jìn)行的,數(shù)據(jù)在客戶端本地和

DataNode端都有讀取和寫入的緩存隊(duì)列。每一次Packet在Pipeline上的傳輸都需要反向應(yīng)答。

直到寫完預(yù)定的Block為止。節(jié)點(diǎn)1、節(jié)點(diǎn)2和節(jié)點(diǎn)3之間也會(huì)以同樣的方式同步傳輸。

(7)當(dāng)?shù)谝粋€(gè)Block傳輸完畢后,客戶端會(huì)再次發(fā)送請(qǐng)求到NameNode,將整個(gè)流程再次重

復(fù)。

三、編程題

編寫程序完成HDFS文件系統(tǒng)根目錄下所有文件的列舉。

Configurationconf=newConfiguration。;

hdfs=FileSystem.get(newURI(HDFS_PATH),conf,"hadoop");

Stringpath=

FileStatusQHstStatus=hdfs.listStatus(newPath(path));

for(FileStatusfs:listStatus){

system.out.|println(fs.getPath())

);

習(xí)題

一、填空題

1.YARN提供的調(diào)度器策略有FIFOScheduler(FIFO調(diào)度器)、CapacityScheduler(容

量調(diào)度器)和FairScheduler(公平調(diào)度器).

2.YARN采用的體系架構(gòu)是主從結(jié)構(gòu),其中主節(jié)點(diǎn)是ResourceManager,從節(jié)點(diǎn)是

NodeManager。

3.ResourceManager的兩個(gè)重要組件是Scheduler和ApplicationsManager。

4在NodeManager中封裝內(nèi)存、CPU、磁盤、網(wǎng)絡(luò)等資源的是Container。

二、簡(jiǎn)答題

1.簡(jiǎn)述共享集群模式的優(yōu)點(diǎn)。

答:

(1)資源利用率高

(2)運(yùn)維成本低

(3)數(shù)據(jù)共享

2.簡(jiǎn)述ApplicationMaster的主要作用。

答:

(1)為運(yùn)行應(yīng)用向ResourceManager申請(qǐng)資源。

(2)在Job中對(duì)Task實(shí)現(xiàn)調(diào)度。

(3)與NodeManager通信以啟動(dòng)或者停止任務(wù)。

(4)監(jiān)控所有任務(wù)的運(yùn)行情況,并在任務(wù)失敗的情況下重新為任務(wù)申請(qǐng)資源以重啟任

務(wù)

3.簡(jiǎn)述YARN的工作流程。

答:

(1)用戶編寫客戶端應(yīng)用程序,向YARN中提交應(yīng)用程序,其中包括ApplicationMaster

程序、啟動(dòng)ApplicationMaster的命令、用戶程序等。

(2)ResourceManager接到客戶端應(yīng)用程序的請(qǐng)求,會(huì)為該應(yīng)用程序分配一個(gè)

Container,同時(shí)ResourceManager的ApplicationManager會(huì)與該容器所在的

NodeManager通信,要求它在這個(gè)Container中啟動(dòng)一個(gè)ApplicationMaster。

(3)ApplicationMaster被創(chuàng)建后首先向ResourceManager注冊(cè),這樣用戶可以直接通

過ResourceManager查看應(yīng)用程序的運(yùn)行狀態(tài),然后它將為各人任務(wù)申請(qǐng)資源,并監(jiān)

控它的運(yùn)行狀態(tài),直到運(yùn)行結(jié)束,即重復(fù)步驟4?步驟7。

(4)ApplicationMaster采用輪詢的方式,通過RPC協(xié)議向ResourceManager申請(qǐng)和

領(lǐng)取資源。

(5)一旦ApplicationMaster申請(qǐng)到資源,就會(huì)與該容器所在的NodeManager通信,

要求它啟動(dòng)任務(wù)。

習(xí)題

一、填空題

1.M叩Reduce執(zhí)行過程中,數(shù)據(jù)都是以皿、回1空的形式進(jìn)行傳遞的。

2.整個(gè)M叩Reduce作業(yè)的生命周期是由ApplicationMasler來的.

3.整個(gè)MapReduce作業(yè)的資源分配是由ResourceManager來管理的.

二、簡(jiǎn)答題

1.簡(jiǎn)述MapReduce的執(zhí)行過程。

答:在map階段,系統(tǒng)會(huì)將數(shù)據(jù)拆分成若干個(gè)“分片"(split),分片完成后,再將這些“分片”

數(shù)據(jù)以鍵-值方式傳遞給map進(jìn)行處理,map和reduce都以鍵-值形式作為輸入和輸出。作為imp

端的輸入,默認(rèn)情況下,鍵是字符的位移,值是當(dāng)前行的數(shù)據(jù);此鍵-值對(duì)會(huì)作為參數(shù)被陸續(xù)傳

遞給IMP端的處理程序,直到數(shù)據(jù)全部傳遞完成。m叩方法產(chǎn)生輸出時(shí),經(jīng)過分區(qū)和排序后將

麗入嘻

在reduce端的,reduce端會(huì)通過多個(gè)復(fù)制線程去"拉取"不同imp節(jié)點(diǎn)輸出的數(shù)據(jù)文件,并

對(duì)這些數(shù)據(jù)文件進(jìn)行排序和合并,合并之后的文件被傳入reduce方法中,reduce方法執(zhí)行后,數(shù)

據(jù)將被輸出到文件系統(tǒng),通常是HDFS。

2.簡(jiǎn)述shuffle過程。

答:(1)m叩端

當(dāng)map任務(wù)產(chǎn)生輸出時(shí),基于效率的考慮,輸出數(shù)據(jù)不會(huì)直接寫到磁盤上,而是先寫入一

個(gè)緩沖區(qū)中,此緩沖區(qū)默認(rèn)大小為IOOMB,當(dāng)寫入的數(shù)據(jù)達(dá)到緩沖區(qū)的閾值(默認(rèn)為80%)時(shí),

會(huì)將緩沖區(qū)中的數(shù)據(jù)溢寫(spill)到磁盤,生成一個(gè)文件,在寫入磁盤文件之前,會(huì)對(duì)這部分?jǐn)?shù)

據(jù)進(jìn)行分區(qū),然后對(duì)每個(gè)分區(qū)中的數(shù)據(jù)按鍵進(jìn)行排序,然后寫入磁盤中。隨著m叩任務(wù)的執(zhí)行,

可能會(huì)產(chǎn)生多個(gè)溢寫文件,這些文件在任務(wù)結(jié)束執(zhí)行前,會(huì)合并為一個(gè)已分區(qū)且每個(gè)分區(qū)都已排

序的完整的文件,并保存在本地的磁盤中。

(2)reduce端

reduce端并不會(huì)等待所有map任務(wù)結(jié)束再去獲取m叩蹣出0$??,reduce端的一個(gè)績(jī)呈會(huì)定

期詢問ApplicationMastcr,一旦有map任務(wù)結(jié)束,reduce端就開始復(fù)制麴民reduce會(huì)啟動(dòng)若干復(fù)制

蜴呈以并行M方式從各個(gè)map節(jié)點(diǎn)復(fù)制數(shù)據(jù)。reduce節(jié)點(diǎn)通常不會(huì)復(fù)制map節(jié)點(diǎn)整個(gè)的輸出文件,

而是只復(fù)制屬于自己的分區(qū)數(shù)據(jù),復(fù)制完成所有m叩的轆后,會(huì)將各部分轆再次進(jìn)行合并,合

并前會(huì)進(jìn)行必要的排序,以倒糕呢的完整性。

3.簡(jiǎn)述本地化的含義。

答:map任務(wù)有本地化的局限,意思是map任務(wù)一般情況下都會(huì)運(yùn)行在分片所在的節(jié)點(diǎn)上,

這樣的好處是可以不用跨節(jié)點(diǎn)傳輸數(shù)據(jù),從而大大提高了程序運(yùn)行效率。

4.簡(jiǎn)述數(shù)據(jù)分片過程。

答:在map階段,系統(tǒng)會(huì)將數(shù)據(jù)拆分成若干個(gè)"分片"(split),這里所說的“分片”只是邏輯上

的切分,并非真正物理上的切分,每個(gè)分片的大小默認(rèn)就是一個(gè)塊的大小。例如,假設(shè)初始設(shè)定

一個(gè)塊的大小為128MB,如果有兩個(gè)文件,一個(gè)50MB,一個(gè)I50MB,則一共會(huì)被劃分成3個(gè)

分片,50MB的劃分成一個(gè),150MB劃分成兩個(gè),分別是128MB和22MB。

5.簡(jiǎn)述YARN的MapReduce的資源分配過程。

答:當(dāng)MapReduce作業(yè)啟動(dòng)后,會(huì)通知YARN,并由YARN的ResourceManager在

NodeManager的管理下分配一個(gè)容器(Container),然后在這個(gè)容器中啟動(dòng)ApplicationMaster進(jìn)

程。MapReduce作業(yè)的ApplicationMaster是一個(gè)Java程序,它的主類是MRAppMastero

ApplicationMaster啟動(dòng)后,首先會(huì)做一定的初始工作,然后會(huì)分析M叩Reduce作業(yè)的規(guī)模,

如果規(guī)模足夠大,則再次向ResourceManager請(qǐng)求容器用于m叩和reduce任務(wù)的執(zhí)行。對(duì)于map

任務(wù),根據(jù)數(shù)據(jù)本地化的要求,會(huì)盡可能地將容器分配到數(shù)據(jù)所在節(jié)點(diǎn),而reduce任務(wù)則不會(huì)

考慮。默認(rèn)情況下,每個(gè)map和reduce任務(wù)都被分配了1024MB的內(nèi)存和一個(gè)虛擬CPU內(nèi)核,

容器啟動(dòng)后,會(huì)拉取任務(wù)所需的相關(guān)的配置信息、打包好的MapReduce的JAR文件以及來自分

布式緩存的文件到當(dāng)前節(jié)點(diǎn),然后開始運(yùn)行m叩或reduce任務(wù)。

6.簡(jiǎn)述InputFormat和OutputFormat的作用。

答:(1)InputFormat負(fù)責(zé)創(chuàng)建輸入分片并將它們分割成記錄

(2)OutputFormat主要用于描述輸出數(shù)據(jù)的格式,它能夠?qū)⒂脩籼峁┑?/p>

key/value對(duì)

寫入特定格式的文件中

習(xí)題

一、選擇題

1.Writable接口中進(jìn)行序列化寫操作的方法為(A\

A.writeB.readFieldsC.writeFieldsD.read

2.ScquenceFile.Writcr完成新記錄的添加的方法為(C\

A.writeB.newC.appendD.add

二、簡(jiǎn)答題

列舉Java.Iang.String和Text類型的區(qū)別。

答:(1)Text對(duì)象的charAt方法返回的是當(dāng)前位置字符對(duì)應(yīng)的Unicode編碼的位置,String

對(duì)象返回的是當(dāng)前位置對(duì)應(yīng)的字符(char類型\

三、編程題

實(shí)現(xiàn)自定義序列化類,要求該類可以實(shí)現(xiàn)以下數(shù)據(jù)的序列化。

編號(hào)姓名年齡

StringStringByte

publicclassPeopleimplementsWritable{

privateStringid;

privateStringname;

privatebyteage;

?Override

publicvoidreadFields(Datalnputin)throwsIOException{

id=in.readUTF();

name=in.readUTF();

age=in.readByte();

}

?Override

publicvoidwrite(DataOutputout)throwslOException{

out.write(id.getBytes());

out.write(name.getBytesQ);

out.write(age);

)

習(xí)題

一、選擇題

1.Had(x)p3.x是基于(C)版本的JDK進(jìn)行編譯的。

A.JDK1.6B.JDK1.7C.JDK1.8D.JDK1.9

2.Hadoop2.x版本中HDFS默認(rèn)的NameNoderpc監(jiān)聽端口號(hào)是(B),Hadoop3.x中

將此默認(rèn)端口號(hào)改為了(B\

A.90009820B.80209820C.500708020D.5001050070

3.Hadoop的NameNoderpc監(jiān)聽端口可以在配置文件(C)中進(jìn)行配置。

A.mapred-site.xmlB.hdfs-site.xml

C.core-site.xmlD.hadoop-env.sh

4.以下不屬于Hadoop3.x新特性的是(D\

A.引入了EC技術(shù)B.JDK進(jìn)行了升級(jí)

C.實(shí)現(xiàn)了DataNode內(nèi)部負(fù)責(zé)均衡D.實(shí)現(xiàn)了HA集群

二、填空題

1.EC技術(shù)的全稱是ErasureCoding,是HadoopHDFS3.x版本以上新增的功能.

2.在較老版本的Hadoop集群中,NameNode>HDFS集群中的單點(diǎn)故障。每個(gè)集群只有一

個(gè)NameNode,并且如果該計(jì)算機(jī)或進(jìn)程不可用,則整個(gè)集群將不可用。

3.Hadoop2.x版本中HDFS默認(rèn)的NameNodeHTTPUI端口號(hào)是50070,Hadoop3.x版本

中將此默認(rèn)端口號(hào)改為了9870.

三、簡(jiǎn)答題

1.Hadoop3.x相比Hadoop2.x都有哪些新的特性?

答:(1)Hadoop2.x版本是基于JDK1.7進(jìn)行編譯的,而Hadoop3.x所有的HadoopJARs都是

針對(duì)JDK1.8編譯的。

(2)HDFS3.x很多改進(jìn)采用了EC技術(shù),且支持?jǐn)?shù)據(jù)的擦除編碼

(3)Hadoop3.x弓|入了YARNTimelineService(YARN時(shí)間軸服務(wù))v.2,創(chuàng)建v.2是為了應(yīng)

對(duì)v.l的兩個(gè)主要挑戰(zhàn)提高時(shí)間軸服務(wù)的可伸縮性和可靠性、通過引入流和聚合來增強(qiáng)可用性。

(4)在Hadoop3中允許用戶運(yùn)行多個(gè)備用的NameNode,

(5)DataNode內(nèi)部負(fù)載均衡

(6)端口號(hào)的改變

(7)Shell腳本重寫

(8)GPU和FPGA封寺

2.Hadoop3.x支持的NameNodc和傳統(tǒng)的HadoopHA架構(gòu)相比有什么優(yōu)勢(shì)?

答:在Hadoop3中允許用戶運(yùn)行多個(gè)備用的NameNode

3.Hadoop3.x的DataNode內(nèi)部負(fù)載均衡功能如何使用?

答:Hadoop3.x通過新的內(nèi)部DataNode平衡功能來處理內(nèi)部負(fù)載均衡,具體是通過

HDFSDiskBalancerCLI(HDFS磁盤平衡命令行接口)來實(shí)現(xiàn)的,實(shí)現(xiàn)DiskBalancer功能,首

先需要?jiǎng)?chuàng)建操作計(jì)劃,然后在DaiaNode上執(zhí)行該計(jì)劃。操作計(jì)劃通常是由一組語(yǔ)句組成的,計(jì)

劃中描述兩個(gè)磁盤之間應(yīng)移動(dòng)多少數(shù)據(jù)。使用磁盤平衡功能前應(yīng)該注意在默認(rèn)情況下,集群上未

啟用磁盤平衡器。要啟用磁盤平衡功能,必須在hdfs-site.xml配置文件中將

dfs.disk.balancer.enabled設(shè)置為true.

習(xí)題

一、填空題

1.ClouderaManager的主要組彳牛M,括ServerAgentManagemeniDatabase.

ClouderaRepository和Clients。

2.ClouderaManager提供的管理功能有批量自動(dòng)化部署節(jié)點(diǎn)、可視化的參數(shù)配置、智能

參數(shù)驗(yàn)證以及優(yōu)化和權(quán)限管理。

3.ClouderaManager提供的監(jiān)控功能有服務(wù)監(jiān)控、主機(jī)監(jiān)控、行為雌、事件活動(dòng)、報(bào)警

和日志和報(bào)告.

二、簡(jiǎn)答題

1.簡(jiǎn)述ClouderaManager的主要特點(diǎn)。

答:

(1)大數(shù)據(jù)處理相關(guān)服務(wù)安裝過程自動(dòng)化,部署時(shí)間從幾周縮短到幾分鐘。

(2)提供集群范圍內(nèi)的主機(jī)和正在運(yùn)行的服務(wù)的實(shí)時(shí)視圖。

(3)提供了單個(gè)中央控制臺(tái),方便在整個(gè)集群中進(jìn)行配置更改。

(4)整合了各種報(bào)告和診斷工具,可以優(yōu)化集群的性能和利用率,提高服務(wù)質(zhì)量,提高合規(guī)

性并降低管理成本。

2.分別簡(jiǎn)述service和serviceinstance的概念。

答:Service(服務(wù))是ClouderaManager中的托管功能類別,有時(shí)也被稱為服務(wù)類型,

這些服務(wù)運(yùn)行在集群中,可能是分布式的,也可能是單節(jié)點(diǎn)的,如MapReduce、HDFS、YARN

和Spark,

ServiceInstance(服務(wù)實(shí)例)即在ClouderaManager集群中運(yùn)行的服務(wù)的實(shí)例。

3.分別簡(jiǎn)述role、roleinstance和rolegroup的概念。

Role(角色)是指service中的一類功能,有時(shí)也被稱為角色類型。例如,HDFS服務(wù)中的角

色有NameNode、SecondaryNameNodeKDataNode和Balancer,

RoleInstance(角色實(shí)例)是指ClouderaManager中,在主機(jī)上運(yùn)行的角色的實(shí)例,它通常

會(huì)映射到UNIX進(jìn)程中,我們可以通過jps命令對(duì)其進(jìn)行查看。

在ClouderaManager中,RoleGroup(角色組)是指角色實(shí)例的一組配置屬性,這是一種將

配置分配給一組角色實(shí)例的機(jī)制。

三、上機(jī)題

1?根據(jù)9.4節(jié),完成ClodueraManager和CDH的離線部署,搭建CDH集群環(huán)境。

答:見章節(jié)內(nèi)容

2.在ClouderaManager管理菜單中啟動(dòng)HDFSHA和YARNHA。

答:見章節(jié)內(nèi)容

習(xí)題

一、填空題

1.AvroSchema的基本類型中表示空值的是null,表示8位無(wú)符號(hào)字節(jié)序列的是

bytesa

2.AvroSchema的復(fù)雜類型中l(wèi)ecord類型定義record名稱的屬性是name,限定名稱的屬

namespace.

3.定義AvroSchema類型的屬性是type,定義JSON數(shù)組的屬性是fields.

二、簡(jiǎn)答題

1.簡(jiǎn)述ApacheAvro的主要功能。

答:(1)豐富的數(shù)據(jù)結(jié)構(gòu)。

(2)一種緊湊、快速的二進(jìn)制數(shù)據(jù)格式。

(3)容器文件,用于存儲(chǔ)持久性數(shù)據(jù)。

(4)遠(yuǎn)程過程調(diào)用。

(5)與動(dòng)態(tài)語(yǔ)言的簡(jiǎn)單集成。讀取或?qū)懭霐?shù)據(jù)文件,使用或?qū)崿F(xiàn)RPC協(xié)議均不需

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論