版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、大數(shù)據(jù)平臺(tái)介紹,大數(shù)據(jù) 二零一五年七月,1,全面分析,2,目錄,Hadoop大數(shù)據(jù)生態(tài)圈介紹,大數(shù)據(jù)應(yīng)用介紹,3,Cloudera Manager介紹,2,Hadoop大數(shù)據(jù)生態(tài)圈,3,全面分析,Hadoop生態(tài)圈,4,Hadoop簡介,Hadoop一個(gè)分布式系統(tǒng)基礎(chǔ)架構(gòu),由Apache基金會(huì)開發(fā)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力高速運(yùn)算和存儲(chǔ) 。簡單地說來,Hadoop是一個(gè)可以更容易開發(fā)和運(yùn)行處理大規(guī)模數(shù)據(jù)的軟件平臺(tái)。 Hadoop的框架最核心的設(shè)計(jì)就是:HDFS和MapReduce。HDFS為海量的數(shù)據(jù)提供了存儲(chǔ),則MapReduce為海量的數(shù)據(jù)
2、提供了計(jì)算,5,Hadoop能解決哪些問題,海量數(shù)據(jù)需要及時(shí)分析和處理。 海量數(shù)據(jù)需要深入分析和挖掘。 數(shù)據(jù)需要長期保存 問題: 磁盤IO成為一種瓶頸,而非CPU資源。 網(wǎng)絡(luò)帶寬是一種稀缺資源 硬件故障成為影響穩(wěn)定的一大因素,6,HDFS適應(yīng)條件,HDFS:為以流式數(shù)據(jù)訪問模式存儲(chǔ)超大文件而設(shè)計(jì)的文件系統(tǒng)。 流式數(shù)據(jù)訪問 指的是幾百M(fèi)B,幾百GB,幾百TB,甚至幾百PB 流式數(shù)據(jù)訪問 HDFS建立的思想是:一次寫入、多次讀取模式是最高 效的。 商用硬件 hadoop不需要運(yùn)行在昂貴并且高可靠的硬件上,7,HDFS不適應(yīng)條件,低延遲數(shù)據(jù)訪問 HDFS是為了達(dá)到高數(shù)據(jù)吞吐量而優(yōu)化的,這是以延遲為代
3、價(jià)的,對于低延遲訪問,可以用Hbase(hadoop的子項(xiàng)目)。 大量的小文件 多用戶寫入,任意修改,8,HDFS基本單元,Block(塊):HDFS基本儲(chǔ)存單元,是個(gè)邏輯單元。一個(gè)文件有可能包含多個(gè)塊,一個(gè)塊有可以包含多個(gè)文件,由文件的大小和塊大小的參數(shù)決定。dfs.block.size參數(shù)。Hdfs中Block的大小,默認(rèn)64MB,如果設(shè)置大,就會(huì)有可能導(dǎo)致Map運(yùn)行慢,設(shè)置小,有可能導(dǎo)致Map個(gè)數(shù)多,所有一定要設(shè)置適當(dāng)。(目前主流機(jī)器建議設(shè)置為128M) 設(shè)置一個(gè)Block 64MB,如果上傳文件小于該值,仍然會(huì)占用一個(gè)Block的命名空間(NameNode metadata),但是物理
4、存儲(chǔ)上不會(huì)占用64MB的空間 Block大小和副本數(shù)由Client端上傳文件到HDFS時(shí)設(shè)置,其中副本數(shù)可以變更,Block是不可以再上傳后變更的,9,HDFS處理機(jī)制,Client:切分文件;訪問HDFS;與NameNode交互,獲取文件位置信息;與DataNode交互,讀取和寫入數(shù)據(jù)。 NameNode:Master節(jié)點(diǎn),管理HDFS的名稱空間和數(shù)據(jù)塊映射信息,配置副本策略,處理客戶端請求。 DataNode:Slave節(jié)點(diǎn),存儲(chǔ)實(shí)際的數(shù)據(jù),匯報(bào)存儲(chǔ)信息給NameNode。 Secondary NameNode:輔助NameNode,分擔(dān)其工作量;定期合并fsimage和fsedits,推
5、送給NameNode;緊急情況下,可輔助恢復(fù)NameNode,但Secondary NameNode并非NameNode的熱備,10,HDFS文件讀取,11,MapReduce簡介,簡介 MapReduce 是一個(gè)高性能的批處理分布式計(jì)算框架,用于對海量數(shù)據(jù)進(jìn)行并行分析和處理。 MapReduce 將分析任務(wù)分為大量的并行 Map 任務(wù)和 Reduce 任務(wù)兩類。 與傳統(tǒng)數(shù)據(jù)倉庫和分析技術(shù)相比,MapReduce 適合處理各種類型的數(shù)據(jù),包括結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。 結(jié)構(gòu)化、半結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù) 結(jié)構(gòu)化數(shù)據(jù)(即行數(shù)據(jù),存儲(chǔ)在數(shù)據(jù)庫里,可以用二維表結(jié)構(gòu)來邏輯表達(dá)實(shí)現(xiàn)的數(shù)據(jù)) 不方便用數(shù)
6、據(jù)庫二維邏輯表來表現(xiàn)的數(shù)據(jù)即稱為非結(jié)構(gòu)化數(shù)據(jù)(包括所有格式的辦公文檔、文本、圖片、XML、HTML、各類報(bào)表、圖像和音頻/視頻信息等等) 所謂半結(jié)構(gòu)化數(shù)據(jù),就是介于完全結(jié)構(gòu)化數(shù)據(jù)(如關(guān)系型數(shù)據(jù)庫、面向?qū)ο髷?shù)據(jù)庫中的數(shù)據(jù))和完全無結(jié)構(gòu)的數(shù)據(jù)(如聲音、圖像文件等)之間的數(shù)據(jù),HTML文檔就屬于半結(jié)構(gòu)化數(shù)據(jù)。它一般是自描述的,數(shù)據(jù)的結(jié)構(gòu)和內(nèi)容混在一起,沒有明顯的區(qū)分,12,MapReduce簡介,適合處理的任務(wù) 適用于離線批處理任務(wù) 是以“行”為處理單位的,無法回溯已處理過的“行”,故每行都必須是一個(gè)獨(dú)立的語義單元,行與行之間不能有語義上的關(guān)聯(lián)。 相對于傳統(tǒng)的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),MapReduce
7、計(jì)算模型更適合于處理半結(jié)構(gòu)化或無結(jié)構(gòu)話的數(shù)據(jù)。 不適合處理的任務(wù) 不適合一般web應(yīng)用 不適合實(shí)時(shí)響應(yīng)的任務(wù) 不適合小數(shù)據(jù)集的處理 不適合需要大量臨時(shí)空間的任務(wù) 不適合CPU密集且具有許多交叉調(diào)用的任務(wù),13,MapReduce工作原理,MapReduce執(zhí)行流程 MapReduce角色 Client :作業(yè)提交發(fā)起者。 JobTracker: 初始化作業(yè),分配作業(yè),與TaskTracker通信,協(xié)調(diào)整個(gè)作業(yè)。 TaskTracker:保持JobTracker通信,在分配的數(shù)據(jù)片段上執(zhí)行MapReduce任務(wù)。 任務(wù)的分配 TaskTracker和JobTracker之間的通信與任務(wù)的分配是通
8、過心跳機(jī)制完成的。 TaskTracker會(huì)主動(dòng)向JobTracker詢問是否有作業(yè)要做,如果自己可以做,那么就會(huì)申請到作業(yè)任務(wù),這個(gè)任務(wù)可以使Map也可能是Reduce任務(wù),14,MapReduce工作原理,任務(wù)的執(zhí)行 申請到任務(wù)后,TaskTracker會(huì)做如下事情: 拷貝代碼到本地 拷貝任務(wù)的信息到本地 啟動(dòng)JVM運(yùn)行任務(wù) 狀態(tài)與任務(wù)的更新 任務(wù)在運(yùn)行過程中,首先會(huì)將自己的狀態(tài)匯報(bào)給TaskTracker,然后由TaskTracker匯總告之JobTracker。 作業(yè)的完成 JobTracker是在接受到最后一個(gè)任務(wù)運(yùn)行完成后,才會(huì)將任務(wù)標(biāo)志為成功。 此時(shí)會(huì)做刪除中間結(jié)果等善后處理工作
9、,15,MapReduce工作原理,16,Hadoop實(shí)例,根據(jù)URL的頂級域名進(jìn)行分類統(tǒng)計(jì) 輸入、輸出格式:文件 源文件格式如下: 統(tǒng)計(jì)目標(biāo),17,Hadoop實(shí)例,1. 編寫MapReduce函數(shù),客戶端作業(yè) Map函數(shù),18,Hadoop實(shí)例,Reduce函數(shù) Job設(shè)置,19,Hadoop實(shí)例,編譯、打包成jar文件 略 3. 源文件提交到HDFS文件系統(tǒng) 文件從本地提交到HDFS文件系統(tǒng)put命令 查看HDFS文件系統(tǒng)中已提交的文件,20,Hadoop實(shí)例,使用Hadoop命令提交作業(yè) 提交作業(yè) 查看作業(yè) http:/localhost:50030,21,Hadoop實(shí)例,查看執(zhí)行結(jié)
10、果 查看執(zhí)行結(jié)果生成的文件 查看HDFS文件系統(tǒng)中的結(jié)果 HDFS文件拷貝到本地,查看結(jié)果,22,Hive簡介,Hive是什么 hive是基于Hadoop的一個(gè)數(shù)據(jù)倉庫工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供完整的sql查詢功能,可以將sql語句轉(zhuǎn)換為MapReduce任務(wù)進(jìn)行運(yùn)行。其優(yōu)點(diǎn)是學(xué)習(xí)成本低,可以通過類SQL語句快速實(shí)現(xiàn)簡單的MapReduce統(tǒng)計(jì),不必開發(fā)專門的MapReduce應(yīng)用,十分適合數(shù)據(jù)倉庫的統(tǒng)計(jì)分析。 Hive是建立在 Hadoop 上的數(shù)據(jù)倉庫基礎(chǔ)構(gòu)架。它提供了一系列的工具,可以用來進(jìn)行數(shù)據(jù)提取轉(zhuǎn)化加載(ETL),這是一種可以存儲(chǔ)、查詢和分析存儲(chǔ)在 Ha
11、doop 中的大規(guī)模數(shù)據(jù)的機(jī)制。Hive 定義了簡單的類 SQL 查詢語言,稱為 HQL,它允許熟悉 SQL 的用戶查詢數(shù)據(jù)。同時(shí),這個(gè)語言也允許熟悉 MapReduce 開發(fā)者的開發(fā)自定義的 mapper 和 reducer 來處理內(nèi)建的 mapper 和 reducer 無法完成的復(fù)雜的分析工作,23,Hive實(shí)例,創(chuàng)建托管表 1. 在Hive命令行執(zhí)行建表語句 2. 查看元數(shù)據(jù)庫中的表信息、字段信息sds、columns_v2,24,Hive實(shí)例,3. 從本地向net_addr_1表中導(dǎo)入數(shù)據(jù) 4. 查看導(dǎo)入的數(shù)據(jù),25,Hive實(shí)例,根據(jù)URL的頂級域名進(jìn)行分類統(tǒng)計(jì)-Hive實(shí)現(xiàn) 1.
12、 源數(shù)據(jù)入表略,使用已生成的net_addr_1 2. 源數(shù)據(jù)加工轉(zhuǎn)換,生成中間表 INSERT OVERWRITE TABLE net_addr_3 select net_id,regexp_replace(net_url,(.+.), ) from net_addr_1; 3. 根據(jù)中間表數(shù)據(jù)進(jìn)行統(tǒng)計(jì),26,Hbase簡介,HBase是一個(gè)針對結(jié)構(gòu)化數(shù)據(jù)的可伸縮、高可靠、高性能、分布式和面向列的動(dòng)態(tài)模式數(shù)據(jù)庫。和傳統(tǒng)關(guān)系數(shù)據(jù)庫不同,HBase采用了BigTable的數(shù)據(jù)模型:增強(qiáng)的稀疏排序映射表(Key/Value),其中,鍵由行關(guān)鍵字、列關(guān)鍵字和時(shí)間戳構(gòu)成。HBase提供了對大規(guī)模數(shù)據(jù)的
13、隨機(jī)、實(shí)時(shí)讀寫訪問,同時(shí),HBase中保存的數(shù)據(jù)可以使用MapReduce來處理,它將數(shù)據(jù)存儲(chǔ)和并行計(jì)算完美地結(jié)合在一起。利用HBase技術(shù)可在廉價(jià)PC Server上搭建起大規(guī)模結(jié)構(gòu)化存儲(chǔ)集群,27,Hbase架構(gòu),28,Hbase實(shí)例,1、構(gòu)建Hbase表hbase_test hbase create hbase_test, id01 2、構(gòu)建hive外表hive_test, 并對應(yīng)hbase_test表 CREATE EXTERNAL TABLE hive_test (id01 STRING) STORED BY org.apache.hadoop.hive.hbase.HBaseSto
14、rageHandler WITH SERDEPROPERTIES (hbase.columns.mapping = :key,id01) TBLPROPERTIES( = hbase_test); 3、數(shù)據(jù)通過hive_test導(dǎo)入到hbase_test表中 INSERT OVERWRITE TABLE hive_test SELECT id01 FROM hive_date,29,Hbase實(shí)例,30,大數(shù)據(jù)應(yīng)用介紹,31,全面分析,用戶上網(wǎng)行為分析系統(tǒng),32,用戶行為分析系統(tǒng)數(shù)據(jù)處理流程圖,33,唯品會(huì)日志處理框架簡介,34,唯品會(huì)日志處理框架簡介,35,全
15、國重點(diǎn)車輛聯(lián)網(wǎng)聯(lián)控平臺(tái),36,Cloudera Manager介紹,37,全面分析,Cloudera Manager介紹,CDH (Clouderas Distribution, including Apache Hadoop),是Hadoop眾多分支中的一種,由Cloudera維護(hù),基于穩(wěn)定版本的Apache Hadoop構(gòu)建,并集成了很多補(bǔ)丁,可直接用于生產(chǎn)環(huán)境。 Cloudera Manager則是為了便于在集群中進(jìn)行Hadoop等大數(shù)據(jù)處理相關(guān)的服務(wù)安裝和監(jiān)控管理的組件,對集群中主機(jī)、Hadoop、Hive、Hbase、Spark等服務(wù)的安裝配置管理做了極大簡化。 Cloudera M
16、anager有四大功能 (1)管理 (2)監(jiān)控 (3)診斷 (4)集成,38,Cloudera Manager介紹,Cloudera Flume Flume是Cloudera提供的日志收集系統(tǒng),F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù); Flume是Cloudera提供的一個(gè)高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng),F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時(shí),F(xiàn)lume提供對數(shù)據(jù)進(jìn)行簡單處理,并寫到各種數(shù)據(jù)接受方(可定制)的能力,39,Cloudera Manager介紹,Cloudera Impala Cloudera Impala對
17、你存儲(chǔ)在Apache Hadoop在HDFS,HBase的數(shù)據(jù)提供直接查詢互動(dòng)的SQL。除了像Hive使用相同的統(tǒng)一存儲(chǔ)平臺(tái),Impala也使用相同的元數(shù)據(jù),SQL語法(Hive SQL),ODBC驅(qū)動(dòng)程序和用戶界面(Hue Beeswax)。Impala還提供了一個(gè)熟悉的面向批量或?qū)崟r(shí)查詢和統(tǒng)一平臺(tái)。 Impala不再使用緩慢的Hive+MapReduce批處理,而是通過與商用并行關(guān)系數(shù)據(jù)庫中類似的分布式查詢引擎(由Query Planner、Query Coordinator和Query Exec Engine三部分組成),可以直接從HDFS或者HBase中用SELECT、JOIN和統(tǒng)計(jì)函
18、數(shù)查詢數(shù)據(jù),從而大大降低了延遲,40,Cloudera Manager介紹,Cloudera hue Hue是cdh專門的一套web管理器,它包括3個(gè)部分hue ui,hue server,hue db。hue提供所有的cdh組件的shell界面的接口。你可以在hue編寫mr,查看修改hdfs的文件,管理hive的元數(shù)據(jù),運(yùn)行Sqoop,編寫Oozie工作流等大量工作,41,Cloudera Manager介紹,Spark Spark與Hadoop一樣,用于構(gòu)建大規(guī)模、低延時(shí)的數(shù)據(jù)分析應(yīng)用。Spark采用Scala語言實(shí)現(xiàn),使用Scala作為應(yīng)用框架。Spark采用基于內(nèi)存的分布式數(shù)據(jù)集,優(yōu)化了迭代式的工作負(fù)載以及交互式查詢。與Hadoop不同的是,Spark和Scala緊密集 成,Scala像管理本地collective對象那樣管理分布式數(shù)據(jù)集。Spark支持分布式數(shù)據(jù)集上的迭代式任務(wù),實(shí)際上可以在Hadoop文件系統(tǒng) 上與Hadoop一起運(yùn)行 Spark基于map reduce算法實(shí)現(xiàn)的分布式計(jì)算,擁有Hadoop MapReduce所具有的優(yōu)點(diǎn);但不同于MapReduce的是
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024芒果種植基地?zé)o人機(jī)噴灑農(nóng)藥服務(wù)合同3篇
- 儀器設(shè)備采購合同5篇
- 經(jīng)濟(jì)法關(guān)于大學(xué)生就業(yè)維權(quán)方面
- 贊助合同模板(5篇)
- 山東特殊教育職業(yè)學(xué)院《醫(yī)學(xué)基本技能》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年度政府投資項(xiàng)目財(cái)務(wù)監(jiān)管代理合同3篇
- 鐘山職業(yè)技術(shù)學(xué)院《商務(wù)英語視聽說(4)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年礦山石料直供采購協(xié)議綱要版B版
- 2025年度新疆棉花采摘機(jī)械化作業(yè)合同范本3篇
- 南京師范大學(xué)泰州學(xué)院《口腔臨床醫(yī)學(xué)概論(口腔修復(fù)學(xué))》2023-2024學(xué)年第一學(xué)期期末試卷
- 醫(yī)院藥品質(zhì)量管理
- 裝飾圖案智慧樹知到答案2024年齊魯工業(yè)大學(xué)
- 漢語言文學(xué)本科自考真題1301-全國-古代漢語
- 中醫(yī)藥健康管理服務(wù)流程
- 醫(yī)院開展反恐防恐知識(shí)培訓(xùn)
- MDCG 2020-3 Rev.1 歐盟更新醫(yī)療器械重大變更指南文件
- 五年級口算每頁100題(打印版)
- 人教版小學(xué)數(shù)學(xué)一年級上冊20以內(nèi)口算天天練試題全套
- 廣西欽州市浦北縣2023-2024學(xué)年七年級上學(xué)期期末語文試題
- 技術(shù)服務(wù)補(bǔ)充協(xié)議范本
- 內(nèi)河避碰條例題庫
評論
0/150
提交評論