bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

hadoop基礎面試題有哪些

這篇文章主要為大家展示了“hadoop基礎面試題有哪些”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“hadoop基礎面試題有哪些”這篇文章吧。

成都創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都做網(wǎng)站、成都網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的吳川網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!

1 描述下mr整個過程,中間用到哪些類
Map起始階段:

使用 job.setInputFormatClass() 定義的 InputFormat ,將輸入的數(shù)據(jù)集分割成小數(shù)據(jù)塊 split,同時 InputFormat 提供一個 RecordReader的實現(xiàn)。一般使用的是 TextInputFormat,它提供的 RecordReader 會將文本的行號作為 Key,這一行的文本作為 Value。這就是自定義 Mapper 的輸入是 < LongWritable,Text> 的原因。 然后調(diào)用自定義 Mapper 的map方法,將一個個< LongWritable,Text>鍵值對輸入給 Mapper 的 map方法。

Map階段
shuffle階段:

將map的輸出作為reduce的輸入的過程就是shuffle了,這個是mapreduce優(yōu)化的重點地方。Shuffle一開始就是map階段做輸出操作,一般mapreduce計算的都是海量數(shù)據(jù),map輸出時候不可能把所有文件都放到內(nèi)存操作,因此map寫入磁盤的過程十分的復雜,更何況map輸出時候要對結(jié)果進行排序,內(nèi)存開銷是很大的,map在做輸出時候會在內(nèi)存里開啟一個環(huán)形內(nèi)存緩沖區(qū),這個緩沖區(qū)專門用來輸出的,默認大小是100mb,并且在配置文件里為這個緩沖區(qū)設定了一個閥值,默認是0.80(這個大小和閥值都是可以在配置文件里進行配置的),同時map還會為輸出操作啟動一個守護線程,如果緩沖區(qū)的內(nèi)存達到了閥值的80%時候,這個守護線程就會把內(nèi)容寫到磁盤上,這個過程叫spill,另外的20%內(nèi)存可以繼續(xù)寫入要寫進磁盤的數(shù)據(jù),寫入磁盤和寫入內(nèi)存操作是互不干擾的,如果緩存區(qū)被撐滿了,那么map就會阻塞寫入內(nèi)存的操作,讓寫入磁盤操作完成后再繼續(xù)執(zhí)行寫入內(nèi)存操作。在寫磁盤之前,線程首先根據(jù)數(shù)據(jù)最終要傳的reducer把數(shù)據(jù)劃分成相應的分區(qū)(job.setPartitionerClass())。在每個分區(qū)中,后臺進程按鍵進行內(nèi)排序( job.setSortComparatorClass(),如果沒設置回默認使用 Key 實現(xiàn)的 compareTo() 方法),如果我們定義了combiner函數(shù)(job.setCombinerClass()),那么排他就在排序后的輸出上運行。每次spill操作也就是寫入磁盤操作時候就會寫一個溢出文件,也就是說在做map輸出有幾次spill就會產(chǎn)生多少個溢出文件,等map輸出全部做完后,map還會調(diào)用combine合并這些輸出文件。

到了reduce階段就是合并map輸出文件了,Partitioner會找到對應的map輸出文件,然后進行復制操作,復制操作時reduce會開啟幾個復制線程,這些線程默認個數(shù)是5個,程序員也可以在配置文件更改復制線程的個數(shù),這個復制過程和map寫入磁盤過程類似,也有閥值和內(nèi)存大小,閥值一樣可以在配置文件里配置,而內(nèi)存大小是直接使用reduce的tasktracker的內(nèi)存大小,復制完所有map輸出后,reduce還會進行排序操作和合并文件操作,這些操作完了就會進行reduce計算了。

reduce過程中用到的類

在 Reduce 階段,reduce() 方法接受所有映射到這個 Reduce 的 map 輸出后,也是會調(diào)用 job.setSortComparatorClass()方法設置的 Key 比較函數(shù)類,對所有數(shù)據(jù)進行排序。然后開始構(gòu)造一個 Key 對應的 Value 迭代器。 這時就要用到分組,使用 job.setGroupingComparatorClass()方法設置分組函數(shù)類。只要這個比較器比較的兩個 Key 相同,它們就屬于同一組,它們的 Value 放在一個 Value 迭代器,而這個迭代器的 Key 使用屬于同一個組的所有Key的第一個Key。最后就是進入 Reducer 的 reduce() 方法,reduce() 方法的輸入是所有的 Key 和它的 Value 迭代器,同樣注意輸入與輸出的類型必須與自定義的 Reducer 中聲明的一致。

數(shù)據(jù)經(jīng)過reduce處理后,通過OutPutFormat實現(xiàn)類輸出

2 hadoop各配置文件分別有什么用

3 hive添加一列語句怎么寫

alter table test_table add columns (d string);

4 sqoop將關系數(shù)據(jù)庫數(shù)據(jù)導入hive命令上需要加一個什么配置

--hive-import

5 項目中文件怎么傳到hdfs

flume,kettle,shell腳本

7 hive某個分區(qū)文件損壞,對其他分區(qū)是否有影響

8 怎么理解hive

hive可以理解為基于hadoop的數(shù)據(jù)倉庫,他負責管理hdfs,并提供解釋器將hive sql翻譯成mr程序進行查詢(個人理解,可自由發(fā)揮)

9 怎么理解sqoop

關系型數(shù)據(jù)庫與hdfs之間互相倒數(shù)的工具,底層用mr實現(xiàn)

以上是“hadoop基礎面試題有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)站標題:hadoop基礎面試題有哪些
本文鏈接:http://vcdvsql.cn/article26/gjsccg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊App開發(fā)網(wǎng)站營銷自適應網(wǎng)站網(wǎng)站排名用戶體驗

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設