版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
電子工業(yè)出版社《云計(jì)算(第二版)》配套課件解放軍理工大學(xué)教授主編華東交通大學(xué)制作第6章Hadoop:Google云計(jì)算的開源實(shí)現(xiàn)
《云計(jì)算(第二版)》購買網(wǎng)址:當(dāng)當(dāng)網(wǎng)
京東商城姊妹力作《實(shí)戰(zhàn)Hadoop》購買網(wǎng)址:當(dāng)當(dāng)網(wǎng)
京東商城提綱Hadoop簡介Hadoop分布式文件系統(tǒng)HDFS分布式數(shù)據(jù)處理MapReduce分布式結(jié)構(gòu)化數(shù)據(jù)表HBaseHadoop安裝HDFS使用HBase安裝使用
MapReduce編程
HDFS常用命令
HDFS集群由一個(gè)NameNode和多個(gè)DataNode組成:NameNode負(fù)責(zé)管理文件系統(tǒng)的元數(shù)據(jù);DataNode負(fù)責(zé)存儲(chǔ)實(shí)際的數(shù)據(jù)(其中censtos254為namenode)1.HDFS管理DFSAdmin命令支持一些和HDFS管理相關(guān)的操作2.安全模式NameNode在啟動(dòng)時(shí)會(huì)自動(dòng)進(jìn)入安全模式。安全模式的目的是在系統(tǒng)啟動(dòng)時(shí)檢查各個(gè)DataNode上數(shù)據(jù)塊的有效性,同時(shí)根據(jù)策略對數(shù)據(jù)塊進(jìn)行必要的復(fù)制或刪除關(guān)閉安全模式$bin/hadoopdfsadmin-safemodeleave把HDFS置于安全模式$bin/hadoopdfsadmin–safemodeenter3.添加節(jié)點(diǎn)加入新加節(jié)點(diǎn)主機(jī)名,再建立到新加節(jié)點(diǎn)無密碼的SSH連接實(shí)驗(yàn)中復(fù)制因子為3,部分?jǐn)?shù)據(jù)塊未達(dá)到最小副本數(shù)。等待一段時(shí)間之后,數(shù)據(jù)塊自動(dòng)進(jìn)行了必要的復(fù)制
HDFS常用命令
4.節(jié)點(diǎn)故障心跳信號(hào)
5.負(fù)載均衡重新平衡DataNode上的數(shù)據(jù)塊的分布
$bin/start-balancer.sh
命令執(zhí)行前,DataNode節(jié)點(diǎn)上數(shù)據(jù)的分布情況
負(fù)載均衡完畢后,DataNode節(jié)點(diǎn)上數(shù)據(jù)的分布情況
HDFS基準(zhǔn)測試
TestDFSIO用來測試HDFS的I/O性能bin/hadoopjar$HADOOP_HOME/hadoop-0.20.2-test.jarTestDFSIO–write–nrFile20–filesize200如果eclipse已經(jīng)安裝了hadoop-0.20.2-eclipse-plugin.jar插件包,那么可以在eclipse下查看結(jié)果基準(zhǔn)測試后,刪除所有生成的文件%bin/hadoopjar$HADOOP_HOME/hadoop-0.20.2-test.jarTestDFSIO–clean提綱Hadoop簡介Hadoop分布式文件系統(tǒng)HDFS分布式數(shù)據(jù)處理MapReduce分布式結(jié)構(gòu)化數(shù)據(jù)表HBaseHadoop安裝HDFS使用HBase安裝使用
MapReduce編程
HBase的安裝配置
(1)安裝HBase$tar–zxvfhbase-0.19.2.tar.gz(2)編輯{HBASE_HOME}/conf/hbase-env.sh,把JAVA_HOME變量設(shè)置為JAVA安裝的根目錄,把HBASE_CLASSPATH設(shè)置為HADOOP_CONF_DIR(3)編輯{HBASE_HOME}/conf/hbase-site.xml(4)復(fù)制${HADOOP_HOME}/conf/hadoop-site.xml(5)編輯${HBASE_HOME}/conf/regionservers(6)把HBase復(fù)制到其他機(jī)器上:$scp–r~/hbase-0.19.2/ubuntu2:/home/grid/$scp–r~/hbase-0.19.2/ubuntu3:/home/grid/(7)復(fù)制${HBASE_HOME}/hbase-0.19.2.jar$cp~/hbase-0.19.2/hbase-0.19.2.jar~/hadoop-0.19.1/lib/HBase的執(zhí)行
(1)啟動(dòng)Hadoop$cd~/hadoop-0.19.1$bin/start-all.sh(2)啟動(dòng)Hbase$cd~/hbase-0.19.2/$bin/start-hbase.sh(3)進(jìn)入shell模式進(jìn)行HBase數(shù)據(jù)操作$bin/hbaseshell(4)停止HBase$bin/stop-hbase.sh(5)停止Hadoop$cd~/hadoop-0.19.1$bin/stop-all.shHbase編程實(shí)例啟動(dòng)Eclipse,新建Map/ReduceProject,命名為Proj,在此工程中新建類test,加入代碼在RunConfigurations選項(xiàng)中選擇工作路徑為HBASE_HOME
運(yùn)行后,可以從控制臺(tái)看到運(yùn)行結(jié)果通過地址http://ubuntu1:60010可以看到HBase運(yùn)行的相關(guān)信息,表“stu”添加成功提綱Hadoop簡介Hadoop分布式文件系統(tǒng)HDFS分布式數(shù)據(jù)處理MapReduce分布式結(jié)構(gòu)化數(shù)據(jù)表HBaseHadoop安裝HDFS使用HBase安裝使用
MapReduce編程
矩陣相乘算法設(shè)計(jì)MapReduce程序設(shè)計(jì)過程1)<key,value>對2)數(shù)據(jù)輸入3)Mapper階段4)Reducer階段5)數(shù)據(jù)輸出2.矩陣相乘(整數(shù)矩陣)左矩陣的一行和右矩陣的一列組成一個(gè)InputSplit,其存儲(chǔ)b個(gè)<key,value>對,key存儲(chǔ)積矩陣元素位置,value為生成一個(gè)積矩陣元素的b個(gè)數(shù)據(jù)對中的一個(gè);Map方法計(jì)算一個(gè)<key,value>對的value中數(shù)據(jù)對的積;而Reduce方法計(jì)算key值相同的所有積的和編程實(shí)現(xiàn)
1.程序中的類(1)matrix類用于存儲(chǔ)矩陣(2)IntPair類實(shí)現(xiàn)WritableComparable接口用于存儲(chǔ)整數(shù)對(3)matrixInputSplit類繼承了InputSplit接口,每個(gè)matrixInputSplit包括b個(gè)<key,value>對,用來生成一個(gè)積矩陣元素。key和value都為IntPair類型,key存儲(chǔ)的是積矩陣元素的位置,value為計(jì)算生成一個(gè)積矩陣元素的b個(gè)數(shù)據(jù)對中的一個(gè)(4)繼承InputFormat的matrixInputFormat類,用來數(shù)據(jù)輸入(5)matrixRecordReader類繼承了RecordReader接口,MapReduce框架調(diào)用此類生成<key,value>對賦給map方法(6)主類matrixMulti,其內(nèi)置類MatrixMapper繼承了Mapper重寫覆蓋了Map方法,類似地,F(xiàn)irstPartitioner、MatrixReducer也是如此。在main函數(shù)中,需要設(shè)置一系列的類,詳細(xì)內(nèi)容參考源碼(7)MultipleOutputFormat類用于向文件輸出結(jié)果(8)LineRecordWriter類被MultipleOutputFormat中的方法調(diào)用,向文件輸出一個(gè)結(jié)果<key,value>對編程實(shí)現(xiàn)
2.部分代碼片段matrixInputFormatmatrixMulti3.程序的運(yùn)行過程(1)程序從文件中讀出數(shù)據(jù)到內(nèi)存,生成matrix實(shí)例,通過組合左矩陣的行與右矩陣的列生成a×c個(gè)matrixInputSplit(2)一個(gè)Mapper任務(wù)對一個(gè)matrixInputSplit中的每個(gè)<key1,value1>對調(diào)用一次Map方法對value1中的兩個(gè)整數(shù)相乘。輸入的<key1,value1>對中key1和value1的類型均為IntPair,其輸出為<key1,value2>對,key1不變,value2為IntWritable類型,值為value1中的兩個(gè)整數(shù)的乘積(3)MapReduce框架調(diào)用FirstPartitioner類的getPartition方法將Map的輸出<key1,value2>對分配給指定的Reducer任務(wù)(任務(wù)個(gè)數(shù)可以在配置文件中設(shè)置)編程實(shí)現(xiàn)
3.程序的運(yùn)行過程(4)Reducer任務(wù)對key1值相同的所有value2求和,得出積矩陣中的元素k的值。其輸入為<key1,list(value2)>對,輸出為<key1,value3>對,key1不變,value3為IntWritable類型,值為key1值相同的所有value2的和。(5)MapReduce框架實(shí)例化一個(gè)MultipleOutputFormat類,將結(jié)果輸出到文件4.程序執(zhí)行過程程序需要兩個(gè)參數(shù):輸入目錄和輸出目錄1.分析比較Hadoop的優(yōu)缺點(diǎn)。2.Hadoop里有哪些機(jī)制?解決了哪些問題?3.HDFS有哪些保障可靠
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 商場空調(diào)租賃合同
- 創(chuàng)新專業(yè)人才培養(yǎng)模式:多元融合與實(shí)施方案
- 高空清潔升降機(jī)租賃協(xié)議
- 2023年注冊環(huán)保工程師之注冊環(huán)保工程師公共基礎(chǔ)通關(guān)題庫(附帶答案)
- 健康飲食原則和注意事項(xiàng)
- 泉州海洋職業(yè)學(xué)院《電工與電子技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 真石漆施工合同范例
- 塑殼式斷路器介紹
- 別墅礦山直銷合同范例
- 曲靖職業(yè)技術(shù)學(xué)院《土地利用評(píng)價(jià)與規(guī)劃B》2023-2024學(xué)年第一學(xué)期期末試卷
- 往來沖賬合同范例
- 工裝墊資合同范例
- 2022年四川省眉山市公開招聘警務(wù)輔助人員(輔警)筆試專項(xiàng)訓(xùn)練題試卷(3)含答案
- 【MOOC】金融風(fēng)險(xiǎn)管理-中央財(cái)經(jīng)大學(xué) 中國大學(xué)慕課MOOC答案
- 2025年1月“八省聯(lián)考”考前猜想卷英語試題02 含解析
- 【MOOC】數(shù)字電子技術(shù)基礎(chǔ)-東北大學(xué) 中國大學(xué)慕課MOOC答案
- 壓力性損傷的治療
- 中國常規(guī)肺功能檢查基層指南(2024年)要點(diǎn)解讀
- 中小學(xué)生冬季安全教育課件考核試卷
- 中國兒童維生素A、維生素D臨床應(yīng)用專家共識(shí)
- 四川省內(nèi)江市2024-2025學(xué)年高一上學(xué)期期中考試數(shù)學(xué)試題(含答案)
評(píng)論
0/150
提交評(píng)論