《Hadoop大數(shù)據(jù)原理與應用實驗教程》課件-實驗1準備:初識Hadoop_第1頁
《Hadoop大數(shù)據(jù)原理與應用實驗教程》課件-實驗1準備:初識Hadoop_第2頁
《Hadoop大數(shù)據(jù)原理與應用實驗教程》課件-實驗1準備:初識Hadoop_第3頁
《Hadoop大數(shù)據(jù)原理與應用實驗教程》課件-實驗1準備:初識Hadoop_第4頁
《Hadoop大數(shù)據(jù)原理與應用實驗教程》課件-實驗1準備:初識Hadoop_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

Hadoop大數(shù)據(jù)原理與應用實驗教程

實驗1準備:初識Hadoop實驗1知識地圖實驗1部署全分布模式Hadoop集群一、實驗目的1.熟練掌握Linux基本命令。2.掌握靜態(tài)IP地址的配置、主機名和域名映射的修改。3.掌握Linux環(huán)境下Java的安裝、環(huán)境變量的配置、Java基本命令的使用。4.理解為何需要配置SSH免密登錄,掌握Linux環(huán)境下SSH的安裝、免密登錄的配置。5.熟練掌握在Linux環(huán)境下如何部署全分布模式Hadoop集群。二、實驗環(huán)境本實驗所需的軟硬件環(huán)境包括PC、VMwareWorkstationPro、CentOS安裝包、OracleJDK安裝包、Hadoop安裝包。三、實驗內(nèi)容1.規(guī)劃部署。2.準備機器。3.準備軟件環(huán)境:配置靜態(tài)IP;修改主機名;編輯域名映射;安裝和配置Java;安裝和配置SSH免密登錄。4.獲取和安裝Hadoop。5.配置全分布模式Hadoop集群。6.關閉防火墻。7.格式化文件系統(tǒng)。8.啟動和驗證Hadoop。9.關閉Hadoop。實驗1準備:初識Hadoop1.1Hadoop概述1.2Hadoop版本1.3Hadoop生態(tài)系統(tǒng)1.4Hadoop體系架構1.5部署和運行Hadoop資料來源:1.1Hadoop概述Hadoop是Apache開源組織提供的一個分布式存儲和計算的軟件框架,它具有高可用、彈性可擴展的特點,非常適合處理海量數(shù)據(jù)。Hadoop由ApacheLucence創(chuàng)始人道格·卡丁創(chuàng)建,Lucence是一個應用廣泛的文本搜索系統(tǒng)庫。Hadoop起源于開源的網(wǎng)絡搜索引擎ApacheNutch,它本身是Lucence項目的一部分。1.1Hadoop概述第一代Hadoop(即Hadoop1.0)的核心由分布式文件系統(tǒng)HDFS和分布式計算框架MapReduce組成,為了克服Hadoop1.0中HDFS和MapReduce的架構設計和應用性能方面的各種問題,提出了第二代Hadoop(即Hadoop2.0),Hadoop2.0的核心包括分布式文件系統(tǒng)HDFS、統(tǒng)一資源管理和調(diào)度框架YARN和分布式計算框架MapReduce。1.2Hadoop版本Hadoop版本ApacheHadoopHadoop1.00.20.x0.21.x0.22.xHadoop2.00.23.x2.xHadoop3.0Hadoop商業(yè)版ClouderaDistributionHadoop(CDH)HortonworksDataPlatform(HDP)1.3Hadoop2.0生態(tài)系統(tǒng)HiveMapReduceSparkImpalaZooKeeperKafkaFlumeYARNHDFSCommonPigMahoutSqoopHBaseAmbariSparkSQL1.HadoopCommonHadoopCommon是Hadoop體系中最底層的一個模塊,為Hadoop各子項目提供各種工具,如系統(tǒng)配置工具Configuration、遠程過程調(diào)用RPC、序列化機制和日志操作,是其他模塊的基礎。2.HDFSHDFS(HadoopDistributedFileSystem)是Hadoop分布式文件系統(tǒng),是Hadoop三大核心之一,是針對谷歌文件系統(tǒng)GFS(GoogleFileSystem)的開源實現(xiàn)(TheGoogleFileSystem,2003)。HDFS是一個具有高容錯性的文件系統(tǒng),適合部署在廉價的機器上,HDFS能提供高吞吐量的數(shù)據(jù)訪問,非常適合大規(guī)模數(shù)據(jù)集上的應用。大數(shù)據(jù)處理框架如MapReduce、Spark等要處理的數(shù)據(jù)源大部分都存儲在HDFS上,Hive、HBase等框架的數(shù)據(jù)通常也存儲在HDFS上。簡而言之,HDFS為大數(shù)據(jù)的存儲提供了保障。3.YARNYARN(YetAnotherResourceNegotiator)是統(tǒng)一資源管理和調(diào)度框架,它解決了Hadoop1.0資源利用率低和不能兼容異構計算框架等多種問題,它提供了資源隔離方案和雙調(diào)度器的實現(xiàn),可在YARN上運行各種不同類型計算框架包括MapReduce、Spark、Storm、Tez等。HadoopMapReduce是一個分布式的、并行處理的編程模型,是針對GoogleMapReduce的開源實現(xiàn)(MapReduce:SimplifiedDataProcessingonLargeClusters,2004)。開發(fā)人員可以在不了解分布式系統(tǒng)底層設計原理和缺少并行應用開發(fā)經(jīng)驗的情況下,就能使用MapReduce計算框架快速輕松地編寫出分布式并行程序,完成對大規(guī)模數(shù)據(jù)集(大于1TB)的并行計算。MapReduce利用函數(shù)式編程思想,將復雜的、運行于大規(guī)模集群上的并行計算過程高度抽象為兩個函數(shù):Map和Reduce,其中Map是對可以并行處理的小數(shù)據(jù)集進行本地計算并輸出中間結果,Reduce是對各個Map的輸出結果進行匯總計算得到最終結果。4.MapReduce5.SparkSpark是加州伯克利大學AMP實驗室開發(fā)的新一代計算框架,對迭代計算很有優(yōu)勢,和MapReduce計算框架相比性能提升明顯,并且都可以與YARN進行集成。6.HBaseHBase是一個分布式的、面向列族的開源數(shù)據(jù)庫,一般采用HDFS作為底層存儲。HBase是針對GoogleBigtable的開源實現(xiàn)(Bigtable:ADistributedStorageSystemforStructuredData,2006),二者采用相同數(shù)據(jù)模型,具有強大的非結構化數(shù)據(jù)存儲能力。HBase使用ZooKeeper進行管理,它保障查詢速度的一個關鍵因素就是RowKey的設計是否合理。7.ZooKeeperZooKeeper是GoogleChubby的開源實現(xiàn),是一個分布式的、開放源碼的分布式應用程序協(xié)調(diào)框架,為大型分布式系統(tǒng)提供了高效且可靠的分布式協(xié)調(diào)服務,提供了諸如統(tǒng)一命名服務、配置管理、分布式鎖等分布式基礎服務,并廣泛應用于大型分布式系統(tǒng)如Hadoop、HBase、Kafka等開源系統(tǒng),例如HDFSNameNodeHA自動切換、HBase高可用、SparkStandalone模式下MasterHA機制都是通過ZooKeeper來實現(xiàn)的。8.HiveHive是一個基于Hadoop的數(shù)據(jù)倉庫工具,最早由Facebook開發(fā)并使用。Hive讓不熟悉MapReduce的開發(fā)人員直接編寫SQL語句來實現(xiàn)對大規(guī)模數(shù)據(jù)的統(tǒng)計分析操作,Hive可以將SQL語句轉換為MapReduce作業(yè),并提交到Hadoop集群上運行。Hive大大降低了學習門檻,同時也提升了開發(fā)效率。9.PigPig與Hive類似,也是對大型數(shù)據(jù)集進行分析和評估的工具,不過與Hive提供SQL接口不同的是,它提供了一種高層的、面向領域的抽象語言PigLatin,和SQL相比,PigLatin更加靈活,但學習成本稍高。10.ImpalaImpala由Cloudera公司開發(fā),提供了與存儲在HDFS、HBase上的海量數(shù)據(jù)進行交互式查詢的SQL接口,其優(yōu)點是查詢非常迅速,其性能大幅領先于Hive,Impala并沒有基于MapReduce計算框架,這也是Impala可以大幅領先Hive的原因。11.MahoutMahout是一個機器學習和數(shù)據(jù)挖掘庫,它包含許多實現(xiàn),包括聚類、分類、推薦過濾等。12.FlumeFlume是由Cloudera提供的一個高可用、高可靠、分布式的海量日志采集、聚合和傳輸?shù)目蚣堋lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù),同時,F(xiàn)lume提供對數(shù)據(jù)進行簡單處理并寫到各種數(shù)據(jù)接收方。13.SqoopSqoop是SQLtoHadoop的縮寫,主要用于關系數(shù)據(jù)庫和Hadoop之間的數(shù)據(jù)雙向交換??梢越柚鶶qoop完成關系型數(shù)據(jù)庫如MySQL、Oracle、PostgreSQL等到Hadoop生態(tài)系統(tǒng)中HDFS、HBase、Hive等的數(shù)據(jù)導入導出操作,整個導入導出過程都是由MapReduce計算框架實現(xiàn),非常高效。Sqoop項目開始于2009年,最早是作為Hadoop的一個第三方模塊存在,后來為了讓使用者能夠快速部署,也為了讓開發(fā)人員能夠更快速地迭代開發(fā),Sqoop就獨立成為一個Apache項目。14.KafkaKafka是一種高吞吐量的、分布式的發(fā)布訂閱消息系統(tǒng),可以處理消費者在網(wǎng)站中的所有動作流數(shù)據(jù)。Kafka最初由LinkedIn公司開發(fā),于2010年貢獻給Apache基金會,并于2012年成為Apache頂級開源項目,它采用Scala和Java語言編寫,是一個分布式、支持分區(qū)的、多副本的、基于ZooKeeper協(xié)調(diào)的分布式消息系統(tǒng),它適合應用于以下兩大類別場景:構造實時流數(shù)據(jù)管道,在系統(tǒng)或應用之間可靠地獲取數(shù)據(jù);構建實時流式應用程序,對這些流數(shù)據(jù)進行轉換。15.AmbariApacheAmbari是一個基于Web的工具,支持ApacheHadoop集群的安裝、部署、配置和管理,目前已支持大多數(shù)Hadoop組件,包括HDFS、MapReduce、Hive、Pig、HBase、ZooKeeper、Oozie、Sqoop等。Ambari由Hortonworks主導開發(fā),具有Hadoop集群自動化安裝、中心化管理、集群監(jiān)控、報警等功能,使得安裝集群從幾天縮短在幾小時以內(nèi),運維人員也從數(shù)十人降低到幾人以內(nèi),極大的提高集群管理的效率。1.4Hadoop體系架構Hadoop集群采用主從架構(Master/Slave),NameNode與ResourceManager為Master,DataNode與NodeManager為Slaves,守護進程NameNode和DataNode負責完成HDFS的工作,守護進程ResourceManager和NodeManager則負責完成YARN的工作。NameNodeResourceManagerDataNodeNodeManagerDataNodeNodeManagerDataNodeNodeManager…1.5部署和運行Hadoop了解Hadoop的運行環(huán)境和運行模式規(guī)劃Hadoop集群準備機器及軟件環(huán)境安裝和配置Hadoop關閉防火墻格式化文件系統(tǒng)啟動和驗證Hadoop關閉Hadoop1.運行環(huán)境操作系統(tǒng)(1)Windows:Hadoop支持Windows,但Windows操作系統(tǒng)本身不太適合作為服務器操作系統(tǒng)。(2)GNU/Linux:Hadoop的最佳運行環(huán)境無疑是開源操作系統(tǒng)Linux,Linux發(fā)行版本眾多,常見的有CentOS、Ubuntu、RedHat、Debian、Fedora、SUSE、openSUSE等。Java環(huán)境Hadoop使用Java語言編寫,因此它的運行環(huán)境需要Java環(huán)境的支持。Hadoop3.x需要Java8,Hadoop2.7及以后版本需要Java7或Java8,Hadoop2.6及早期版本需要Java6。SSHHadoop集群若想運行,其運行平臺Linux必須安裝SSH,且sshd服務必須運行,只有這樣,才能使用Hadoop腳本管理遠程Hadoop守護進程。2.運行模式單機模式(Local/StandaloneMode)只在一臺計算機上運行,不需任何配置,在這種模式下,Hadoop所有的守護進程都變成了一個Java進程,存儲采用本地文件系統(tǒng),沒有采用分布式文件系統(tǒng)HDFS。偽分布模式(Pseudo-DistributedMode)只在一臺計算機上運行,在這種模式下,Hadoop所有守護進程都運行在一個節(jié)點上,在一個節(jié)點上模擬了一個具有Hadoop完整功能的微型集群,存儲采用分布式文件系統(tǒng)HDFS,但是HDFS的名稱節(jié)點和數(shù)據(jù)節(jié)點都位于同一臺計算機上。全分布模式(Fully-DistributedMode)在多臺計算機上運行,在這種模式下,Hadoop的守護進程運行在多個節(jié)點上,形成一個真正意義上的集群,存儲采用分布式文件系統(tǒng)HDFS,且HDFS的名稱節(jié)點和數(shù)據(jù)節(jié)點位于不同計算機上。3.Hadoop配置文件Hadoop配置文件很多,配置文件位于$HADOOP_HOME/etc/hadoop,偽分布模式和全分布模式下的Hadoop集群所需修改的配置文件有差異。文件名稱格式描述hadoop-env.shBash腳本記錄運行Hadoop要用的環(huán)境變量yarn-env.shBash腳本記錄運行YARN要用的環(huán)境變量(覆蓋hadoop-env.sh中設置的變量)mapred-env.shBash腳本記錄運行MapReduce要用的環(huán)境變量覆蓋hadoop-env.sh中設置的變量)core-site.xmlHadoop配置XMLHadoopCore的配置項,包括HDFS、MapReduce和YARN常用的I/O設置等hdfs-site.xmlHadoop配置XMLHDFS守護進程的配置項,包括NameNode、SecondaryNameNode、DataNode等yarn-site.xmlHadoop配置XMLYARN守護進程的配置項,包括ResourceManager、NodeManager等mapred-site.xmlHadoop配置XMLMapReduce守護進程的配置項,包括JobHistoryServerslaves純文本運行DataNode和NodeManager的從節(jié)點機器列表,每行1個主機名pertiesJava屬性控制如何在Hadoop上發(fā)布度量的屬性pertiesJava屬性系統(tǒng)日志文件、NameNode審計日志、任務JVM進程的任務日志的屬性hadoop-policy.xmlHadoop配置XML安全模式下運行Hadoop時的訪問控制列表的配置項啟動Hadoop啟動全分布模式Hadoop集群的守護進程,只需在主節(jié)點master上依次執(zhí)行以下3條命令即可。start-dfs.shstart-yarn.shmr-jobhistory-daemon.shstarthistoryserver驗證Hadoop方法1:jps查看進程start-dfs.sh命令會在節(jié)點上啟動NameNode、DataNode和SecondaryNameNode服務。start-yarn.sh命令會在節(jié)點上啟動ResourceManager、NodeManager服務。mr-jobhistory-daemon.sh命令會在節(jié)點上啟動JobHistoryServer服務。請注意,即使對應的守護進程沒有啟動成功,Hadoop也不會在控制臺顯示錯誤消息,讀者可以利用jps命令一步一步查詢,逐步核實對應的進程是否啟動成功。方法2:查看WebUIHDFSWebUI的默認地址為http://NameNodeIP:50070。YARNWebUI的默認地址為http://ResourceManagerIP:8088。MapReduceWebUI的默認地址為http://JobHistoryServerIP:19888。方法3:運行MapReduce程序——WordCount啟動和驗證Hadoop關閉Hadoop關閉全分布模式Hadoop集群的命令與啟動命令次序相反,只需在主節(jié)點master上依次執(zhí)行以下3條命令即可關閉Hadoop。mr-jobhistory-daemon.shstophistoryserverstop-yarn.shstop-dfs.sh執(zhí)行mr-jobhistory-daemon.shstophistoryserver時,其*historyserver.pid文件消失;執(zhí)行stop-yarn.sh時,*resourcemanager.pid和*nodemanager.pid文件依次消失;stop-dfs.sh,*namenode.pid、*datanode.pid、*secondarynamenode.pid文件依次消失關閉Hadoop【課后作業(yè)】實驗報告提交實驗報告1至平臺“實驗報告-實驗1部署全分布模式Hadoop集群”?!緟⒖嘉墨I】[1]WHITET.Hadoop權威指南:大數(shù)據(jù)的存儲與分析[M].4版.王海,華東,劉喻,等譯.北京:清華大學出版社,2017.[2]DOUGLASE.Hadoop2Quick-StartGuide:LearntheEssentialsofBigDataComputingintheApacheHadoop2Ecosystem[M].NewJersey:Addison-WesleyProfessional,2015.[3]VMwareWorkstation[EB/OL]./products/workstation-pro.html.[4]TheCentOSProject.CentOSDownloa

溫馨提示

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

評論

0/150

提交評論