hadoop大数据开发基础_Java大数据开发(三)Hadoop(2)经典的Hadoop
1
什么是大數(shù)據(jù)
1、Hadoop是一個(gè)由Apache基金會(huì)所開(kāi)發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)
2、主要解決,海量數(shù)據(jù)的存儲(chǔ)和海量數(shù)據(jù)的分析計(jì)算問(wèn)題。
3、廣義上來(lái)說(shuō),HADOOP通常是指一個(gè)更廣泛的概念——HADOOP生態(tài)圈
2
大數(shù)據(jù)發(fā)展史
1、Lucene--Doug Cutting開(kāi)創(chuàng)的開(kāi)源軟件,用java書(shū)寫(xiě)代碼,實(shí)現(xiàn)與Google類(lèi)似的全文搜索功能,它提供了全文檢索引擎的架構(gòu),包括完整的查詢(xún)引擎和索引引擎
2、2001年年底成為apache基金會(huì)的一個(gè)子項(xiàng)目
3、對(duì)于大數(shù)量的場(chǎng)景,Lucene面對(duì)與Google同樣的困難
4、學(xué)習(xí)和模仿Google解決這些問(wèn)題的辦法?:微型版Nutch
5、可以說(shuō)Google是hadoop的思想之源
6、2003-2004年,Google公開(kāi)了部分GFS和Mapreduce思想的細(xì)節(jié),以此為基礎(chǔ)Doug Cutting等人用了2年業(yè)余時(shí)間實(shí)現(xiàn)了DFS和Mapreduce機(jī)制,使Nutch性能飆升
7、2005 年Hadoop 作為 Lucene的子項(xiàng)目 Nutch的一部分正式引入Apache基金會(huì)。2006 年 3 月份,Map-Reduce和Nutch Distributed File System (NDFS) 分別被納入稱(chēng)為 Hadoop 的項(xiàng)目中?
8、名字來(lái)源于Doug Cutting兒子的玩具大象
3
hadoop的優(yōu)勢(shì)
1、高可靠性:因?yàn)镠adoop假設(shè)計(jì)算元素和存儲(chǔ)會(huì)出現(xiàn)故障,因?yàn)樗S護(hù)多個(gè)工作數(shù)據(jù)副本,在出現(xiàn)故障時(shí)可以對(duì)失敗的節(jié)點(diǎn)重新分布處理。
2、高擴(kuò)展性:在集群間分配任務(wù)數(shù)據(jù),可方便的擴(kuò)展數(shù)以千計(jì)的節(jié)點(diǎn)。
3、高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任務(wù)處理速度。
4、高容錯(cuò)性:自動(dòng)保存多份副本數(shù)據(jù),并且能夠自動(dòng)將失敗的任務(wù)重新分配。
4
hadoop組成部分
1、Hadoop HDFS:一個(gè)高可靠、高吞吐量的分布式文件系統(tǒng)。
2、Hadoop MapReduce:一個(gè)分布式的離線(xiàn)并行計(jì)算框架。
3、Hadoop YARN:作業(yè)調(diào)度與集群資源管理的框架。
4、Hadoop Common:支持其他模塊的工具模塊。
5
HDFS架構(gòu)概述
1、NameNode(nn):存儲(chǔ)文件的元數(shù)據(jù),如文件名,文件目錄結(jié)構(gòu),文件屬性(生成時(shí)間、副本數(shù)、文件權(quán)限),以及每個(gè)文件的塊列表和塊所在的DataNode等。
2、DataNode(dn):在本地文件系統(tǒng)存儲(chǔ)文件塊數(shù)據(jù),以及塊數(shù)據(jù)的校驗(yàn)和。3、Secondary NameNode(2nn):用來(lái)監(jiān)控HDFS狀態(tài)的輔助后臺(tái)程序,每隔一段時(shí)間獲取HDFS元數(shù)據(jù)的快照。
6
YARN架構(gòu)概述
1、ResourceManager(rm):處理客戶(hù)端請(qǐng)求、啟動(dòng)/監(jiān)控ApplicationMaster、監(jiān)控NodeManager、資源分配與調(diào)度。
2、NodeManager(nm):單個(gè)節(jié)點(diǎn)上的資源管理、處理來(lái)自ResourceManager的命令、處理來(lái)自ApplicationMaster的命令。
3、ApplicationMaster:數(shù)據(jù)切分、為應(yīng)用程序申請(qǐng)資源,并分配給內(nèi)部任務(wù)、任務(wù)監(jiān)控與容錯(cuò)。
4、Container:對(duì)任務(wù)運(yùn)行環(huán)境的抽象,封裝了CPU、內(nèi)存等多維資源以及環(huán)境變量、啟動(dòng)命令等任務(wù)運(yùn)行相關(guān)的信息。
7
MapReduce概述
MapReduce將計(jì)算過(guò)程分為兩個(gè)階段:Map和Reduce
1、Map階段并行處理輸入數(shù)據(jù)
2、Reduce階段對(duì)Map結(jié)果進(jìn)行匯總
8
大數(shù)據(jù)生態(tài)體系
看了上邊的圖片,是不是感覺(jué)頭皮發(fā)麻,所以大數(shù)據(jù)指的并不是一個(gè)單獨(dú)的技術(shù),而是一整套的解決方案,不過(guò)別急,我們上邊的技術(shù),都會(huì)講到,慢慢學(xué)吧。
10
hadoop安裝
上傳hadooptar包,Alt+P 進(jìn)入上傳窗口,執(zhí)行上傳命令
sftp> put -r d:/hadoop-2.7.2.tar.gz移動(dòng)到opt下的soft目錄
[root@hadoop100 ~]# mv hadoop-2.7.2.tar.gz /opt/soft/將壓縮文件解壓到opt/dev下
[root@hadoop100 soft]# tar -zxvf hadoop-2.7.2.tar.gz -C ../dev/將hadoop添加到環(huán)境變量
①查看hadoop安裝目錄
[root@hadoop100 hadoop-2.7.2]# pwd/opt/dev/hadoop-2.7.2②打開(kāi)etc/profile文件
[root@hadoop100 hadoop-2.7.2]# vi /etc/profile③添加環(huán)境變量,然后保存退出
##HADOOP_HOMEexport HADOOP_HOME=/opt/dev/hadoop-2.7.2export PATH=$PATH:$HADOOP_HOME/binexport PATH=$PATH:$HADOOP_HOME/sbin④讓修改后的文件生效
[root@hadoop100 hadoop-2.7.2]# source /etc/profile⑤執(zhí)行hadoop命令,查看是否安裝成功
[root@hadoop100 hadoop-2.7.2]# hadoop結(jié)果有內(nèi)容,就代表安裝成功
[root@hadoop100 hadoop-2.7.2]# hadoopUsage: hadoop [--config confdir] [COMMAND | CLASSNAME] CLASSNAME run the class named CLASSNAME or where COMMAND is one of: fs run a generic filesystem user client version print the version jar run a jar file note: please use "yarn jar" to launch YARN applications, not this command. checknative [-a|-h] check native hadoop and compression libraries availability distcp copy file or directories recursively archive -archiveName NAME -p * create a hadoop archive classpath prints the class path needed to get the credential interact with credential providers Hadoop jar and the required libraries daemonlog get/set the log level for each daemon trace view and modify Hadoop tracing settingsMost commands print help when invoked w/o parameters.hadoop目錄結(jié)構(gòu)
[root@hadoop100 hadoop-2.7.2]# ll總用量 52drwxr-xr-x. 2 root root 4096 5月 22 2017 bindrwxr-xr-x. 3 root root 4096 5月 22 2017 etcdrwxr-xr-x. 2 root root 4096 5月 22 2017 includedrwxr-xr-x. 3 root root 4096 5月 22 2017 libdrwxr-xr-x. 2 root root 4096 5月 22 2017 libexec-rw-r--r--. 1 root root 15429 5月 22 2017 LICENSE.txt-rw-r--r--. 1 root root 101 5月 22 2017 NOTICE.txt-rw-r--r--. 1 root root 1366 5月 22 2017 README.txtdrwxr-xr-x. 2 root root 4096 5月 22 2017 sbindrwxr-xr-x. 4 root root 4096 5月 22 2017 share(1)bin目錄:存放對(duì)Hadoop相關(guān)服務(wù)(HDFS,YARN)進(jìn)行操作的腳本
(2)etc目錄:Hadoop的配置文件目錄,存放Hadoop的配置文件
(3)lib目錄:存放Hadoop的本地庫(kù)(對(duì)數(shù)據(jù)進(jìn)行壓縮解壓縮功能)
(4)sbin目錄:存放啟動(dòng)或停止Hadoop相關(guān)服務(wù)的腳本
(5)share目錄:存放Hadoop的依賴(lài)jar包、文檔、和官方案例
正式進(jìn)入大數(shù)據(jù)處理學(xué)習(xí)了,開(kāi)不開(kāi)心,喜歡的話(huà),點(diǎn)個(gè)關(guān)注,分享一下吧
總結(jié)
以上是生活随笔為你收集整理的hadoop大数据开发基础_Java大数据开发(三)Hadoop(2)经典的Hadoop的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JQuery图片切换 Win8 Metr
- 下一篇: 在Tomcat中部署seam工程