HBase整套系统中哪些操作是正常的但却会引起region暂时不可用?

例如大量并发修改同一行,这里行锁会卡顿。
又例如手动转移region、rs宕机之后region重新上线未成功之前。
这里描述可能点乱,大概意思是从客户端的表现来讲,哪些时刻会没有任何返回或者返回错误(这里不是问整个HBase挂死或宕机时的表现,而是想了解有些场景是部分请求或者部分region不可用的场景)。
已邀请:

igloo1986

赞同来自:

不是所有的并发修改都会有锁竞争,只是普通的mutate拿的是行的读锁,互相不竞争的,只有icnrement之类的才是写锁。
 
除了宕机场景,主要就是region的reopen会导致短暂不可服务,以下四种会导致region重新上下线:
1. region schema修改,表会reopen 单region 秒级别
2. balance, region move的过程是先下线,再上线 单region 秒级别
3. region split, 表会下线,split后上线两个daughterregion,单region 秒级别
4. 如果做了资源分组,rsgroup, group_move_table操作,region重新上下线
 
能想到的,还有一些异常场景,比如写吞吐大的时候,磁盘压力大,flush慢,或者写热点,导致memstore大于 memstoreflushsize*block_multiplier, 会导致 RegioNToOBusyException等。。。。。类似的异常情况就很多了。
 

要回复问题请先登录注册