![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HBase
文章平均质量分 59
fantuanbaba
这个作者很懒,什么都没留下…
展开
-
Hbase优化之预分区
如果在hbase shell中使用create建表时只写了表名和列族名,那么这张表将只有一个region ,当一个region的大小超过阈值时会自动split成两个,但split操作会带来资源消耗。region个数太少时,在数据量大、访问量大,或被批处理程序读写情况下性能可能会很差,并且伴随大批量读写而来的GC可能会使regionserver宕机,接着region被transit到其他节点...原创 2018-06-26 10:14:43 · 2032 阅读 · 0 评论 -
MapReduce over HBase Snapshot
背景 工作中有很多使用HBase作为批处理源和目标的场景。之前已经做过很多优化措施,基本原则就是减少对RegionServer的影响,特别是降低RegionServer GC的时间,比如写入时先写HFile再BulkLoad、使用Filter尽量只读取需要的行和列、使用G1GC等等。但是读取HBase表数据要通过RegionServer的堆,在大批量处理的程序中可能会带来长时间GC...原创 2018-11-26 15:32:52 · 751 阅读 · 0 评论 -
HBase优化之避免数据倾斜
相关知识 数据存入hbase表时会按照rowkey落在不同的region中,每个region都有边界(除非你只有一个region)startrow和endrow,rowkey在表中是按照ASCⅡ码排序的。 例如下图中的region情况,如果有一个rowkey是006123456,它在0050和0100之间,因此它会被放在第二个region中。 region被regionserver管理,...原创 2018-11-27 09:40:45 · 2760 阅读 · 0 评论 -
Phoenix与我理解的不一样
概述 2018年在工作中接触了Phoenix,研究之后发现其实现原理与我初步的理解不太一样,相信对于很多做过数据库开发、用过HBase、又刚刚接触Phoenix的人来说也是这样,本文说几个点供大家参考,如果有误也希望大家能帮忙指出。 谁来做执行计划? 在一般的关系型数据库中,数据库优化器会根据表和索引情况、统计信息等做出SQL的执行计划,这个过程是在服务端进行的。 ...原创 2019-01-12 23:43:39 · 500 阅读 · 0 评论 -
Phoenix调优——元数据相关
概述 在使用Phoenix的过程中发现一些性能问题,最终发下都与元数据相关。本文描述了2个元数据方面的调优手段,希望能够对大家有所帮助。 背景 Phoenix 集群数据由Spark Streaming程序写入,现象是在写入数的同时进行查询,响应时间会很长(大概在5秒以上),把spark streaming 程序停掉后响应时间就恢复正常(秒内)。Phoenix ...原创 2019-01-19 18:18:19 · 1103 阅读 · 0 评论 -
Phoenix优化——关于影响查询并发量的因素
概述 本文针对一个实际的项目中影响 Phoenix并发量2个因素进行介绍,希望能对大家有所帮助。 背景 刚上线时phoenix并发量和响应时间一直不理想,表现出两个问题,一是极其简单的点查(where in条件、走索引)单客户端并发量只有几十,二是多个客户端同时压测时tps反而会下降。尝试调了诸如threadPoolSize 等参数都没有明显提升。 踩坑CUR...原创 2019-01-31 22:42:40 · 1952 阅读 · 1 评论