客戶端API管理功能簡介

客戶端API可以管理HBase的集群、 表、 列族等元數(shù)據(jù)。大多數(shù)管理功能通過Admin來實現(xiàn),標簽除外。

1.列族管理 HColumnDescriptor

列族常見的屬性管理:

  • 數(shù)據(jù)生存時間:通過設(shè)置數(shù)據(jù)生存時間(TimeToLive, 縮寫為TTL) , HBase可以自動幫你清空超過生存時間的過期數(shù)據(jù)。
  • 版本數(shù):設(shè)置列族存儲的最大和最小版本數(shù)(Versions), 當某個單元格的數(shù)據(jù)存儲達到了最大版本數(shù)的數(shù)據(jù)的時候, 再插入新數(shù)據(jù)會將舊數(shù)據(jù)刪除。
  • 布隆過濾器:可以知道元素在HFile中是否“ 不存在” 或者“ 可能存在”
  • 塊緩存:使用內(nèi)存來記錄數(shù)據(jù), 適用于提升讀取性能。
  • 大字段(BOM):當文件大于100KB小于10MB, 即可以被視為MOB。 HBase存儲MOB字段的時候其實也是把該文件直接存儲到HDFS上, 而在表中只存儲了該文件的鏈接。

2.表管理HTableDescriptor

  • 最大文件尺寸(maxFileSize):設(shè)置該表的Region的最大尺寸。 如果有Region的大小超過了定義值, 則會觸發(fā)Region拆分
  • 只讀模式
  • Memstore刷寫值:設(shè)置Memstore刷寫值( memStoreFlushSize) 的最大值, 當Memstore存儲的數(shù)據(jù)大于該值就會觸發(fā)刷寫( flush)

3.Region管理

獲取服務(wù)器信息和region信息

Collection<ServerName> serverNames= admin.getClusterStatus().getServers();
        Iterator<ServerName> it=serverNames.iterator();
        while(it.hasNext()) {
            ServerName serverName=it.next();
            System.out.println("\nServer="+serverName.getServerName()+"擁有以下region:");
            
            List<HRegionInfo> regions =admin.getOnlineRegions(serverName);
            for(HRegionInfo region:regions) {
                System.out.println(region.getRegionNameAsString());
            }

4.快照管理

快照就是表在某個時刻的結(jié)構(gòu)和數(shù)據(jù)。 可以使用快照來將某個表快速恢復(fù)到某個時刻的結(jié)構(gòu)和數(shù)據(jù)。
原理:快照并不實際地復(fù)制數(shù)據(jù), 而是保存一份文件列表, 通過修改表所鏈接的文件來改變表的數(shù)據(jù)。
恢復(fù)快照操作包括:停用表-》恢復(fù)快照-》啟用表,例如:

admin.disableTable(TableName.valueOf("mytable"));
admin.restoreSnapshot("test_snapshot_1");
admin.enableTable(TableName.valueOf("mytable"));

5.維護工具管理

Admin提供了針對常見的HBase維護工具的調(diào)用方法,主要介紹:

  • 均衡器:HBase提供了一個均衡器用于自動均衡各個RegionServer之間的壓力
  • 規(guī)整器:用于規(guī)整Region的尺寸,自動調(diào)整Region的尺寸。
  • 目錄管理器:所謂的目錄指的就是hbase:meta表中存儲的Region信息。 當HBase在拆分( Split) 或者合并( merge) 的時候, 使用目錄管理器( catalog janitor) 來清理這些原來的Region信息

6.可見性標簽管理

介紹一個不由Admin接口提供的管理功能。通過給數(shù)據(jù)加上可見性標簽可以實現(xiàn)簡單的用戶,用戶組的權(quán)限控制。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文首先簡單介紹了HBase,然后重點講述了HBase的高并發(fā)和實時處理數(shù)據(jù) 、HBase數(shù)據(jù)模型、HBase物理...
    達微閱讀 2,827評論 1 13
  • 比特科技: 存儲、數(shù)據(jù)庫、大數(shù)據(jù)技術(shù) ? HBase原理和設(shè)計 http://www.bitstech.net/...
    葡萄喃喃囈語閱讀 763評論 0 11
  • 參考:http://www.itdecent.cn/p/569106a3008f 最近在逐步跟進Hbase的相關(guān)...
    博弈史密斯閱讀 925評論 1 1
  • 簡介 HBase —— Hadoop Database的簡稱,Google BigTable的另一種開源實現(xiàn)方式,...
    尼小摩閱讀 581評論 0 3
  • 簡介 HBase —— Hadoop Database的簡稱,Google BigTable的另一種開源實現(xiàn)方式,...
    編碼前線閱讀 322評論 0 0

友情鏈接更多精彩內(nèi)容