show大數(shù)據(jù)與hbase實(shí)踐_第1頁(yè)
show大數(shù)據(jù)與hbase實(shí)踐_第2頁(yè)
show大數(shù)據(jù)與hbase實(shí)踐_第3頁(yè)
show大數(shù)據(jù)與hbase實(shí)踐_第4頁(yè)
show大數(shù)據(jù)與hbase實(shí)踐_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

大數(shù)據(jù)與hbase應(yīng)用

關(guān)于hadoop與hbase的介紹和開(kāi)發(fā)應(yīng)用周勇沂2014年10月16日目錄2大數(shù)據(jù)與HADOOP介紹1HDFS介紹2Hbase介紹3Hbase應(yīng)用431、WINDOWS進(jìn)程間通信方式

第一章大數(shù)據(jù)與HADOOP介紹第一章HADOOP介紹41、大數(shù)據(jù)的背景與定義日益信息化的時(shí)代5大數(shù)據(jù)的定義與特征“Bigdataisdatathatexceedstheprocessingcapacityofconventionaldatabasesystems”

O’ReillyRadar,“WhatIsBigData?”,January2012所謂大數(shù)據(jù),就是用現(xiàn)有的一般技術(shù)難以管理的大量數(shù)據(jù)的集合----野村綜合研究所大數(shù)據(jù)順應(yīng)大規(guī)模信息化到新階段而誕生的

數(shù)據(jù)庫(kù)革命性運(yùn)動(dòng)NoSQL(NoSQL=NotOnlySQL)不同的NoSQL場(chǎng)景不同,可比性不高原則:

解放思想,事實(shí)求是6巨量GBTBPBEBDaily~Historical種類多WebAPPSocialNetworkEmail…半結(jié)構(gòu)XMLLogClickstreamxDR…實(shí)時(shí)Real-timeNearreal-time大數(shù)據(jù)的挑戰(zhàn)7※一個(gè)關(guān)系型數(shù)據(jù)庫(kù)的表數(shù)據(jù)量上億時(shí)★分區(qū)★分表★分庫(kù)※導(dǎo)致上層復(fù)雜度提高,成本倍增IO天花板,非線性單機(jī)計(jì)算大數(shù)據(jù)對(duì)系統(tǒng)的需求★Highperformance–高并發(fā)讀寫(xiě)的需求

高并發(fā)、實(shí)時(shí)動(dòng)態(tài)獲取和更新數(shù)據(jù)★HugeStorage–海量數(shù)據(jù)的高效率存儲(chǔ)和訪問(wèn)的需求

類似SNS社會(huì)性網(wǎng)絡(luò)服務(wù)網(wǎng)站,海量用戶信息的高效率實(shí)時(shí)存儲(chǔ)和查詢★HighScalability&&HighAvailability–高可擴(kuò)展性和高可用性的需求 需要擁有快速橫向擴(kuò)展能力、提供7*24小時(shí)不間斷服務(wù)8第一章HADOOP介紹92、HADOOP起源和特點(diǎn)Hadoop的創(chuàng)立和演進(jìn)10谷歌三大論文

GFS(2003)

SanjayGhemawat(美國(guó)工程院士) (GFS,MR,Bigtable) HowardGobioff Shun-TakLeung

map/reduce(2004)

DeanJeffrey(美國(guó)工程院士)

(Adsense,pb,News,Codesearch) SanjayGhemawat

Bigtable(2006)

FayChang DeanJeffrey

