HBase表备份&预分区

来源:互联网 发布:阿里云身份证识别demo 编辑:程序博客网 时间:2024/06/06 13:10

HBase表备份

在HBase中,一般来说会预先设计RowKey,一个合理的rowkey设计不仅会影响到后续使用过程中的查询速度,对于数据的存储也是有一定影响的。不合理的rowkey设计会导致热读或者热写。假如初始阶段未做好rowkey的设计,并没有做合理的预分区,可能在后面过程中,会做表的备份,然后对原表做预分区,再讲数据导入原表,下面看下表备份:

01. hbase shell> disable 'tableName'02. hbase shell> snapshot 'tableName', 'tableSnapshot'03. hbase shell> clone_snapshot 'tableSnapshot', 'newTableName'04. hbase shell> delete_snapshot 'tableSnapshot'05. hbase shell> drop 'tableName'

HBase表预分区

HBase表预分区通常情况下,预分区比较多,会把预分区边界写到文件中,使用如下方式进行预分区:

create 'News',{NAME =>'I', VERSIONS=>'1' COMPRESSION => 'SNAPPY'}, {SPLITS_FILE => 'region_split_info.txt'}

其中,region_split_info.txt的内容类似:

0001|  0002|  0003|

之后可以到hbase的管理页面查看表的具体分区。