參數(shù)說明:
設(shè)置表狀態(tài),表狀態(tài)包含:ENABLED, DISABLED, DISABLING, ENABLING
使用場景:
例如:disable一個表失敗,部分region除以RIT并且表的狀態(tài)DISABLING。
修復(fù)方法:
bypass掉該表以及region相關(guān)的Procedure任務(wù),然后使用setTableState將表的狀態(tài)置為DISABLED。為了保證region的狀態(tài)一致,建議重新enable該表后再disalbe一次。
使用方式:
hbase hbck -j /opt/hbase-hbck2-1.1.0.jar setTableState tableName state
setRegionState
參數(shù)說明:
該參數(shù)用于強制把meta表中的region狀態(tài)修改為指定的狀態(tài)。該參數(shù)一般需要配合assigns/unassigns命令使用。因為執(zhí)行assigns/unassigns命令需要region處于特定的狀態(tài),當(dāng)region狀態(tài)出現(xiàn)不一致,需要手動干預(yù)時,可能需要使用該命令強制將region修改為特定的轉(zhuǎn)改。
狀態(tài)包含:OFFLINE, OPENING, OPEN, CLOSING, CLOSED, SPLITTING, SPLIT,FAILED_OPEN, FAILED_CLOSE, ERGING, MERGED, SPLITTING_NEW, MERGING_NEW, ABNORMALLY_CLOSED
使用方式:
hbase hbck -j /opt/ hbase-hbck2-1.1.0.jar setRegionState regionName STATES
extraRegionsInMeta NAMESPACE|NAMESPACE:TABLENAME>...
參數(shù)說明:
找到額外的region,比如region在meta表,實際并沒有目錄,與reportMissingRegionsInMeta相反
參數(shù)解析:
-f 修復(fù)元數(shù)據(jù)并移除找到的所有的額外region
使用方式:
hbase hbck -j /opt/hbase-hbck2-1.1.0.jar extraRegionsInMeta namespace|namespace:tableName
使用場景:
類似hbase1中的found in META, but not in HDFS or deployed on any region server.
reportMissingRegionsInMeta ...
參數(shù)說明:
檢查HDFS和meta表中的region信息,并列出meta表中確實的region信息。需要注意:如果meta表中沒有表的state信息,該檢查不會對該表進行檢查;默認(rèn)檢查所有的表,可以指定一個或者多個namespace或者表,如果是default命名空間下的表,也需要指定命名空間。
使用方式:
hbase hbck -j /opt/hbase-hbck2-1.1.0.jar reportMissingRegionsInMeta namespace1|default:t2
filesystem [OPTIONS] [...]
參數(shù)說明:
命令主要修復(fù)與hdfs相關(guān)。主要用于修復(fù)/hbase目錄下的不一致問題,開源版本僅提供了修復(fù)損壞的HFile文件,錯誤的reference,HFileLink文件以及hbase.version文件問題;
華為MRS集群,增加了hbase1中的一些修復(fù),比如:region目錄的空洞,重疊,殘留的splitregion目錄等問題。
參數(shù)解析:
開源:
-f,--fix使用此選項可對損壞的HFile,錯誤鏈接和引用進行旁注。不修復(fù)hdfs holes、regioninfo缺失等問題。
華為:
-sidelineCorruptHFiles:檢查指定的表(默認(rèn)全部)是否存在損壞的HFile文件并修復(fù);
-fixReferenceFiles:用于檢查指定的表(默認(rèn)全部)是否存在損壞的HFile文件并修復(fù);
-fixReferenceFiles:用于檢查指定的表(默認(rèn)全部)是否存在損壞的HFile文件并修復(fù);
-fixVersionFile:用于檢查指定的表(默認(rèn)全部)是否存在損壞的HFile文件并修復(fù);該操作不再要求HBase服務(wù)可用;
-fix:作用等同于同時指定上面4個參數(shù),該參數(shù)為HBCK2開源版本提供的參數(shù),其余參數(shù)為MRS特有;
-fixHdfsOrphans: 用于檢查修復(fù)缺失.regioninfo文件的問題。如果該region目錄下沒有列簇目錄或者,無法修復(fù)。修復(fù)時先從meta表獲取該region的數(shù)據(jù)并重新生成.regioninfo文件,否則從該region下的hfile解析出startkey和endkey并生成.regioninfo文件。如果沒有hfile,則刪除該region目錄,然后需要通過-fixHdfsHoles修復(fù)region空洞;
-fixHdfsHoles:用于檢查和修復(fù)region空洞;
-fixHdfsOverlaps:用于檢查和修復(fù)region重疊;
-removeParents:如果parent和daughter region同時在線,強制下線parent;
-fixSplitParents:如果parent和daugh region部分或者都不在線,需要通過該參數(shù)進行修復(fù)。如果daughter region的信息沒有更新到meta表,則重新將parent region上線,否則嘗試將daughter region上線并清理parent region。如果此時Split region的Procedure任務(wù)還未結(jié)束,默認(rèn)不執(zhí)行修復(fù)操作。如果Split Procedure任務(wù)執(zhí)行超過一定時間(默認(rèn)60s),可以使用-force強制中止該問題。用戶還可以使用-timeout修改默認(rèn)的時間,單位為ms;
-fixTableOrphans:用于檢查修復(fù)缺少.tableinfo文件的問題,默認(rèn)從HMaster的緩存中獲取并重新生成.tableinfo文件,如果獲取失敗,則使用默認(rèn)的參數(shù)生成.tableinfo文件,這樣會導(dǎo)致用戶設(shè)置的參數(shù)丟失;
使用方式:
hbase hbck -j /opt/hbase-hbck2-1.1.0.jar filesystem OPTIONS tableName
fixMeta
參數(shù)說明:
2.2.1/2.1.6及其以后版本才存在的參數(shù),用戶修復(fù)meta表中存在的region空洞和重疊問題。該操作依賴CatalogJanitor Consistency Issues Report,主要是針對該report中的問題進行修復(fù)操作。如果meta表和HDFS目錄同時出現(xiàn)空洞,應(yīng)該先對meta表進行修復(fù);
使用方式:
hbase hbck -j /opt/hbase-hbck2-1.1.0.jar fixMeta
generateMissingTableDescriptorFile
參數(shù)說明:
修復(fù)表tableinfo,類似hbck1的fixTableOrphan.如果表目錄直接丟失,則不能正常修復(fù)。
修復(fù)過程中會先檢查TableDescriptor是否緩存在hmaster中,如果是,則直接通過緩存生成,如果不在,則通過表名、列族(表目錄確定)、默認(rèn)配置和列族描述符。
使用方式:
hbase hbck -j /opt/hbase-hbck2-1.1.0.jar generateMissingTableDescriptorFile tableName
scheduleRecoveries ...
參數(shù)說明:
創(chuàng)建一個SCP用來處理指定的ServerName。正常情況下,meta表中記錄的region所在的ServerName應(yīng)該是在線的RegionServer,但是記錄的ServerName已經(jīng)不存在,會導(dǎo)致region一致性的問題,需要通過此命令創(chuàng)建一個SCP來進行恢復(fù)。
使用方式:
hbase hbck -j /opt/ hbase-hbck2-1.1.0.jar replication -scheduleRecoveries sn1 sn2
二、修復(fù)Region重疊
1.執(zhí)行修復(fù)命令,檢查修復(fù)重疊region。
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar filesystem -fixHdfsOverlaps 表名
---->重疊region被合并,舊region被下線,狀態(tài)置為offline,清空hdfs上舊region目錄
2.執(zhí)行meta表清理命令,清除掉已經(jīng)被下線的region。
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar?extraRegionsInMeta -f namespace名:表名
--->meta表修復(fù),避免重新上線重疊region
3.重啟主HMaster,查看原生界面region狀態(tài),如果前面的命令執(zhí)行過程中有發(fā)現(xiàn)存在Hfile損壞的情況,執(zhí)行下面的命令修復(fù):
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar filesystem -fix 表名
注意:如果同時存在region重疊以及split問題時,且需要需要強制移除父region時,執(zhí)行以下命令:
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar filesystem -fixHdfsOverlaps?-removeParents
三、修復(fù) region空洞
1.執(zhí)行修復(fù)命令,檢查修復(fù)空洞region。
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar filesystem?-fixHdfsHoles

