大数据存储框架之HBase(2) 解压缩

本文地址:大数据存储框架之HBase(2) 解压缩

HBase作为大数据存储框架中性能等各方面都比较优秀的框架,面对着大量数据的冲击,我们一般会使用对数据进行压缩来进行存储。就像在Hive中,我们会用到LZO压缩,在Hadoop中,我们会使用Snappy压缩。

HBase中压缩算法的比较

以下数据是Google在2005年发布的一个测试数据。

Algorithm % remaining Encoding Decoding
GZIP 13.4% 21 MB/s 118 MB/s
LZO 20.5% 135 MB/s 410 MB/s
Zippy/Snappy 22.2% 172 MB/s 409 MB/s

数据来源HBase: The Definitive Guide

1)GZIP的压缩率最高,但是其实CPU密集型的,对CPU的消耗比其他算法要多,压缩和解压速度也慢;

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

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

下面是阿里云云数据库HBase版中关于几个压缩算法的开发指南。

业务类型 无压缩表大小 LZO(压缩率/解压速度MB/s) ZSTD(压缩率/解压速度MB/s) LZ4(压缩率/解压速度MB/s)
监控类 419.75T 5.82/372 13.09/256 5.19/463.8
日志类 77.26T 4.11/333 6.0/287 4.16/496.1
风控类 147.83T 4.29/297.7 5.93/270 4.19/441.38
消费记录 108.04T 5.93/316.8 10.51/288.3 5.55/520.3

HBase压缩的开启

创建表时开启压缩

create 'test', {NAME => 'info', VERSIONS => 1, COMPRESSION => 'LZO'}

已有的表开启压缩

disable 'test' ;
alter 'test', NAME => 'info', COMPRESSION => 'LZO'

enable 'test'
major_compact  'test'
发布了93 篇原创文章 · 获赞 24 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_33356083/article/details/103508083