小象學(xué)院hbase進(jìn)階課程代碼exportweek_第1頁(yè)
小象學(xué)院hbase進(jìn)階課程代碼exportweek_第2頁(yè)
小象學(xué)院hbase進(jìn)階課程代碼exportweek_第3頁(yè)
小象學(xué)院hbase進(jìn)階課程代碼exportweek_第4頁(yè)
小象學(xué)院hbase進(jìn)階課程代碼exportweek_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余73頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、了解了解原理前HBase常用配置整hbase-開(kāi)啟jmx端口用hbase-開(kāi)啟jmx端口用于日志保存位pid文件保存位是否使用hbase托管HBASE_HOME、HBase安裝目錄與配置目HBase堆大小象學(xué)hbase-ulimit -nhbase-ulimit -n 通信、store file需要較多的HBASE_OPTS與通用JVM啟動(dòng)參-XX:NewSize= /根據(jù)集群和存儲(chǔ)規(guī)模考-XX:MaxNewSize= /設(shè)定為與NewSize相等,禁用自動(dòng)擴(kuò)-XX:+DoEscapeAnalysis /逃逸分pressedOops /壓縮指-XX:+HeapDumpOnOutOfMemory

2、Error /oom時(shí)dump內(nèi)-XX:HeapDumpPath=$HBASE_LOG_DIR/ /dump路-XX:CMSInitiatingOccupancyFraction=70 /cms gc開(kāi)始閾-XX:+UseCMSInitiatingOccupancyOnly /設(shè)置達(dá)到閾值才進(jìn)行開(kāi)啟gc 搜索“jvm優(yōu)化參數(shù)整理小象學(xué)hbase-隨著版本變hbase-隨著版本變化參數(shù)名會(huì)有變新版本中為hbase. true,禁用tcp寫(xiě)緩100,與cpu核數(shù)比值過(guò)大后意義不50,meta表請(qǐng)求數(shù)量會(huì)高于用戶緩存占HBASE_HEAPSIZE的比0.2,對(duì)于隨機(jī)讀較多業(yè)務(wù)應(yīng)當(dāng)適當(dāng)調(diào)60000早期

3、版本region server與master通信超時(shí)時(shí)region規(guī)模較大時(shí)建議提高,影響master在region server的心跳中回需要open的小象學(xué)hbase-60000,早期true,早期hdfshbase-60000,早期true,早期hdfs需要配置以啟用append操false,早期版本中禁用客戶端請(qǐng)求的新版本中為1073741824,早期版本中resul最大返可以在同一個(gè)hdfs集群中起兩個(gè)hbase集建議5或7個(gè)zk實(shí)各類(lèi)端sysctl net.ipv4.ip_local_port_range = 8192 負(fù)載均衡閾|(平均值-rs上region數(shù))|/平均小象學(xué)hb

4、ase-hbase-小象學(xué)perties-舊 hbase、jvm、rpc、thriftserver、hdfsclient、perties-舊 hbase、jvm、rpc、thriftserver、hdfsclient、監(jiān)控發(fā)送頻率,單位為保存記錄文件監(jiān)控服務(wù)小象學(xué)perties-新perties-新監(jiān)控 hmaster、 thrift-two、thrift-one、小象學(xué)小象小象學(xué)小象學(xué)新浪微博微信新浪微博微信公號(hào)!ThriftThrift Server及使什么是什么是定義數(shù)據(jù)類(lèi)型和服務(wù)接生成RPC客戶端和服務(wù)器代小象學(xué)Thrift的安yumThrift的安yuminstallautomake

5、libtoolflexbisonpkgconfiggcc- c+ boost-devel libevent-devel zlib-devel python- devel ruby-devel安裝依賴環(huán)wget HYPERLINK /dist/thrift/0.9.0/thrift- /dist/thrift/0.9.0/thrift- 下載具體需要下載哪版與/usr/lib/hbase/lib/libthrift-版本號(hào).jar有tarzxvfthrift-0.9.0 cd thrift-0.9.0make小象學(xué)啟動(dòng)服thrift1與啟動(dòng)服thrift1與搜索“hbase的thrift接口”可

6、以進(jìn)一步看到對(duì)service安裝hbase-thrift2-.1.5.0-695.el6.noarch.rpm或?qū)?yīng)版service hbase-thrift2 使用默認(rèn)端hbase thrift2 hbase thrift2 -p指定端小象學(xué)生成cd生成cd/usr/lib/hbase/include/thrift thrift gen 語(yǔ)言參數(shù) thrift腳本 thrift -gen cpp hbase2.thrift生成c+ thrift-genjava生成java 小象學(xué)編碼編碼以c+ api搜索“transport類(lèi)體系研究總結(jié)編譯以c+ api為-編譯以c+ api為-避免uin

