Archive | Hbase RSS feed for this section

HBASE-1968 ISSUE Report

整理资料的时候发现笔记本里outlook标红的几封邮件,归档下。不涉及team的legal和copyright的。描述了定位调查和汇报HBASE-1968的过程。只记得但是发现认为是个很低级的bug。在邮件中再看下才详细了解了下。

 

 

—————————————————–START——————————————————————————

Hi Andrew,

Thanks for your information.

Best regards

-Forrest

—–Original Message—–

From: Andrew Purtell[......]

阅读全文

Tags: , , ,

Comments { 1 }

【Hbase代码笔记】Put

记录HBase 进行一个Put的过程。

1. Client端通过HTable发起Put操作

2. Htable的flushCommits方法使用服务端的连接 来处理提交。和Hadoop Cilent的提交是完全一样的思路

Htable在通过自身的writeBuffer缓存后,会刷新提交

3. Htable 通过HConnection(其实是TableServers类型) 类型的connection发起提交。在Hbase构造时候

4. TableServers类的processBatchOfRows

5[......]

阅读全文

Tags: , , ,

Comments { 0 }

【HBase代码笔记】获取Region信息

通过表名和Row获取Region获取Region

 

根据table名和row获取region信息

TableServers#locateRegion(final byte [] tableName,????? final byte [] row, boolean useCache)

 

HRegionLocation locateRegionInMeta(final byte [] parentTable,????? final byte [] tableName, final byte [] row, boolean useCache)

其实是一存放metadata的regionserver

HRegionInterface getHRegionConnection(

??????? HServerAddr[......]

阅读全文

Tags: ,

Comments { 0 }

【HBase代码笔记】RPC

 

Hbase RPC

@todo 草稿,未整理

在客户端调用一个接口方法的过程

 

对应的接口创建了一个代理

HMasterInterface tryMaster = (HMasterInterface)HBaseRPC.getProxy(

??????????????? HMasterInterface.class, HBaseRPCProtocolVersion.versionID,

???????????? ???masterLocation.getInetSocketAddress(), this.conf);

 

Java的反射机制可以使得对这个方法的调用被派发到这个代理类上面。

VersionedProtocol proxy =

??????? (VersionedProtocol)[......]

阅读全文

Tags: ,

Comments { 0 }