目錄
正文 Hadoop產(chǎn)生的背景1. HADOOP最早起源于Nutch。Nutch的設(shè)計(jì)目標(biāo)是構(gòu)建一個(gè)大型的全網(wǎng)搜索引擎,包括網(wǎng)頁抓取、索引、查詢等功能,但隨著抓取網(wǎng)頁數(shù)量的增加,遇到了嚴(yán)重的可擴(kuò)展性問題——如何解決數(shù)十億網(wǎng)頁的存儲和索引問題。 2. 2003年開始谷歌陸續(xù)發(fā)表的三篇論文為該問題提供了可行的解決方案。 ——分布式文件系統(tǒng)(GFS),可用于處理海量網(wǎng)頁的存儲 ——分布式計(jì)算框架MAPREDUCE,可用于處理海量網(wǎng)頁的索引計(jì)算問題。 ——BigTable 數(shù)據(jù)庫:OLTP 聯(lián)機(jī)事務(wù)處理 Online Transaction Processing 增刪改 3.Nutch的開發(fā)人員完成了相應(yīng)的開源實(shí)現(xiàn)HDFS和MAPREDUCE,并從Nutch中剝離成為獨(dú)立項(xiàng)目HADOOP,到2008年1月,HADOOP成為Apache頂級項(xiàng)目,迎來了它的快速發(fā)展期。 Hadoop是啥Hadoop的官網(wǎng):http://hadoop./ 1、Hadoop是Apache旗下的一套開源軟件平臺 2、Hadoop提供的功能:利用服務(wù)器集群,根據(jù)戶自定義業(yè)邏輯對海量數(shù)進(jìn)行分布式處理 3、Hadoop的核心組件: 1)Hadoop Common:支持其他Hadoop模塊的常用工具。 2) Hadoop分布式文件系統(tǒng)(HDFS?):一種分布式文件系統(tǒng),可提供對應(yīng)用程序數(shù)據(jù)的高吞吐量訪問。 3) Hadoop YARN:作業(yè)調(diào)度和集群資源管理的框架。 4) Hadoop MapReduce:一種用于并行處理大型數(shù)據(jù)集的基于YARN的系統(tǒng)。 大數(shù)據(jù)的處理主要就是存儲和計(jì)算。 如果說安裝hadoop集群,其實(shí)就是安裝了兩個(gè)東西: 一個(gè)操作系統(tǒng)YARN 和 一個(gè)文件系統(tǒng)HDFS。其實(shí)MapReduce就是運(yùn)行在YARN之上的應(yīng)用。 操作系統(tǒng) 文件系統(tǒng) 應(yīng)用程序 4、hadoop的概念: 狹義上: 就是apache的一個(gè)頂級項(xiàng)目:apahce hadoop 廣義上: 就是指以hadoop為核心的整個(gè)大數(shù)據(jù)處理體系 5、Apache的其他Hadoop相關(guān)項(xiàng)目包括:
HADOOP在大數(shù)據(jù)、云計(jì)算中的位置和關(guān)系1、云計(jì)算是分布式計(jì)算、并行計(jì)算、網(wǎng)格計(jì)算、多核計(jì)算、網(wǎng)絡(luò)存儲、虛擬化、負(fù)載均衡等傳統(tǒng)計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)技術(shù)融合發(fā)展的產(chǎn)物。借助IaaS(基礎(chǔ)設(shè)施即服務(wù))、PaaS(平臺即服務(wù))、SaaS(軟件即服務(wù))等業(yè)務(wù)模式,把強(qiáng)大的計(jì)算能力提供給終端用戶。1、 2、現(xiàn)階段,云計(jì)算的兩大底層支撐技術(shù)為“虛擬化”和“大數(shù)據(jù)技術(shù)” 3、 而HADOOP則是云計(jì)算的PaaS層的解決方案之一,并不等同于PaaS,更不等同于云計(jì)算本身。 Hadoop的技術(shù)應(yīng)用HADOOP應(yīng)用于數(shù)據(jù)服務(wù)基礎(chǔ)平臺建設(shè)HADOOP用于用戶畫像
該圖是中國電信的用戶畫像標(biāo)簽體系。 HADOOP用于網(wǎng)站點(diǎn)擊流日志數(shù)據(jù)挖掘總結(jié):hadoop并不會跟某個(gè)具體的行業(yè)或者某個(gè)具體的業(yè)務(wù)掛鉤,它只是一種用來做海量數(shù)據(jù)分析處理的工具。 HADOOP生態(tài)圈以及各組成部分的簡介
重點(diǎn)組件: HDFS:Hadoop的分布式文件存儲系統(tǒng)。 MapReduce:Hadoop的分布式程序運(yùn)算框架,也可以叫做一種編程模型。 Hive:基于Hadoop的類SQL數(shù)據(jù)倉庫工具 Hbase:基于Hadoop的列式分布式NoSQL數(shù)據(jù)庫 ZooKeeper:分布式協(xié)調(diào)服務(wù)組件 Mahout:基于MapReduce/Flink/Spark等分布式運(yùn)算框架的機(jī)器學(xué)習(xí)算法庫 Oozie/Azkaban:工作流調(diào)度引擎 Sqoop:數(shù)據(jù)遷入遷出工具 Flume:日志采集工具 獲取數(shù)據(jù)的三種方式1、自己公司收集的數(shù)據(jù)--日志 或者 數(shù)據(jù)庫中的數(shù)據(jù) 2、有一些數(shù)據(jù)可以通過爬蟲從網(wǎng)絡(luò)中進(jìn)行爬取 3、從第三方機(jī)構(gòu)購買 國內(nèi)HADOOP的就業(yè)情況分析1、HADOOP就業(yè)整體情況A. 大數(shù)據(jù)產(chǎn)業(yè)已納入國家十三五規(guī)劃 B. 各大城市都在進(jìn)行智慧城市項(xiàng)目建設(shè),而智慧城市的根基就是大數(shù)據(jù)綜合平臺 C. 互聯(lián)網(wǎng)時(shí)代數(shù)據(jù)的種類,增長都呈現(xiàn)爆發(fā)式增長,各行業(yè)對數(shù)據(jù)的價(jià)值日益重視 D. 相對于傳統(tǒng)JAVAEE技術(shù)領(lǐng)域來說,大數(shù)據(jù)領(lǐng)域的人才相對稀缺 E. 隨著現(xiàn)代社會的發(fā)展,數(shù)據(jù)處理和數(shù)據(jù)挖掘的重要性只會增不會減,因此,大數(shù)據(jù)技術(shù)是一個(gè)尚在蓬勃發(fā)展且具有長遠(yuǎn)前景的領(lǐng)域 2、 HADOOP就業(yè)職位要求大數(shù)據(jù)是個(gè)復(fù)合專業(yè),包括應(yīng)用開發(fā)、軟件平臺、算法、數(shù)據(jù)挖掘等,因此,大數(shù)據(jù)技術(shù)領(lǐng)域的就業(yè)選擇是多樣的,但就HADOOP而言,通常都需要具備以下技能或知識: 硬實(shí)力 A. HADOOP分布式集群的平臺搭建 B. HADOOP分布式文件系統(tǒng)HDFS的原理理解及使用 C. HADOOP分布式運(yùn)算框架MAPREDUCE的原理理解及編程 D. Hive數(shù)據(jù)倉庫工具的熟練應(yīng)用 E. Flume、sqoop、oozie等輔助工具的熟練使用 F. Shell/python等腳本語言的開發(fā)能力 軟實(shí)力 A. 解決問題的能力(調(diào)試,閱讀文檔) B. 溝通協(xié)調(diào)能力(尋求幫助) C. 學(xué)習(xí)提升自己的能力(自我提高) D. 組織管控能力(管理能力) |
|