SanjayGhemawat...DougCutting和YahooLucene->Nutch->Hadoop大數(shù)據(jù)主要應(yīng)應(yīng)用技術(shù)——Hadoop可擴(kuò)展:不論是存儲(chǔ)的的可擴(kuò)展還是是計(jì)算的可擴(kuò)擴(kuò)展都是Hadoop的設(shè)計(jì)根本。。經(jīng)濟(jì):框架可以運(yùn)行行在任何普通通的PC上??煽浚悍植际轿募迪到y(tǒng)的備份恢恢復(fù)機(jī)制以及及MapReduce的任務(wù)監(jiān)控保保證了分布式式處理的可靠靠性。高效:分布式文件系系統(tǒng)的高效數(shù)數(shù)據(jù)交互實(shí)現(xiàn)現(xiàn)以及MapReduce結(jié)合LocalData處理的模式,,為高效處理理海量的信息息作了基礎(chǔ)準(zhǔn)準(zhǔn)備11大數(shù)據(jù)主要應(yīng)應(yīng)用技術(shù)——HadoopHadoop作為新一代的的架構(gòu)和技術(shù)術(shù),因?yàn)橛欣诓⑿蟹植疾继幚怼按蟠髷?shù)據(jù)”而備備受重視。ApacheHadoop是一個(gè)用java語(yǔ)言實(shí)現(xiàn)的軟軟件框架,在在由大量計(jì)算算機(jī)組成的集集群中運(yùn)行海海量數(shù)據(jù)的分分布式計(jì)算,,它可以讓?xiě)?yīng)應(yīng)用程序支持持上千個(gè)節(jié)點(diǎn)點(diǎn)和PB級(jí)別的數(shù)據(jù)。。Hadoop是項(xiàng)目的總稱稱,主要是由由分布式存儲(chǔ)儲(chǔ)(HDFS)、分布式計(jì)計(jì)算(MapReduce)等組成12Hadoop解決了什么么難題?13簡(jiǎn)單地想想看看,假設(shè)我們們需要讀一個(gè)個(gè)10TB的數(shù)據(jù)集,怎怎么辦?在傳統(tǒng)的系統(tǒng)統(tǒng)上,這需要要很長(zhǎng)時(shí)間,,因?yàn)橛脖P(pán)的的傳輸速度是受限的的。一個(gè)簡(jiǎn)單單的辦法是將將數(shù)據(jù)存儲(chǔ)在在多個(gè)磁盤(pán)上上,同時(shí)從多個(gè)磁盤(pán)并并行讀取數(shù)據(jù)據(jù),這將大大大減少讀取時(shí)時(shí)間Hadoop的基本概念念14分布式存儲(chǔ)HDFS文件分塊自行備份分布式計(jì)算Map/Reduce函數(shù)式設(shè)計(jì)((map/reduce)第一章HADOOP介紹153、MapReduceHadoop解決了什么么難題?16化整為零,分分片處理;本地化計(jì)算,并行IO,降低網(wǎng)絡(luò)通通信MapReduce———映射、化簡(jiǎn)編編程模型171.根據(jù)輸入數(shù)據(jù)據(jù)的大小和參參數(shù)的設(shè)置把把數(shù)據(jù)分成splits,每個(gè)split對(duì)于一個(gè)map線程。2.Split中的數(shù)據(jù)作為為Map的輸入,Map的輸出一定在在Map端。3.Map的輸出到Reduce的輸入的過(guò)程程(shuffle過(guò)程):第一階段:在在map端完成內(nèi)存->排序->寫(xiě)入磁盤(pán)->復(fù)制第二階段:在在reduce端完成映射到到reduce端分區(qū)->合并->排序4.Reduce的輸入到Reduce的輸出最后排好序的的key/value作為Reduce的輸入,輸出出不一定是在在reduce端。MapReduce是一種編程模模型,用于大大規(guī)模數(shù)據(jù)集集的并行運(yùn)算算。Map(映射)和Reduce(化簡(jiǎn)),采采用分而治之之思想,先把把任務(wù)分發(fā)到到集群多個(gè)節(jié)節(jié)點(diǎn)上,并行行計(jì)算,然后后再把計(jì)算結(jié)結(jié)果合并,從從而得到最終終計(jì)算結(jié)果。。多節(jié)點(diǎn)計(jì)算算,所涉及的的任務(wù)調(diào)度、、負(fù)載均衡、、容錯(cuò)處理等等,都由MapReduce框架完成,不不需要編程人人員關(guān)心這些些內(nèi)容。181、WINDOWS進(jìn)程程間通信方式式第二章HDFS介紹HDFS—分布式文件系系統(tǒng)19NameNode可以看作是分分布式文件系系統(tǒng)中的管理理者,存儲(chǔ)文文件系統(tǒng)的meta-data,主要負(fù)責(zé)管管理文件系統(tǒng)統(tǒng)的命名空間間,集群配置置信息,存儲(chǔ)儲(chǔ)塊的復(fù)制。。DataNode是文件存儲(chǔ)的的基本單元。。它存儲(chǔ)文件件塊在本地文文件系統(tǒng)中,,保存了文件件塊的meta-data,同時(shí)周期期性的發(fā)送送所有存在在的文件塊塊的報(bào)告給給NameNode。Client就是需要獲獲取分布式式文件系統(tǒng)統(tǒng)文件的應(yīng)應(yīng)用程序。。HDFS是一個(gè)高度度容錯(cuò)性的的分布式文文件系統(tǒng),,能提供高高吞吐量的的數(shù)據(jù)訪問(wèn)問(wèn),非常適適合大規(guī)模模數(shù)據(jù)集上上的應(yīng)用。。HDFS特點(diǎn)20★可擴(kuò)展,只只需添加服服務(wù)器★健壯性,高度容錯(cuò)性性,文件刪除恢恢復(fù)機(jī)制★機(jī)架感知★數(shù)據(jù)冗余,副本機(jī)制★負(fù)載均衡★適合流式訪訪問(wèn),一次寫(xiě)入,多次讀取★默認(rèn)塊大小小64MB,適合PB級(jí)以上數(shù)據(jù)據(jù)的存儲(chǔ)和和處理★MapReduce分布式計(jì)算算框架,利用存儲(chǔ)節(jié)節(jié)點(diǎn)的CPU資源HDFS優(yōu)缺點(diǎn)21HDFS優(yōu)點(diǎn):★適合大數(shù)據(jù)據(jù)處理(支支持GB,TB,PB級(jí)別的數(shù)據(jù)據(jù)存儲(chǔ),支支持百萬(wàn)規(guī)規(guī)模以上的的文件數(shù)量量)★適合批處理理(支持離離線的批量量數(shù)據(jù)處理理,支持高高吞吐率))★高容錯(cuò)性((以數(shù)據(jù)塊塊存儲(chǔ),可可以保存多多個(gè)副本,,容易實(shí)現(xiàn)現(xiàn)負(fù)載均衡衡)HDFS缺點(diǎn):★小文件存取?。ㄕ加胣amenode大量?jī)?nèi)存)),1百萬(wàn)個(gè)文件件,至少300M內(nèi)存★不支持并發(fā)發(fā)寫(xiě)入(同同一時(shí)刻只只能有一個(gè)個(gè)進(jìn)程寫(xiě)入入,不支持持隨機(jī)修改改)★多用戶寫(xiě)入入,任意修修改文件★低延時(shí)(幾幾十毫秒)),它是為為高數(shù)據(jù)吞吞吐量設(shè)計(jì)計(jì)的HDFS——分布式文件件系統(tǒng)22HDFS架構(gòu)分析HDFS——分布式文件件系統(tǒng)23HDFS——分布式文件件系統(tǒng)24HDFS文件讀取流流程HDFS——分布式文件件系統(tǒng)25文件寫(xiě)入流流程261、WINDOWS進(jìn)程間通通信方式第二章HBASE的介紹Hbase簡(jiǎn)介27★來(lái)源于FayChang所撰寫(xiě)的Google論文“Bigtable”★HBase–HadoopDatabase分布式存儲(chǔ)儲(chǔ)系統(tǒng)★高可靠性★高性能★面向列★可伸縮★可在廉價(jià)PCServer上搭建Hadoo生態(tài)環(huán)境28底層HDFS為HBase提供了可靠靠的文件存存儲(chǔ)MapReduce為它提供了了高性能的的計(jì)算Pig和Hive提供了HBase的查詢功能能,Hive提供的方法法類似與SQL語(yǔ)句Sqoop提供了Hbase與關(guān)系數(shù)據(jù)據(jù)庫(kù)的導(dǎo)入入導(dǎo)出功能能Zookeeper提供了協(xié)調(diào)調(diào)以及failover功能.Hbase架構(gòu)291商品目錄就就是一張大大表(Bigtable),由商品編編號(hào)(key)和裝商品的的木箱(ColumnFamily列族)組成。2一個(gè)編號(hào)下下商品(如某輛單車車的零件),最好只用用一種規(guī)格格箱子就裝裝完,但某某些零件大大小差別過(guò)過(guò)大,不得得不使用多多種箱子(多個(gè)列族)3此大型超市市總部(HMaster)以樓層為租租賃的基本本單位,每每層成為一一個(gè)銷售分分區(qū)(HRegion)。此大型型超市租用用了好多棟棟分布在全全球各地的的購(gòu)物大樓樓(HRegionserver),并托管了了商品的存存儲(chǔ)和搬運(yùn)運(yùn)。超市總總部(HMaster)只管理到銷銷售分區(qū)(HRegion),并記錄在一一張地址本本上(放在內(nèi)存上)4每層樓銷售分分區(qū)(HRegion)都放一定范圍圍編號(hào)的商品品,如果這個(gè)個(gè)范圍編號(hào)的的商品過(guò)多了了,就會(huì)再租租多一層樓來(lái)來(lái)存儲(chǔ)(分裂裂)HBase架構(gòu)304,購(gòu)物大樓(HRegionserver)只有一個(gè)大門門口負(fù)責(zé)登記記人員進(jìn)出(Hlog);進(jìn)門后可以通通往各個(gè)層樓樓,每個(gè)樓層層就是一個(gè)銷銷售分區(qū)(HRegion)5,關(guān)于一個(gè)銷銷售分區(qū)(Hregion)a,每層樓根據(jù)商商品木箱(列族ColumnFamily)的規(guī)格多少,,分為多個(gè)專專賣店(Store)b,每個(gè)專賣店(Sotre),由促銷倉(cāng)(放內(nèi)存上的Memstore)和0個(gè)或多個(gè)普通通倉(cāng)(放hfile上的Sotrefile)組成HRegionServer入庫(kù)過(guò)程簡(jiǎn)介介31Hstore分流簡(jiǎn)介32Client寫(xiě)入->存入MemStore,一直到MemStore滿->Flush成一個(gè)StoreFile,直至增長(zhǎng)到到一定閾值->出發(fā)Compact合并操作->多個(gè)StoreFile合并成一個(gè)StoreFile,同時(shí)進(jìn)行版版本合并和數(shù)數(shù)據(jù)刪除->當(dāng)StoreFilesCompact后,逐步形成成越來(lái)越大的的StoreFile->單個(gè)StoreFile大小超過(guò)一定定閾值后,觸觸發(fā)Split操作,把當(dāng)前前RegionSplit成2個(gè)Region,Region會(huì)下線,新Split出的2個(gè)孩子Region會(huì)被HMaster分配到相應(yīng)的的HRegionServer上,使得原先先1個(gè)Region的壓力得以分分流到2個(gè)Region上hfile文件格式33hfile文件由6部分組成:datablock,metablock(可選),fileinfo,datablockindex,metablockindex,trailer。datablock存儲(chǔ)了表數(shù)據(jù)據(jù),metablock存儲(chǔ)了布隆過(guò)過(guò)濾器索引數(shù)數(shù)據(jù),fileinfo存儲(chǔ)了本文件件的相關(guān)信息息,index存儲(chǔ)了datablock和metablock的索引數(shù)據(jù),,trailer存儲(chǔ)了本文件件的相關(guān)信息息。341、WINDOWS進(jìn)程程間通信方式式第三章HBASE的應(yīng)用HBaseShell35名稱命令表達(dá)式創(chuàng)建表create'表名稱','列名稱1','列名稱2','列名稱N'添加記錄put'表名稱','行名稱','列名稱:','值'查看記錄get'表名稱','行名稱'查看表中的記錄總數(shù)count'表名稱'刪除記錄delete'表名','行名稱','列名稱'刪除一張表先要屏蔽該表,才能對(duì)該表進(jìn)行刪除,第一步disable'表名稱'第二步drop'表名稱'查看所有記錄scan"表名稱"查看某個(gè)表某個(gè)列中所有數(shù)據(jù)scan"表名稱",['列名稱:']更新記錄就是重寫(xiě)一遍進(jìn)行覆蓋Hbase編程36封裝好的HbaseDAO例子importcom.etrans.lib.db.hbase.dao.TrackDaoImpl;privateGpsTrackvo=newGpsTrack();★方式一TrackDaoImpltrackDao=newTrackDaoImpl();trackDao.openTable(false,1024*1024*32);trackDao.insert(vo);//增、改為同一一接口trackDao.list(startKey,endKey,selectedColSet,filter);trackDao.closeTable();trackDao=null;★方式二TrackDaoImpltrackDao=newTrackDaoImpl();trackDao.insert(vo);trackDao.list(startKey,endKey,selectedColSet,filter);trackDao=null;Hbase編程37※TrackDaoImpl操作對(duì)象如何何初始化★初始化表名StringCONST_TABLE_NAME=“track";★對(duì)象與hbase表字段映射關(guān)關(guān)系@OverridepublicvoidinitSchema(){addHbaseCol(newHbaseCol("artistName","an"));addHbaseCol(newHbaseCol("year","ye",true));addHbaseCol(newHbas

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論