




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第1章1.大數(shù)據(jù)的概念并沒有確切的定義,合理即可,以下給出幾個常見的定義:Garter公司定義“大數(shù)據(jù)”是大容量(Volume)、高流速(Velocity)、多樣化(Variety)的信息資產(chǎn),它需要新的數(shù)據(jù)處理形式來增強決策、提升洞察力、優(yōu)化處理過程。麥肯錫全球研究所給出的定義“大數(shù)據(jù)”是一種規(guī)模大到在獲取、存儲、管理、分析方面遠遠超出了傳統(tǒng)數(shù)據(jù)庫軟件工具能力范圍的數(shù)據(jù)集合,具有海量的數(shù)據(jù)規(guī)模、快速的數(shù)據(jù)流轉(zhuǎn)、多樣的數(shù)據(jù)類型和價值密度低四大特征。美國國家標準技術(shù)研究院給出的定義:大數(shù)據(jù)是數(shù)量大、獲取速度快或形態(tài)多樣的數(shù)據(jù),難以用傳統(tǒng)關(guān)系型數(shù)據(jù)分析方法進行有效分析,或者需要大規(guī)模的水平擴展才能高效處理。2.對于大數(shù)據(jù)的特征,學術(shù)界普遍認為是麥肯錫公司提出的4V特征,即海量化(Volume)、多樣化(Variety)、快速化(Velocity)、價值密度低(Value)。(1)海量化它主要表現(xiàn)在處理的數(shù)量級。隨著信息技術(shù)的發(fā)展,互聯(lián)網(wǎng)規(guī)模的不斷擴大,每個人的生活都被記錄在了大數(shù)據(jù)之中,由此數(shù)據(jù)本身也呈爆發(fā)性增長。其中大數(shù)據(jù)的計量單位也逐漸發(fā)展,現(xiàn)如今對大數(shù)據(jù)的計量已達到BB。數(shù)據(jù)的存儲量也正在急劇增長。、(2)多樣化通常所說的數(shù)據(jù)是一個整體性的概念,按照不同的劃分方式,數(shù)據(jù)可以劃分成多種類型,最常用和最基本的就是利用數(shù)據(jù)關(guān)系進行劃分,這種類型的多樣性也讓數(shù)據(jù)被分為結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)。(3)快速化快速化是大數(shù)據(jù)區(qū)分于傳統(tǒng)數(shù)據(jù)挖掘最顯著的特征。如物聯(lián)網(wǎng)每秒都在采集數(shù)據(jù),微博內(nèi)容隨時都在更新,處理速度達到每小時10TB或更高。(4)價值密度低傳統(tǒng)數(shù)據(jù)基本都是結(jié)構(gòu)化數(shù)據(jù),每個字段都是有用的,價值密度非常高。大數(shù)據(jù)時代,越來越多數(shù)據(jù)都是非結(jié)構(gòu)化數(shù)據(jù),比如網(wǎng)站訪問日志,里面大量內(nèi)容都是沒價值的。大數(shù)據(jù)本身存在較大的價值,但是由于數(shù)據(jù)量過大,其價值往往呈現(xiàn)稀疏性特點。3.大數(shù)據(jù)處理關(guān)鍵技術(shù)一般包括:大數(shù)據(jù)采集、大數(shù)據(jù)預處理、大數(shù)據(jù)存儲及管理、大數(shù)據(jù)分析及挖掘、大數(shù)據(jù)展現(xiàn)和應用。 數(shù)據(jù)采集是大數(shù)據(jù)分析過程中的最基本的環(huán)節(jié),是對數(shù)據(jù)進行ETL(ExtractTransformLoad)操作的過程,通過對數(shù)據(jù)進行提取、轉(zhuǎn)換、加載,最終挖掘數(shù)據(jù)的潛在價值。數(shù)據(jù)預處理就是對已接收的數(shù)據(jù)進行辨析、抽取、清洗等操作。通過預處理可以使殘缺的數(shù)據(jù)完整,并將錯誤的數(shù)據(jù)糾正、多余的數(shù)據(jù)去除,進而將所需要的數(shù)據(jù)挑選出來,并進行數(shù)據(jù)集成。大數(shù)據(jù)存儲與管理要用存儲器把采集到的數(shù)據(jù)存儲起來,建立相應的數(shù)據(jù)庫,并進行管理和調(diào)用。重點解決復雜結(jié)構(gòu)化、非結(jié)構(gòu)化大數(shù)據(jù)管理與處理技術(shù)。數(shù)據(jù)分析過程需要從復雜數(shù)據(jù)中找出規(guī)律從而獲得有價值的知識,這正是大數(shù)據(jù)的價值體現(xiàn)。數(shù)據(jù)挖掘就是從大量的、不完全的、有噪聲的、模糊的、隨機的實際應用數(shù)據(jù)中,提取隱含在其中的、人們事先不知道的、但又是潛在有用的信息和知識的過程。大數(shù)據(jù)展現(xiàn)與應用技術(shù)是指大數(shù)據(jù)技術(shù)能等將隱藏于海量數(shù)據(jù)中的信息和知識挖掘出來,為人類的社會經(jīng)濟動提供依據(jù),從而提高各個領(lǐng)域的運行效率,大大提高整個社會經(jīng)濟的集約化程度。4.CDO(ChiefDataOfficer)首席數(shù)據(jù)官是隨著企業(yè)不斷發(fā)展而誕生的一個新型的管理者。其主要是負責根據(jù)企業(yè)的業(yè)務需求、選擇數(shù)據(jù)庫以及數(shù)據(jù)抽取、轉(zhuǎn)換和分析等工具,進行相關(guān)的數(shù)據(jù)挖掘、數(shù)據(jù)處理和分析,并且根據(jù)數(shù)據(jù)分析的結(jié)果戰(zhàn)略性地對企業(yè)未來的業(yè)務發(fā)展和運營提供相應的建議和意見。CDO必須具備五種能力或知識:統(tǒng)計學和數(shù)學的知識、洞悉網(wǎng)絡(luò)產(chǎn)業(yè)和發(fā)展趨勢的能力、IT設(shè)備和技術(shù)選型的能力、商業(yè)運營的能力、管理和溝通的能力。 數(shù)據(jù)科學家是運用統(tǒng)計分析、機器學習、分布式處理等技術(shù),從大量數(shù)據(jù)中提取出對業(yè)務有意義的信息,以易懂的形式傳達給決策者,并創(chuàng)造出新的數(shù)據(jù)運用服務的人才。數(shù)據(jù)科學家應該具有扎實的統(tǒng)計學基礎(chǔ),統(tǒng)計學是當前很多數(shù)據(jù)分析和數(shù)據(jù)挖掘算法的理論基礎(chǔ)。數(shù)據(jù)科學家應當能夠熟練使用統(tǒng)計工具,從有組織的數(shù)據(jù)集中提取有價值的信息。成熟的數(shù)據(jù)科學家應具備四個條件是:熟悉業(yè)務的細節(jié)、掌握數(shù)據(jù)分析工具的操作、對數(shù)據(jù)價值的敏感度和對數(shù)據(jù)提煉融合的能力。 大數(shù)據(jù)開發(fā)工程師要負責數(shù)據(jù)倉庫建設(shè)、ETL開發(fā)、數(shù)據(jù)分析、數(shù)據(jù)指標統(tǒng)計、大數(shù)據(jù)實時計算平臺及業(yè)務開發(fā)、平臺建設(shè)及維護等工作內(nèi)容。熟練掌握數(shù)據(jù)倉庫、Hadoop生態(tài)體系、計算及二次開發(fā)、大數(shù)據(jù)平臺工具的開發(fā)。大數(shù)據(jù)開發(fā)工程師需要良好的數(shù)學背景,有很強的計算機編程能力,具有特定應用領(lǐng)域或行業(yè)的專業(yè)知識,必須深入理解大數(shù)據(jù)系統(tǒng)的架構(gòu),各個組件的基本原理、實現(xiàn)機制,甚至其中涉及的算法等。大數(shù)據(jù)運維工程師負責和參與公司大數(shù)據(jù)基礎(chǔ)架構(gòu)平臺規(guī)劃,運維,監(jiān)控和優(yōu)化工作,保障數(shù)據(jù)平臺服務的穩(wěn)定性和可用性;及時反饋技術(shù)處理過程中的異常情況,及時向上級反饋告警,同時主動協(xié)調(diào)資源推動問題解決;研究大數(shù)據(jù)前沿技術(shù),改進現(xiàn)有系統(tǒng)的服務和運維架構(gòu),提升系統(tǒng)可靠性和可運維性;負責和參與自動化運維系統(tǒng)及平臺的建設(shè);負責優(yōu)化部門運維流程提升運維效率。大數(shù)據(jù)系統(tǒng)運維工程師應熟悉Java、Python、Shell等語言;Hadoop工作原理,對HDFS、MapReduce運行過程要有深入理解,具備MapReduce開發(fā)經(jīng)驗,熟悉數(shù)據(jù)倉庫體系架構(gòu),熟悉數(shù)據(jù)建模;熟悉至少一種RDBMS,如MySQL、Oracle、SQLServer,熟練使用SOL語言;熟悉大數(shù)據(jù)生態(tài)圈及其他技術(shù),如HBase、Storm、Spark、Impala、Kafka、Sqoop等技術(shù)的細節(jié)。第2章一、選擇題1.D2.A3.C4.A5.D6.A7.D8.D二、簡答題1.Linux文件類型。2.參考vi編輯器。3.歸檔與壓縮。4.tar命令能夠?qū)σ粋€文件或者目錄內(nèi)容進行打包壓縮后備份。命令格式如下:#tar[-選項][要打包的文件名或者目錄名][要解壓或解包的文件或者目錄名]例如,現(xiàn)在想將/etc/passwd文件和/etc/shadow文件打包后壓縮成user.tar.gz文件,可以執(zhí)行如下操做:#tarczvf/home/user.tar.gz/etc/passwd/etc/shadow5.catfile1file2>>file3使用上述命令將file1和file2的文檔內(nèi)容合并添加到file3文檔中。第3章一、填空題1.MapReduce、HDFS、YARN2.獨立模式、偽分布式模式、完全分布式模式3.hdfsnamenode-format4.9870二、簡答題1.虛擬機網(wǎng)絡(luò)支持橋接、NAT和僅主機三種模式。選擇橋接模式的話虛擬機和宿主機在網(wǎng)絡(luò)上就是平級的關(guān)系,相當于連接在同一交換機上。NAT模式的虛擬機通過主機(物理機)訪問互聯(lián)網(wǎng),交換數(shù)據(jù)。僅主機模式下,虛擬機與宿主機直連,主機系統(tǒng)不為虛擬機提供任何路由服務,虛擬機只能與主機通信,不能連接到實際網(wǎng)絡(luò),即不能訪問互聯(lián)網(wǎng)。選擇NAT模式的優(yōu)點是不會與其他物理主機的IP沖突,在沒有路由器的環(huán)境下可以通過SSHNAT連接虛擬機進行學習,不會影響網(wǎng)絡(luò)環(huán)境下的虛擬機IP。第4章一、填空題1.NameNode、DataNode2.NameNode、DataNode3.FsImage、EditLog4.128二、簡答題1.HDFS文件寫入原理:1)Client通過遠程過程調(diào)用(RPC)發(fā)起文件上傳請求,與NameNode建立通信。2)NameNode檢查元數(shù)據(jù)文件的系統(tǒng)目錄樹。3)若系統(tǒng)目錄樹的夫目錄下不存在該文件的相關(guān)信息,返回客戶端可以上傳文件。4)客戶端請求上傳第一個Block數(shù)據(jù)塊以及數(shù)據(jù)塊的副本數(shù)量。5)NameNod檢查元數(shù)據(jù)文件中DataNode信息池,找到可用的DataNode節(jié)點。6)將可用數(shù)據(jù)節(jié)點的IP地址返回給Client。7)Cient請求第一臺DataNode進行數(shù)據(jù)傳輸(本質(zhì)為一個RPC調(diào)用,建立管道Pipeline),第一臺DataNode收到請求后會調(diào)用第二臺DataNode,第二臺DataNode再調(diào)用第三臺DataNode。8)DataNode之間建立Pipeline后,逐個返回建立完畢的信息。9)Client與DataNode建立數(shù)據(jù)傳輸流,開始發(fā)送數(shù)據(jù)包Packet。10)Client向第一臺DataNode以Packet(默認64KB)形式上傳第一個Block數(shù)據(jù)塊。當?shù)谝慌_DataNode收到該Packet之后,會傳遞給第二臺DataNode,第二臺DataNode再傳遞給第三臺DataNode。第一臺DataNode每傳送一個Packet都會放入一個應答隊列等待應答。11)數(shù)據(jù)被分割成一個個Packet數(shù)據(jù)包再Pipeline上依次傳輸,而在Pipeline反方向上,將逐個發(fā)送Ack確認,最終由Pipeline中第一臺DataNode將Pipeline的Ack信息發(fā)送給Client。12)DataNode返回給客戶端,第一個Block傳輸完成。Client會再次請求NameNode上傳后續(xù)Block。重復以上步驟,直到所有Block上傳完成。2.參考4.2.2HDFS文件讀取原理:1)Client向NameNode發(fā)起RPC請求,獲取請求文件Block的所在位置。2)NameNode檢測元數(shù)據(jù)文件,視情況返回部分Block或全部Block的信息,對于每個Block,NameNode都會返回該Block副本的DataNode地址。3)客戶端會選取排序靠前的DataNode來一次讀取Block,每一個Block都會進行完整性校驗,若文件不完整,則客戶端繼續(xù)向NameNode獲取下一批的Block列表,知道驗證讀取出來的文件是完整的,則Block讀取完畢。4)Client將所有Block合并成一個完整的文件。第5章一、選擇題1.A2.B3.A4.B5.D6.A二、判斷題1.√2.√3.×4.√5.√三、簡答題1.Hadoop是一種分布式系統(tǒng)的平臺,通過它可以很輕松的搭建一個高效、高質(zhì)量的分布系統(tǒng),而且它還有許多其它的相關(guān)子項目,也就是對它的功能的極大擴充,包括Zookeeper、Hive、Hbase等。MapReduce是Hadoop的核心組件之一,Hadoop要分布式包括兩部分,一部分是分布式文件系統(tǒng)HDFS,一部分是分布式計算框架,就是MapReduce,也就是說,可以通過MapReduce很容易在Hadoop平臺上進行分布式的計算編程。2.Map函數(shù)的輸入是來自于分布式文件系統(tǒng)的文件塊,這些文件塊的格式是任意的,可以是文檔,也可以是二進制格式。文件塊是一系列元素的集合,這些元素是任意類型的,同一個元素不能跨文件塊存儲。Map函數(shù)將輸入的元素轉(zhuǎn)換成<key,value形式的鍵值對,鍵和值的類型也是任意的,其中,鍵不同于一般的標志屬性,即鍵沒有唯一性,不能作為輸出的身份標識,即使是同一輸入元素,也可通過一個Map任務生成具有相同鍵的多個<key,value>。Reduce函數(shù)的任務就是將輸入的一系列具有相同鍵的鍵值對以某種方式組合起來,輸出處理后的鍵值對,輸出結(jié)果會合并成一個文件。用戶可以指定Reduce任務的個數(shù)(如n個),并通知實現(xiàn)系統(tǒng),然后主控進程通常會選擇一個Hash函數(shù),Map任務輸出的每個鍵都會經(jīng)過Hash函數(shù)計算,并根據(jù)哈希結(jié)果將該鍵值對輸入相應的Reduce任務來處理。對于處理鍵為k的Reduce任務的輸入形式為<k,<v1,v2.……vn>>,輸出為<k,v>。3.Shuffle過程主要包括Map端和Reduce端的Shuffle過程:1)Map端的Shuffle過程在Map端,經(jīng)過map任務處理后的數(shù)據(jù)(一系列<k,v>鍵值對),首先進入緩存,當緩存的數(shù)據(jù)到達一定容量(緩存空間的溢寫比)的時候,就會啟動Map端的溢寫過程,把map任務的輸出結(jié)果溢寫到磁盤里。在溢寫到磁盤之前,會經(jīng)歷Map端的Shuffle處理階段:分區(qū)、排序、合并,在溢寫到磁盤之后,多個溢寫文件會經(jīng)歷歸并過程。值得一提的是,Mapreduce的輸入和輸出都是保存到分布式文件系統(tǒng)中的,而中間結(jié)果是保存到本地磁盤中的(而這一點也成為了Mapreduce速度上的雞肋),所以Shuffle過程會涉及大量的本地磁盤操作。①分區(qū)數(shù)據(jù)緩存中每個經(jīng)由map任務處理后的輸出鍵值對<k,v>中的key被哈希函數(shù)哈希后再用reduce任務的數(shù)量進行取模,這樣就把一系列<k,y>鍵值對分成多個區(qū)(分區(qū)數(shù)目對應reduce任務數(shù)量),每個區(qū)的數(shù)據(jù)交給對應的reduce(一個溢寫文件的一個區(qū)對應一個reduce任務)去處理,實現(xiàn)并行計算。②排序數(shù)據(jù)經(jīng)過分區(qū)后的數(shù)據(jù),對于每個分區(qū)的所有鍵值對,會按照key進行排序。緩存數(shù)據(jù)經(jīng)過分區(qū)和排序后,就會被溢寫到磁盤,每一次溢寫都會被生成一個溢寫文件,并清空緩存中相應的數(shù)據(jù)。③歸并文件每一次溢寫都會被生成一個溢寫文件,這樣隨著map任務的不斷執(zhí)行,溢寫的文件會在磁盤內(nèi)越堆越多,由此,在map任務完成后,會對磁盤中的溢寫文件執(zhí)行文件歸并,把多個溢寫文件歸并成一個大的溢寫文件。2)Reduce端的Shuffle過程①領(lǐng)取數(shù)據(jù)當所有的map任務都完成之后,Reduce端會收到通知去Map端上把屬于自己處理的分區(qū)數(shù)據(jù)領(lǐng)取回來,由于存在多個Map端,自然Reduce端會分出多個線程去不同的Map端上領(lǐng)取數(shù)據(jù)。②歸并數(shù)據(jù)和文件當所有數(shù)據(jù)領(lǐng)取回來之后,會先放到緩存里,當緩存的數(shù)據(jù)滿了之后,再溢寫到磁盤上,在溢寫到磁盤之前也會對數(shù)據(jù)進行一遍歸并操作,即同樣key的數(shù)據(jù)會被歸并生成一個溢寫文件,這樣隨著Reduce拉取回來的數(shù)據(jù)不斷增多,緩沖區(qū)滿了一遍又一遍,自然會生成多個溢寫文件。當Map端的數(shù)據(jù)全部被領(lǐng)回來的時候,磁盤中的溢寫文件也會被歸并成大的溢寫文件。把磁盤上的多個溢寫文件歸并成大的溢寫文件,可能需要執(zhí)行多輪歸并,每輪歸并操作可以歸并的文件數(shù)量是由參數(shù)io.sort.factor的值控制的(默認是10),假設(shè)磁盤產(chǎn)生了50個溢寫文件,每輪可以歸并10個溢寫文件,則需要經(jīng)過5輪歸并,生成5個溢寫文件。磁盤中經(jīng)過多輪歸并生成的若干個文件不會被繼續(xù)歸并成一個大文件,而是在內(nèi)存中進行歸并,歸并完畢后輸入給reduce任務,這樣可以減少磁盤讀寫開銷。4.答案如下圖所示:
第6章一、選擇題1.A2.B3.D4.D5.AC6.AB7.ABCD8.ABCD二、判斷題1.√2.×3.√4.×5.√6.×7.√8.√三、簡答題1.ZooKeeper是一個經(jīng)典的分布式數(shù)據(jù)一致性解決方案,致力于為分布式應用提供一個高性能、高可用,且具有嚴格順序訪問控制能力的分布式協(xié)調(diào)服務。分布式應用程序可以基于ZooKeeper實現(xiàn)數(shù)據(jù)發(fā)布與訂閱、負載均衡、命名服務、分布式協(xié)調(diào)與通知、集群管理、Leader選舉、分布式鎖、分布式隊列等功能。2.①leader:Leader能為客戶端提供讀和寫服務,Leader服務器是整個集群工作機制的核心;事務請求的唯一調(diào)度者和處理者,保證集群事務處理的順序性。②follower:擁有選舉權(quán),擁有投票權(quán),接受客戶端的訪問;如果客戶端執(zhí)行寫請求,只是將請求轉(zhuǎn)發(fā)給Leader。③Observer:和follower功能一致,但是不參與leader選舉;只可以為客戶端提供數(shù)據(jù)的查詢和訪問;如果客戶端執(zhí)行寫請求,只是將請求轉(zhuǎn)發(fā)給Leader。3.version:當前ZNode版本cversion:當前ZNode子節(jié)點版本aversion:當前ZNode的ACL版本4.①PERSISTENT-持久節(jié)點除非手動刪除,否則節(jié)點一直存在于ZooKeeper上。②EPHEMERAL-臨時節(jié)點臨時節(jié)點的生命周期與客戶端會話綁定,一旦客戶端會話失效(客戶端與ZooKeeper連接斷開不一定會話失效),那么這個客戶端創(chuàng)建的所有臨時節(jié)點都會被移除。③PERSISTENT_SEQUENTIAL-持久順序節(jié)點基本特性同持久節(jié)點,只是增加了順序?qū)傩裕?jié)點名后邊會追加一個由父節(jié)點維護的自增整型數(shù)字。④EPHEMERAL_SEQUENTIAL-臨時順序節(jié)點基本特性同臨時節(jié)點,增加了順序?qū)傩?,?jié)點名后邊會追加一個由父節(jié)點維護的自增整型數(shù)字。5.ZooKeeper采用了遞增的事務Id來標識,所有的proposal(提議)都在被提出的時候加上了zxid,zxid實際上是一個64位的數(shù)字,高32位是epoch(時期;紀元;世;新時代)用來標識leader是否發(fā)生改變,如果有新的leader產(chǎn)生出來,epoch會自增,低32位用來遞增計數(shù)。當新產(chǎn)生proposal的時候,會依據(jù)數(shù)據(jù)庫的兩階段過程,首先會向其他的server發(fā)出事務執(zhí)行請求,如果超過半數(shù)的機器都能執(zhí)行并且能夠成功,那么就會開始執(zhí)行。6.不是。一個watch事件是一個一次性的觸發(fā)器,當被設(shè)置了watch的數(shù)據(jù)發(fā)生了改變的時候,則服務器將這個改變發(fā)送給設(shè)置了watch的客戶端,以便通知它們。例如:如果服務端變動頻繁,而監(jiān)聽的客戶端很多情況下,每次變動都要通知到所有的客戶端,給網(wǎng)絡(luò)和服務器造成很大壓力。一般是客戶端執(zhí)行g(shù)etData(“/節(jié)點A”,true),如果節(jié)點A發(fā)生了變更或刪除,客戶端會得到它的watch事件,但是在之后節(jié)點A又發(fā)生了變更,而客戶端又沒有設(shè)置watch事件,就不再給客戶端發(fā)送。在實際應用中,很多情況下,我們的客戶端不需要知道服務端的每一次變動,我只要最新的數(shù)據(jù)即可。7.ZooKeeper本身也是集群,推薦配置不少于3個服務器。ZooKeeper自身也要保證當一個節(jié)點宕機時,其他節(jié)點會繼續(xù)提供服務。如果是一個Follower宕機,還有2臺服務器提供訪問,因為ZooKeeper上的數(shù)據(jù)是有多個副本的,數(shù)據(jù)并不會丟失;如果是一個Leader宕機,ZooKeeper會選舉出新的Leader。ZK集群的機制是只要超過半數(shù)的節(jié)點正常,集群就能正常提供服務。只有在ZK節(jié)點掛得太多,只剩一半或不到一半節(jié)點能工作,集群才失效。所以3個節(jié)點的cluster可以掛掉1個節(jié)點(leader可以得到2票>1.5)2個節(jié)點的cluster就不能掛掉任何1個節(jié)點了(leader可以得到1票<=1)。8.ZooKeeper是一個典型的發(fā)布/訂閱模式的分布式數(shù)據(jù)管理與協(xié)調(diào)框架,開發(fā)人員可以使用它來進行分布式數(shù)據(jù)的發(fā)布和訂閱。通過對ZooKeeper中豐富的數(shù)據(jù)節(jié)點進行交叉使用,配合watcher事件通知機制,可以非常方便的構(gòu)建一系列分布式應用中年都會涉及的核心功能,如數(shù)據(jù)發(fā)布/訂閱、負載均衡、命名服務、分布式協(xié)調(diào)/通知、集群管理、Master選舉、分布式鎖、分布式隊列。第7章一、選擇題1.D2.DE3.ABC二、判斷題1.√2.√3.×4.√三、簡答題1.YARN的基本組成ResourceManager:一個集群資源調(diào)度的管理者。NodeManager:一個節(jié)點資源調(diào)度的管理者(集群各個節(jié)點資源的工作者)。ApplicationMaster:一個計算任務的管理者。Container:容器(cpu和內(nèi)存)。2.基本原理:按照先后順序決定資源的使用,資源優(yōu)先滿足最先來的job。第一個job優(yōu)先獲取所有可用的資源,接下來第二個job再獲取剩余資源。以此類推,如果第一個job沒有占用所有的資源,那么第二個job還可以繼續(xù)獲取剩余資源,這樣多個job可以并行運行,如果第一個job很大,占用所有資源,則第二job就需要等待,等到第一job釋放所有資源。3.YARN的三種調(diào)度方式FIFOScheduler:先進先出器(先來后到的順序)。CapacityScheduler:容量調(diào)度器。FairScheduler:公平調(diào)度器。第8章1.回顧HDFS,說明HDFS和HBase的關(guān)系。1)HBase管理的文件多存儲在HDFS上;2)二者均具有良好的擴展性和容錯性;2.說明HDFS和HBase的區(qū)別。1)HDFS是一個分布式文件系統(tǒng),適合大量數(shù)據(jù)的批量處理,但不支持隨機查找和數(shù)據(jù)更新,不適合增量數(shù)據(jù)處理;2)HBase是建立在HDFS之上的數(shù)據(jù)庫,支持數(shù)據(jù)隨機查詢和讀寫,延遲低。第9章1.未被external修飾的是內(nèi)部表,被external修飾的為外部表。內(nèi)部表數(shù)據(jù)由Hive自身管理,外部表數(shù)據(jù)由HDFS管理。內(nèi)部表數(shù)據(jù)存儲的位置是hive.metastore.warehouse.dir(默認:/user/hive/warehouse),外部表數(shù)據(jù)的存儲位置由自己制定(如果沒有LOCATION,Hive將在HDFS上的/user/hive/warehouse文件夾下以外部表的表名創(chuàng)建一個文件夾,并將屬于這個表的數(shù)據(jù)存放在這里);刪除內(nèi)部表會直接刪除元數(shù)據(jù)(metadata)及存儲數(shù)據(jù);刪除外部表僅僅會刪除元數(shù)據(jù),HDFS上的文件并不會被刪除。2.Hive支持索引(3.0版本之前),但是Hive的索引與關(guān)系型數(shù)據(jù)庫中的索引并不相同。并且Hive索引提供的功能很有限,效率也并不高,因此Hive索引很少使用。索引適用的場景:適用于不更新的靜態(tài)字段。以免總是重建索引數(shù)據(jù)。每次建立、更新數(shù)據(jù)后,都要重建索引以構(gòu)建索引表。3.Orderby:會對輸入做全局排序,因此只有一個reducer(多個reducer無法保證全局有序)。只有一個reducer,會導致當輸入規(guī)模較大時,需要較長的計算時間。Sortby:不是
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 乙方提供合同范本
- 勞務派遣不給合同范本
- 養(yǎng)殖餌料合同范本
- 團購合同范本
- 臨工勞動合同范本
- 人才公寓采購合同范本
- 沙場租賃合同范本
- 健身房轉(zhuǎn)讓合同范本
- 供電維修合同范本
- 合伙人底薪合同范本
- 境外道路貨物運輸應急預案
- 管理學-北京師范大學中國大學mooc課后章節(jié)答案期末考試題庫2023年
- 2023年司法鑒定程序通則
- 網(wǎng)店運營PPT全套完整教學課件
- 1.跨境電子商務概述
- 居民自建房經(jīng)營業(yè)態(tài)不超過三種承諾書
- 管理百年知到章節(jié)答案智慧樹2023年南昌大學
- 萬邦胰島素注射液
- 汽車維修工高級考試試題含參考答案
- 食品銷售監(jiān)督管理工作培訓
- 《算法與數(shù)字生活》 教學設(shè)計
評論
0/150
提交評論