7、t32_t未定義的錯(cuò)-官方建議參-thrift cpp類(lèi)庫(kù)位-thrift .so文件位-官方建議參hbase2_constants.cpp hbase2_types.cpp thrift gen生成的文我們的源文小象學(xué)執(zhí)行以執(zhí)行以c+ api為小象學(xué)常見(jiàn)負(fù)載常見(jiàn)負(fù)載均在服務(wù)客戶端負(fù)責(zé)均衡發(fā)隨客戶端啟RPC代價(jià)小象學(xué)新浪微博微信新浪微博微信公號(hào)!深入深入理解前的簡(jiǎn)單運(yùn)HBase Web UIHBase Web UI介紹zk 重點(diǎn)關(guān)注Unassigned 小象學(xué)HBase HBase Web UI介紹表信region server狀HBase Web HBase Web UI介紹新 其他功能只是

8、換了個(gè)位log的查log的查.log和查看是否有查看是否有exit,判斷是否有線程意外退 可以觀察gc耗時(shí),判斷內(nèi)存是否充小象學(xué)HBase額外監(jiān)控痛HBase額外監(jiān)控痛unassignedregion zk dump或zookeeper中獲小象中國(guó)大hbck的使hbck的使舊版 w y新浪微博微信新浪微博微信公號(hào)!復(fù)雜復(fù)雜API介紹與舉Scan中的Scan中的 第四章 第1小象學(xué)Scan中的取每行前N個(gè)Scan中的取每行前N個(gè)取每行第offset到第N個(gè)之間的每行從列名按byte比較大于等于columnOffset的列開(kāi)始取前N取每行列名為空或符合指定前綴的取每行列名在指定范圍內(nèi)的過(guò)濾與指定列

9、的時(shí)間戳不等的值,被指定的列可以不包含在結(jié)果按列族名稱過(guò)濾封裝的過(guò)濾器,用于多種過(guò)濾組合判只取每行第一個(gè)只取符合指定列名的第一個(gè)小象學(xué)Scan中的對(duì)rowkey按照byteScan中的對(duì)rowkey按照byte進(jìn)行模糊匹構(gòu)造函數(shù):(ListPair 第一個(gè)byte為模式數(shù)第二個(gè)byte中與模式數(shù)組對(duì)應(yīng),0為需要匹配,1為不需匹掃描到指定行時(shí)停只返回key(rowkey,列族,列名,時(shí)間戳),不反回類(lèi)似ColumnPrefixFilter,但可以指定多個(gè)前分頁(yè)過(guò)濾當(dāng)Scan操作跨服務(wù)器執(zhí)行時(shí)返回行數(shù)可能會(huì)大于指定根據(jù)列名的比較結(jié)果確定是否保留小象學(xué)Scan中的Scan中的小象學(xué)Scan中的Sca

10、n中的小象學(xué)計(jì)數(shù)計(jì)數(shù)小象學(xué)計(jì)數(shù)計(jì)數(shù)測(cè)試小象學(xué)計(jì)數(shù)計(jì)數(shù)測(cè)試hbase小象學(xué)中國(guó)大數(shù)據(jù)在線教public void map(ImmutableBytesWritable row, Result value, Context context)配小象學(xué)Scanscan)生成的字符串(但是方法對(duì)外不可掃描起始掃描結(jié)束public void map(ImmutableBytesWritable row, Result value, Context context)配小象學(xué)Scanscan)生成的字符串(但是方法對(duì)外不可掃描起始掃描結(jié)束包含多個(gè)重String掃描包含多個(gè)重String掃描表Scan 掃描參數(shù)

11、對(duì)ClassmaperClass Class 輸出值類(lèi)型,可為Jobmapreduce任務(wù)配boolean是否自動(dòng)添加依賴jarClass InputFormat實(shí)現(xiàn)有默認(rèn)使用TableInputFormat的函小象學(xué)extendsOutputFormatKEY,忽略KEY的實(shí)value必extendsOutputFormatKEY,忽略KEY的實(shí)value必須為Put或Delete對(duì)將Put或Delete直接寫(xiě)入HBase小象學(xué)目的regionserver服務(wù)實(shí)現(xiàn)類(lèi),目前沒(méi)遇到String輸出表Class?String輸出表ClassreducerJobmapreduce任務(wù)配Classma

12、preduce Partitioner可為空,可使用String目的表所在HBase集群zookeeper配格式為:zookeeper所在機(jī)器名(多個(gè)實(shí)例以,分隔):端口號(hào):HBase根節(jié)點(diǎn)StringserverClass、String目的region server服務(wù)實(shí)現(xiàn)類(lèi),目前沒(méi)遇到使用場(chǎng)可為boolean是否自動(dòng)添加依賴jar小象學(xué)協(xié)處理協(xié)處理類(lèi)似觸發(fā)器或回調(diào)函在特定事件發(fā)生后執(zhí)類(lèi)似存儲(chǔ)過(guò)通過(guò)RPC,調(diào)用regionserver端的計(jì)算過(guò)用戶表協(xié)處理器需要通過(guò)hbase shell或api部署小象學(xué)協(xié)處理observe協(xié)處理observesrObserrmesaerrrserr包含re

13、gioserver事件鉤增加了包含write ahead log事件鉤子,也就是寫(xiě)入數(shù)據(jù)多備鉤增加了包含調(diào)用endpoint事件的鉤RegionObserver的一小象學(xué)協(xié)處理協(xié)處理observe繼承提供了*Observer接口的默認(rèn)實(shí)某些有返回值的鉤子需要有默認(rèn)實(shí)覆蓋相關(guān)鉤子處小象學(xué)協(xié)處理全局observe部部署Jar協(xié)處理全局observe部部署Jar配置observeRegionServerObserver協(xié)處理器異常region server是否退建議為小象學(xué)協(xié)處理表observe協(xié)處理表observealter 表名, coprocessor=1 | 2 | 3 | 4 可以是hdf

14、s文件路徑,如果已經(jīng)部署到環(huán)境變量中可以忽2:協(xié)處理器類(lèi)必3:優(yōu)先正整型值,值越低優(yōu)先級(jí)越高,優(yōu)先級(jí)高的先被執(zhí)行,可為4:協(xié)處理器參格式為“參數(shù)名=值會(huì)被保存到Configuration對(duì)象小象學(xué)協(xié)處理協(xié)處理observe 對(duì)于表test_table的put操作,在put操作前先寫(xiě)入另外一小象學(xué)協(xié)處理協(xié)處理observe小象學(xué)協(xié)處理 endpoint協(xié)處理 endpoint定義編寫(xiě)region server端代繼承生成的實(shí)現(xiàn)Coprocessor, CoprocessorService接在客戶端通過(guò)HTable.coprocessorService的三個(gè)函數(shù)與regionobserve相小象學(xué)

15、協(xié)處理協(xié)處理 protobuf協(xié) 生成代小象學(xué)協(xié)處理協(xié)處理 region server端代小象學(xué)協(xié)處理協(xié)處理 客戶端編小象學(xué)協(xié)處理協(xié)處理 部 客戶端測(cè)小象學(xué)協(xié)處理可協(xié)處理可以輔助監(jiān)可以協(xié)助處理數(shù)例如輔助維護(hù)索引可以進(jìn)行統(tǒng)計(jì)操各region內(nèi)統(tǒng)客戶端處做歸并處但數(shù)據(jù)量不能太小象學(xué)協(xié)處理通過(guò)endpoint對(duì)協(xié)處理通過(guò)endpoint對(duì)大數(shù)據(jù)進(jìn)行統(tǒng)計(jì)甚至類(lèi)似join union的操endpoint性能與數(shù)據(jù)量有當(dāng)數(shù)據(jù)量很大時(shí),性能不如數(shù)據(jù)量大時(shí)容易因?yàn)橛?jì)算量大而超沒(méi)有對(duì)資源占用做出估使用多線程過(guò)多占用使用過(guò)多內(nèi)存,造成企圖使用靜態(tài)數(shù)據(jù)進(jìn)行跨region的計(jì)同region server可但大多數(shù)情況

