开发者社区> 问答> 正文

在每天增量数据较大(每天大约5T左右)时,在设计表和Hbase整体的参数配置方面有何建议?

在每天增量数据较大(每天大约5T左右)时,在设计表和Hbase整体的参数配置方面有何建议?

展开
收起
芯在这 2021-12-05 21:39:42 342 0
1 条回答
写回答
取消 提交回答
  • Rowkey的设计,遵从几个原则,在长度方面在满足需求的情况下越短越好,因为数据在持久化文件Hfile中是按照keyvalue存储的,如果rowkey过长,数据量大的是后光rowkey就要占据很大空间,影响存储效率,第二个是满足散列原则,避免数据热点堆积现象的发生,还有必须保证rowkey的唯一性,并且覆盖尽可能多的业务场景 参数:hbase.regionserver.handler.count:rpc请求的线程数量,默认值是10,生产环境建议使用100,也不是越大越好,特别是当请求内容很大的时候,比如scan/put几M的数据,会占用过多的内存,有可能导致频繁的GC,甚至出现内存溢出。 hbase.hregion.max.filesize:默认是10G, 如果任何一个column familiy里的StoreFile超过这个值, 那么这个Region会一分为二,因为region分裂会有短暂的region下线时间(通常在5s以内),为减少对业务端的影响,建议手动定时分裂,可以设置为60G。 hbase.hstore.compaction.max:默认值为10,一次最多合并多少个storefile,避免OOM

    2021-12-05 21:39:59
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
大数据时代的存储 ——HBase的实践与探索 立即下载
Hbase在滴滴出行的应用场景和最佳实践 立即下载
阿里云HBase主备双活 立即下载