摘要: 行锁的使用场景 row lock,行锁,顾名思义,就是给行级的锁。那什么场景下会需要加行锁?行锁的开销如何?对性能的影响如何?如何实现的?下面我们逐个分析。 锁的产生一般都是为了做互斥或者同步,对HBase来说,各个请求之间的互斥/同步关系如下: 读读:不涉及 读写:通过mvcc保证读写的一致性 写 阅读全文
posted @ 2018-09-23 17:09 cyhc 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 很长一段时间以来,一个region同一时间只能在一台RS(Region Server)中打开。如果一个region同时在多个RS上打开,就是multi-assign问题,会导致数据不一致甚至丢数据的情况,这是要避免和解决的。对于正常情况而言,region本质上是单点服务的,当RS宕机时,这个RS上的 阅读全文
posted @ 2018-09-08 17:19 cyhc 阅读(1345) 评论(0) 推荐(0) 编辑
摘要: HBase的核心存储结构是KeyValue类。这个类定义了HBase的数据模型,并贯穿了HBase的整个读写链路。同时,HBase自身的元数据管理也是使用了业务表相同的模式。所以,从底层了解KeyValue的格式和设计,会加深我们对HBase基础架构的理解,从而更好的使用和管理HBase。 阅读全文
posted @ 2018-09-02 15:40 cyhc 阅读(4641) 评论(0) 推荐(0) 编辑