hbase 使用lzo_【hbase】Hbase最佳实践

本文探讨了HBase的最佳实践,包括压缩选择,推荐使用LZO和SNAPY,以平衡速度和效率。此外,调整块大小、设置合适的Scan Caching行数、WriteBuffer大小和Batch大小,以及批量导入数据的策略,都是优化HBase性能的关键。避免跨集群访问和使用Append操作也是提高效率的重要措施。
摘要由CSDN通过智能技术生成

1. 存储

1.1. 压缩

hbase默认不使用压缩进行存储,一般情况下,hbase是以大表的方式存在,如果不进行压缩的话,势必会造成空间的浪费。而且由于hbase是对随机访问进行优化的,所以需要采用压缩解压效率较高的算法。

压缩比大的算法但速度慢的算法,比如gzip,不太适合。推荐使用LZO和SNAPY压缩,以损失部分空间换取较高的响应速度。

1.2. 块大小

hbase块大小指定。默认值为64M,这个值和hadoop的块大小不太一样,hadoop的块大小是在文件存储时生效,hbase的块大小是指memstore一次性写入filestore的大小或者由filestore一次性读入memstore的大小。

对于数据读写比较频繁的表,需要适当调大hbase blocksize,可以减少大量的磁盘IO操作,同时提高读写效率。

1.3 布隆过滤器(bloomfilter)

指定布隆过滤器理论上可以提高读写速度,但会损失一定的存储空间用来保存索引。

2. 参数配置

2.1. 正确设置Scan Caching的行数

含义:Caching是Server端一次返回数据的行数,默认值是100,意即一次RPC请求中,Server端获取到100行数据后一次性返回;

影响:

若Caching值设置过大,RegionServer需要在内存中存储所有需要返回的结果,可能导致OutOfMemory;

若Caching值设置过大,Server获取这些数据需要很长时间(尤其是设置了过滤器),可能导致OutOfOrderSca

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值