--->生成新的rgion目錄
2.把生成的region添加到meta表中:
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar?addFsRegionsMissingInMeta namespace名:表名
3.檢查新的region目錄信息是否完整,查看是否存在regioninfo和列族等信息
hdfs dfs -ls /hbase/data/dafault/表名/region名
如果沒有,需要執(zhí)行命令重新生成-fixHdfsOrphans
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar filesystem
4.上線region,執(zhí)行
hbase hbck -j /opt/client/HBase/hbase/tools/hbase-hbck2-*.jar?assigns?region名1?region名2
注意:操作過程中,從web ui上看到的region信息并非最新,需要根據(jù)meta表來確定,更新信息需要HM重新初始化。
四、 數(shù)據(jù)加載
修復(fù)后,需要查看HDFS上 hbase/.hbck目錄下是否存在文件,以及文件內(nèi)容,如果存在非refer文件,則需要重新Load到HBase中。
移動修復(fù)目錄下的內(nèi)容到新的目錄
hdfs dfs -mkdir /tmp/表名
hdfs dfs -mkdir /tmp/表名/列族名
hdfs dfs -mv /hbase/.hbck/....../表名/*/列族名?/tmp/表名/列族名
執(zhí)行l(wèi)oad命令
hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles -Dhbase.mapreduce.bulkload.max.hfiles.perRegion.perFamily=3000?/tmp/表名?表名
注意:-Dhbase.mapreduce.bulkload.max.hfiles.perRegion.perFamily表示每個region最多l(xiāng)oad的文件個數(shù),根據(jù)需要可進行調(diào)整。
五、、離線修復(fù)meta表命令
hbase_hbck2_path=$(find /opt/client -name hbase-hbck2-*.jar)
export HBASE_CLASSPATH="${hbase_hbck2_path}"
hbase org.apache.hbase.hbck1.OfflineMetaRepair
五、修復(fù)region closing或者opening狀態(tài)
1、移除/hbase/MasterProWAL
2、主備倒換HMaster
六、數(shù)據(jù)遷移修復(fù)
hbase 1.x直接使用repair
hbase2.x:
開源:未找到有效方式
華為MRS:
1、???? 停止hbase服務(wù)
2、???? 客戶端source環(huán)境變量后認(rèn)證
3、???? 客戶端執(zhí)行命令:
export HBASE_CLASSPATH="${HBASE_CLASSPATH}:/opt/hadoopclient/HBase/hbase/tools/hbase-hbck2-2.2.3-hw-ei-302022.jar";
hbase org.apache.hbase.hbck1.OfflineMetaRepair
4、???? 啟動hbase服務(wù)
EI企業(yè)智能 FusionInsight HBase MapReduce MapReduce服務(wù)
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
亚洲国产模特在线播放|
亚洲av无码无在线观看红杏|
亚洲色欲色欲综合网站|
亚洲综合色自拍一区|
亚洲婷婷国产精品电影人久久|
日日摸日日碰夜夜爽亚洲|
亚洲精品无码不卡在线播放|
亚洲精品无码专区|
亚洲欧美日韩自偷自拍|
亚洲欧美aⅴ在线资源|
亚洲jizzjizz在线播放久|
亚洲性线免费观看视频成熟|
国产精品亚洲一区二区麻豆|
亚洲无人区码一二三码区别图片|
亚洲无人区码一二三码区别图片|
亚洲av中文无码字幕色不卡|
久久水蜜桃亚洲AV无码精品|
九九精品国产亚洲AV日韩|
亚洲成在人线在线播放无码
|
亚洲精品国产国语|
久久综合久久综合亚洲|
亚洲精品国产第一综合99久久|
亚洲精品欧美综合四区|
九九精品国产亚洲AV日韩|
亚洲国产精品国产自在在线|
亚洲综合国产精品第一页|
亚洲色欲色欲www在线丝|
国产亚洲精品国产|
亚洲电影中文字幕|
亚洲婷婷在线视频|
国产成人亚洲综合一区|
亚洲精品欧美综合四区|
亚洲男人在线无码视频|
亚洲人成网7777777国产|
亚洲国产国产综合一区首页|
亚洲性无码av在线|
亚洲中文字幕无码中文字|
老司机亚洲精品影院在线观看|
亚洲国产精品日韩|
国产亚洲人成网站观看|
91大神亚洲影视在线|