版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、HDFS+MapReduce+Hive+HBase 十分鐘快速入門目錄1.前言12.Hadoop.2演練環(huán)境2操作系統(tǒng)3Hadoop3Hive3Java3機(jī)器3安裝列表4安裝路線4配置 ssh2 和修改/etc/hosts4配置 ssh25修改/etc/hosts5安裝 Java5安裝 Hadoop6配置 HDFS6修改 hadoop-env.sh6修改 core-site.xml7hadoop.tmp.dir77修改 masters8修改 slaves8修改 hdfs-site.xml9配置 MapReduce9修改 mapred-default.xml9安裝 Hive10安裝 ant10安
2、裝 ivy10編譯 Hive11安裝 HBase1111.體驗(yàn)121.前言本文的目的是讓一個(gè)從未接觸 Hadoop 的人,在很短的時(shí)間內(nèi)快速上手,掌握編譯、安裝和簡單的使用。2.Hadoop整個(gè) Hadoop由以下幾個(gè)子項(xiàng)目組成:成員名 用途Hadoop Common Hadoop 體系最底層的一個(gè)模塊,為 Hadoop 各子項(xiàng)目提供各種工具,如:配置文件和日志操作等。Avro Avro 是doug cutting 主持的RPC 項(xiàng)目,有點(diǎn)類似的protobuf 和的thrift。avro 用來做以后 hadoop 的 RPC,使 hadoop 的 RPC 模塊通信速度更快、數(shù)據(jù)結(jié)構(gòu)更緊湊。C
3、hukwa Chukwa 是基于 Hadoop 的大集群系統(tǒng),由 yahoo 貢獻(xiàn)。HBase 基于 Hadoop Distributed File System,是一個(gè)開源的,基于列模型的分布式數(shù)據(jù)庫。HDFS 分布式文件系統(tǒng)Hive hive 類似 CloudBase,也是基于 hadoop 分布式計(jì)算上的提供 data warehouse 的 sql功能的一套。使得在 hadoop 里面的海量數(shù)據(jù)的匯總,即席查詢簡單化。hive 提供了一套 QL 的查詢語言,以 sql 為基礎(chǔ),使用起來很方便。MapReduce 實(shí)現(xiàn)了 MapReduce 編程框架Pig Pig 是 SQL-like
4、語言,是在 MapReduce 上構(gòu)建的一種高級(jí)查詢語言,把一些運(yùn)算編譯進(jìn)MapReduce 模型的 Map 和 Reduce 中,并且用戶可以定義自己的功能。Yahoo 網(wǎng)格運(yùn)算部門開發(fā)的又一個(gè)克隆的項(xiàng)目 Sawzall。ZooKeeper Zookeeper 是的 Chubby 一個(gè)開源的實(shí)現(xiàn)。它是一個(gè)針對(duì)大型分布式系統(tǒng)的可靠協(xié)調(diào)系統(tǒng),提供的功能包括:配置、名字服務(wù)、分布式同步、組服務(wù)等。ZooKeeper的目標(biāo)就是封裝好復(fù)雜易出錯(cuò)的關(guān)鍵服務(wù),將簡單易用的接口和性能高效、功能穩(wěn)定的系統(tǒng)提供給用戶。3.演練環(huán)境3.1. 操作系統(tǒng)SuSE10,Linux2.6.16,32 位版本。3.2. H
5、adoopHive 通過 SVN 直接從網(wǎng)上只需要編譯 Hive。原代碼,其它采用 hadoop-0.20.0.tar.gz 二進(jìn)制安裝包,所以另外,請(qǐng)注意不要2009-8-19 號(hào)的 Hive,2009-8-19 提交的Hive 版本在 hadoop-0.20.0.tar.gz上編譯通不過,原因是:Hive 源代碼根目錄qlsrcjava多了一行:apachehadoophiveqlexecFileSinkOperator.java 文件中import.appress.LzoCodec;而應(yīng)當(dāng)2009-8-4 號(hào)和 2009-8-19 之間的版本,或 2009-8-19 之后的版本。3.3.
6、 Hive在 0.20.0 版本的 Hadoop 二進(jìn)制安裝包中,并沒有集成 Hive,所以 Hive 需要自己編譯,編譯時(shí)需要使用到 ant 和 ivy 兩個(gè)工具,而且依賴于 Hadoop。3.4. Java運(yùn)行 Hadoop 和編譯 Hive,都需要使用到 Java,所以需要第一個(gè)安裝的是 Java。3.5. 機(jī)器演練時(shí),在 3 臺(tái)機(jī)器上搭建 Hadoop 集群,假設(shè)這 3 臺(tái)機(jī)器如下表所示:機(jī)器名 機(jī)器 IP 用途Hadoop-A 用作 Master 用作 SlaveHadoHadoop-C 用作 Slave注意事項(xiàng):機(jī)器名中不能包括下劃線“_”,但可以包括橫線。另可使用不帶參數(shù)的 ho
7、stname來查看機(jī)器名,修改機(jī)器名方法為:hostname 機(jī)器名,如:hostname Hadoop-A。另外,集群內(nèi)所有的機(jī)器登錄用戶名和要保持相同。3.6. 安裝列表安裝 說明Java 1.6 A、B 和C 三臺(tái)機(jī)器都需要安裝Hadoop 0.20.0 A、B 和C 三臺(tái)機(jī)器都需要安裝Hive 只需要在 B 和 C 兩臺(tái)機(jī)器上安裝,也就是 Slave 機(jī)器不需要安裝ant 只需要在 B 和C 兩臺(tái)機(jī)器上安裝,也就是 Slave 機(jī)器不需要安裝ivy 只需要在 B 和 C 兩臺(tái)機(jī)器上安裝,也就是 Slave 機(jī)器不需要安裝注意事項(xiàng):為求簡單所有操作均以 root 用戶完成,實(shí)際上可以使用
8、非 root 用戶,但環(huán)境變量就不能直接在/etc/profile 文件中添加了。3.7. 安裝路線4.配置 ssh2 和修改/etc/hosts需要在所有機(jī)器上配置ssh2 和修改/etc/hosts。4.1. 配置 ssh21)mkdir /.ssh2 # 如果/.ssh2 目錄已經(jīng)存在,則這一步可以跳過2)cd /.ssh23)ssh-keygen2 -t rsa4)echo IdKey id_rsa_2048_a identification5)echo key id_rsa_2048_a.pub authorization4.2.修改/etc/hosts1)在/etc/hosts 文
9、件中增加如下三行:Hadoop-AHadoHadoop-C并根據(jù)上述關(guān)系,使用 hostname 命令修改三臺(tái)機(jī)器的機(jī)器名。5.安裝 Java1)從 hjre,請(qǐng)注意是 Java1.6 版本,原因/download/manual.jsp是 Hadoop 和 Hive 使用到了模板等特性2)“Linux (自解壓文件)”這個(gè)版本的 jre,如下圖所示3)將的 Java 二進(jìn)制安裝包 jre-6u15-linux-i586.bin 上傳到/usr/local 目錄4)為 jre-6u15-linux-i586.bin 文件增加可執(zhí)行權(quán)限:od +x jre-6u15-linux-i586.bin5
10、)運(yùn)行 jre-6u15-linux-i586.bin:./jre-6u15-linux-i586.bin6)用戶協(xié)議接受,選擇yes7)安裝成功后,在/etc/profile 增加如下一行:export PATH=/usr/local/jdk/bin:$PATH6.安裝 Hadoop1) 從hadoop-0.20.0.tar.gzHadoop 二 進(jìn) 制 安 裝 包mon/releases.html2)將 hadoop-0.20.0.tar.gz 上傳到/usr/local 目錄3)在/usr/local 目錄,將 hadoop-0.20.0.tar.gz 解壓4)為 hadoop-0.20
11、.0 建一個(gè)軟:ln -s hadoop-0.20.0 hadoop5)在/etc/profile 文件中,增加如下兩行:exporDOOP_HOME=/usr/local/hadoopexport PATH=$HADOOP_HOME/bin:$PATH完成以上步驟后,Hadoop 就安裝好了。7.配置 HDFS7.1. 修改 hadoop-env.sh所有機(jī)器做同樣操作。hadoop-env.sh 位于/usr/local/hadoop/conf JAVA_HOME,增加如下一行即可:目錄下, 需要在這個(gè)文件中設(shè)置環(huán)境變量export JAVA_HOME=/usr/local/jre7.2.
12、 修改 core-site.xml所有機(jī)器做同樣操作。在 hadoop-0.20.0.tar.gz 安裝包中,conf 目錄下的 core-site.xml 默認(rèn)是空的,但 src/core 目錄下有一個(gè)缺省的配置文件 core-default.xml,所以只需要將它成 core-site.xml 即可,下述操作都是基于此操作的。到 conf 目錄下,并重命名core-site.xml 文件位于/usr/local/hadoop/conf 目錄下。7.2.1.hadoop.tmp.dir設(shè)置臨時(shí)文件目錄參數(shù) hadoop.tmp.dir,默認(rèn)情況下 master 會(huì)將元數(shù)據(jù)等存在這個(gè)目錄下,而
13、slave 會(huì)將所有上傳的文件放在這個(gè)目錄下,在這里數(shù)據(jù)目錄為/usr/local/hadoop/data:hadoop.tmp.dir/usr/local/hadoop/dataA base for other temporary directories.注意事項(xiàng):由于上傳到 Hadoop 的所有文件都會(huì)被存放在 hadoop.tmp.dir 所指定的目錄,所以要確保這個(gè)目錄是足夠大的。7.2.2.master 用這個(gè)參數(shù),提供基于 http 協(xié)議的狀態(tài)上報(bào)界面,而 slave 通過這個(gè)地址連接master,設(shè)置如下:hdfs:/Hadoop-A:54310The name of the d
14、efault file system. A URI whosescheme and authority determine the FileSystem implemenion. Theuris scheme determines the config property (fs.SCHEME.impl) namingthe FileSystem implemenion class. The uris authority is used todetermine the host, port, etc. for a filesystem.備注: 指定 NameNode 的 IP 地址和端,缺省值是
15、 file:/,,表示使用本地文件系統(tǒng),,用于單機(jī)布式模式。dfs.replication 指定 HDFS 中每 Block 被系統(tǒng)中,這個(gè)數(shù)常常設(shè)置為 3。的次數(shù),起數(shù)據(jù)冗余備份的作用。在典型的生產(chǎn)7.3.修改 masters這一步只需要在master 節(jié)點(diǎn)上執(zhí)行。這個(gè)文件備master 節(jié)點(diǎn)的 IP 或機(jī)器名,建議使用機(jī)器名,每行一個(gè)機(jī)器名。主 master會(huì)將元數(shù)據(jù)等備份到備master 節(jié)點(diǎn),文件位于conf 目錄下。這里,為masters 文件增加如下一行即可:Hadoop-A7.4.修改 slaves這一步也只需要在master 節(jié)點(diǎn)上執(zhí)行,以便master 以 ssh2 方式去啟
16、動(dòng)所有的slave 節(jié)點(diǎn)。這個(gè)文件如下兩行:slave 節(jié)點(diǎn)的 IP 或機(jī)器名,建議使用機(jī)器名,每行一個(gè)機(jī)器名。這里增加HadoHadoop-C7.5.修改 hdfs-site.xml所有機(jī)器做同樣操作。從 src/hdfs 目錄下,將 hdfs-default.xml需要修改此文件。到 conf 目錄,并重命名成 hdfs-site.xml,這里不8.配置 MapReduce8.1.修改 mapred-default.xml所有機(jī)器做同樣操作。從src/mapred 目錄下,將 mapred-default.xml到conf 目錄,并重命名成 mapred-site.xml。mapred.j
17、ob.trackerHadoop-A:54311The host and portt the MapReduce job tracker runsat. If local, then jobs are run in-pros as a single mapand reduce task.備注:mapred.job.tracker 指定 JobTracker 的 IP 地址和端同一 Java 進(jìn)程內(nèi)執(zhí)行 JobTracker 和 TaskTracker,,用于單機(jī)。缺省值是 local,,表示在本地布式模式。9.安裝 Hivehadoop-0.20.0 中并沒有集成二進(jìn)制的 Hive,所以需要通
18、過源代碼編譯一個(gè),但是 2009-8-19日提交的 Hive 并不能在 hadoop-0.20.0 上編譯,而應(yīng)當(dāng)使用 2009-8-4 之后和 2009-8-19 之間的版本。9.1. 安裝 ant1)從ant 二進(jìn)制安裝包,選擇 1.7.1 版本2)后,將包 apache-ant-1.7.1-bin.zip 上傳到/usr/local 目錄3)進(jìn)入/usr/local 目錄,將 apache-ant-1.7.1-bin.zip 解壓:unzip apache-ant-1.7.1-bin.zip4)進(jìn)入/usr/local 目錄,為 ant 建一個(gè)軟連接:ln -s apache-ant-1
19、.7.1 ant5)修改/etc/profile,增加如下行:export PATH=/usr/local/ant/bin:$PATH至此,ant 算是安裝好了 。9.2. 安裝 ivy1)從ivy 二進(jìn)制安裝包,選擇 2.1.0-rc2 版本2)后,將包 apache-ivy-2.1.0-rc2-bar.gz 上傳到/usr/local 目錄3) 進(jìn) 入 /usr/local目 錄 , 將解 壓 : tarapache-ivy-2.1.0-rc2-bar.gzxzfapache-ivy-2.1.0-rc2-bar.gz4)進(jìn)入/usr/local 目錄,為 ivy 建一個(gè)軟連接:ln -s
20、apache-ivy-2.1.0-rc2 ivy6)修改/etc/profile,增加如下行:export IVY_HOME=/usr/local/ivy至此,ivy 算是安裝好了。9.3. 編譯 Hive在編譯 Hive 之前,請(qǐng)確保 HADOOP_HOME 和 IVY_HOME 兩個(gè)環(huán)境變量已經(jīng)生效。1)使用 svn 從Hive 源代碼2)將來的 Hive 源代碼打包,然后上傳到 Hadoop-A 機(jī)器3)解壓 Hive 源代碼包4)修改 shims/ivy.xml:只保留 0.20.0 的配置,否則編譯會(huì)出錯(cuò),將原 ivy.xml 文件:修改成如下:5)運(yùn)行 ant 開始編譯:ant -
21、D.dir=/usr/local/hadoop/hive -Dhadoop.ver=0.20.0 package這步完成之后,Hive 會(huì)被安裝到/usr/local/hadoop/hive 目錄下6)添加 Hive 環(huán)境變量,在/etc/profile 文件中增加如下兩行:export HIVE_HOME=/usr/local/hadoop/hiveexport PATH=$HIVE_HOME/bin:$PATH10.安裝 HBase1)從的 HBase 源代碼2)將 HBase 源代碼打包,并上傳到 Linux 上3)解壓 HBase 源代碼包4)編譯 HBase:ant -D.dir=/
22、usr/local/hadoop/hbase -Dhadoop.ver=0.20.0 package5)編譯成功之后,HBase 可能并不象 Hive 一樣自動(dòng)安裝到/usr/local/hadoop/hbase 目錄下,這個(gè)時(shí)候需要手工到 HBase 安裝目錄下:將 build/hbase-0.21.0-dev 整個(gè)目錄到/usr/local/hadoop 目錄下,并將 hbase-0.21.0-dev 重命名成 hbase 即可進(jìn)入/usr/local/hadoop/hbase/conf 目錄,將 hbase-default.xml hbase-site.xml修改 hbase-site.
23、xml:設(shè)置 hbase.rootdir 的值為:hdfs:/Hadoop-A:54310/hbase; 份, 并命名成設(shè)置 hbase.master(hbase.master 可能為 hbase.mast 8)修改 hbase-env.sh:ort)的值為:Hadoop-A:60000設(shè)置環(huán)境變量JAVA_HOME:export JAVA_HOME=/usr/local/jre在 Master 節(jié)點(diǎn),還需要修改 regionservers,在這個(gè)文件中列出所有的 slave 機(jī)器,一行一個(gè)機(jī)器名:Hado Hadoop-C這一步不用在slave 節(jié)點(diǎn)上操作。通過以上操作,HBase 已經(jīng)安裝
24、和配置好,然后應(yīng)當(dāng)打包,將它部署到集群的所有節(jié)點(diǎn)上11.體驗(yàn)11.1.啟動(dòng)和停止 11.1.1.hadoop在啟動(dòng) Hadoop 集群之前,需要先格式化,在 master 節(jié)點(diǎn)上執(zhí)行下面hadoop namenode -format11.1.2.start-all.sh令即可:這個(gè)可以通過可以通過用來啟動(dòng) Hadoop。來查看 HDFS 的啟動(dòng)情況。來查看MapReduce 的啟動(dòng)情況。11.1.3.stop-all.sh這個(gè)用來停止 Hadoop。11.2.體驗(yàn) HDFSHDFS 的使用和普通的 Linux 命令差不多,只不過各類操作都必須作為 hadoop 命令的參數(shù),如在 hadoop
25、上執(zhí)行 ls 操作:hadoop fs -ls /這條命令相當(dāng)于 Linux 下的 ls /。 11.3.體驗(yàn) MapReduce體驗(yàn) MapReduce,可以使用 Hadoop 自帶的 WordCount,如: hadoop jar wordcount.jar /x/x /z其中 wordcount.jar 是 WordCount 的可執(zhí)行包,/x/x 是源文件,是一段以逗號(hào)分隔的英文片斷,而/z 是結(jié)果存放的目錄。11.4.體驗(yàn) HiveHive 的使用非常簡單,照著就可以了。FAQ如何查看 Hadoop 進(jìn)程上說的來操作如果安裝了 JDK,則在 JDK 的 bin 目錄下有一個(gè) jps 命令,可以用來查看 java 進(jìn)程,如:# jps27612 NameN
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025入股投資合作合同
- 2025年微信小程序商城產(chǎn)品銷售代理合同3篇
- 獸醫(yī)解聘合同證明
- 城市道路建設(shè)項(xiàng)目合同管理臺(tái)賬
- 林地租賃合同:森林徒步探險(xiǎn)
- 招投標(biāo)行業(yè)規(guī)范與合同管理課件
- 消防安全認(rèn)證防水施工合同
- 設(shè)備保養(yǎng)維修合同書
- 智能家居租賃合同
- 演員工作合同
- 大健康商業(yè)招商計(jì)劃書
- 高一上半學(xué)期總結(jié)教學(xué)課件
- 高速公路初步設(shè)計(jì)匯報(bào)課件
- 申根簽證申請(qǐng)表模板
- 企業(yè)會(huì)計(jì)準(zhǔn)則、應(yīng)用指南及附錄2023年8月
- 2022年浙江省事業(yè)編制招聘考試《計(jì)算機(jī)專業(yè)基礎(chǔ)知識(shí)》真題試卷【1000題】
- 認(rèn)養(yǎng)一頭牛IPO上市招股書
- GB/T 3767-2016聲學(xué)聲壓法測(cè)定噪聲源聲功率級(jí)和聲能量級(jí)反射面上方近似自由場(chǎng)的工程法
- GB/T 23574-2009金屬切削機(jī)床油霧濃度的測(cè)量方法
- 動(dòng)物生理學(xué)-全套課件(上)
- 河北省衡水市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會(huì)明細(xì)
評(píng)論
0/150
提交評(píng)論