HBASE 操作:(一般先合并 region 然后再压缩)
一 Region 合并: merge_region regionname1,regionname2 ,true --true 代表强制合并, 一般要加上
一般要是将小文件根据配置的最大上限进行合并, 合并后最好清理一下 hdfs
二 Region 压缩:
我们以 test 表为例:
我们先创建一张不含任何压缩格式的 test 表, 并且向其导入 10 多 G 的数据
$ hadoop fs -du -h /hbase/data/default/ -- 查询 region 的文件大小
12.2 G /hbase/data/default/test
我们可以看到, 在未压缩之前, test 表的数据在 hdfs 上一共占用了 12.2G 的磁盘空间
1. disable test 表:
hbase> disable test
修改压缩格式:
2. hbase> alter test, NAME => c, COMPRESSION => snappy
需要注意的是, 修改压缩格式时, 必须一个列族一个列族的改
3. enable test 表:
hbase> enable test
enable 之后, 还需要做一次大合并才能让压缩格式生效:
4. hbase> major_compact test
需要注意的是, 千万不要在表繁忙期间执行大合并操作
describe test 表看一下有没有生效
还是很可观的大概可以减少原来两倍左右的空间占用
来源: http://www.bubuko.com/infodetail-2511496.html