• HBase启用压缩


    1. 压缩算法的比较

    算法 压缩比 压缩 解压
    GZIP 13.4% 21MB/s 118MB/s
    LZO 20.5% 135MB/s 410MB/s
    Snappy/Zippy 22.2% 172MB/s 409MB/s

    总结:

    1)GZIP的压缩率最高,但它是CPU密集型的,对CPU的消耗较多,压缩和解压速度也慢;

    2)LZO的压缩率居中,比GZIP要低一些,但是压缩和解压速度明显要比GZIP快很多,其中解压速度快的更多;

    3)Zippy/Snappy的压缩率最低,而压缩和解压速度要稍微比LZO要快一些

    所以,一般情况下,推荐使用Snappy和Zippy压缩算法。

    2. hbase表启用压缩的步骤

    这里分为两种情况:一是在创建表时指定压缩算法;二是在创建表后指定压缩算法或者修改压缩算法。

    2.1 创建表时指定压缩算法

    create 'test', {NAME => 'info', VERSIONS => 1, COMPRESSION => 'snappy'}
    # 表创建之后,使用describe命令查看表信息
    describe 'test'
    

    2.2 创建表后指定或修改压缩算法

    1. disable需要修改的表
    disable 'test'
    

    注意,如果表较大,disable需要一些时间,请耐心等待
    2) 使用alter命令进行更改

    alter 'test', NAME => 'info', COMPRESSION => 'snappy'
    

    NAME即column family,列族。HBase修改压缩格式,需要一个列族一个列族的修改,注意大小写,不要弄错了。如果修改错了,将会创建一个新的列族,且压缩格式为snappy。当然,假如你还是不小心创建了一个新列族的话,可以通过以下方式删除:

    alter 'test', {NAME=>'info', METHOD=>'delete'}
    
    1. 重新enable表
    enable 'test'
    
    1. 对表进行major_compact操作,使压缩生效
    major_compact  'test'
    

    注意,如果表的数据较多,该操作需要较长时间,所以尽量选择一个不忙的时间,避免对服务造成影响。

    修改完成后,可使用describe命令查看表信息

  • 相关阅读:
    今日头条、Face++开发岗面经
    美团offer面经
    成都百度测试开发一二面面经
    美团四面面经
    久邦数码(3G门户)面试
    58 面试
    好未来提前批
    百度提前批
    新浪面经
    Java Programs
  • 原文地址:https://www.cnblogs.com/leekeggs/p/9347362.html
Copyright © 2020-2023  润新知