16、region分布在不同region server小象學(xué)新浪微博微信新浪微博微信公號(hào)!數(shù)據(jù)數(shù)據(jù)遷移和備份工固定格式文固定格式文件HFile構(gòu)造數(shù)據(jù)文文件格式rowkey制表符col1value制表符執(zhí)行命令,生成mapreduce任在hadoop環(huán)境中配置hbase環(huán)境變參考練手中對(duì)hadoop-config.sh的修hadoop hbase jar /usr/lib/hbase/lib/hbase-server-.1.5.0-695- /usr/lib/hbase/hbase-名參小象學(xué)小小象學(xué)方式方式編寫(xiě)mpue,outputfom為執(zhí)行b生成hfiehadoop 表小象學(xué)小象小象學(xué)新版本

17、hadoop distcp 舊版本表文件目錄在“/hbase根目錄”0.94及以hbase hbck cd hbase org.jruby.Main add_table.rb /hbase根目錄/表小象學(xué)小象小象學(xué)hadoop jar hbasejar包 -D 表生成文件路版本數(shù) 起始時(shí)間戳 結(jié)束時(shí)間戳0.98中:正則表達(dá)式或者前綴(用于過(guò)濾小象學(xué)將export導(dǎo)出的文件中的數(shù)據(jù)導(dǎo)入將export導(dǎo)出的文件中的數(shù)據(jù)導(dǎo)入到hbasehadoop jar hbasejar包 -D 重命名列族名格式為“舊列族名:新列 如果指定,則任務(wù)會(huì)生成hfile用于后續(xù)的bulkload,而不直接寫(xiě)入 以下參會(huì)失 指定數(shù)據(jù)過(guò)濾類(lèi)型,如果指定可以在數(shù)據(jù)寫(xiě)入前進(jìn)行過(guò) 指定數(shù)據(jù)過(guò)濾器后,過(guò)濾器構(gòu)造函數(shù)所使用的參 Durability枚舉類(lèi)中枚舉值名,用于指定WAL延遲 WAL在原理部分會(huì)給出詳細(xì)小象學(xué)小象小象學(xué)hadoophadoopjarhbasejarcopytable(早期版本為”Copy -

溫馨提示

  • 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)論