hbase协处理器--创建endpoint协处理器

下载hbase-source之后,里面有相应的源代码,可以找到RowCountEndpoint.java,ExampleProto.java等一系列代码。通过阅读源代码以及其中的注释,我们可以知道,Hbase的很多的功能都是通过protobuf这个工具来生成代码,尤其是其中的RPC调用的工作,主要都是通过protobuf软件生成。

参看Roccount.java的代码,我们发现,一个协处理器必须要继承ExampleProto,coprocessor,coprocessorService三个类,其中ExampleProto是定义自己的RPC调用怪反,而其中两个是完成与hbase coprocessor框架融合等作用。一个自定义的协处理器,只要实现自己的的RPC调用规则,然后继承该三大类,就能完成endpoint的协处理器功能。

在这种想法的基础上,模仿RowCountEndpoint的代码,尝试从hbase中取出其中的数据,即通过endpoint协处理完成对数据的读取操作。

在这个过程中,先编写自己的.proto文件,安装protobuf.2.5.0软件,通过命令行输入protoc -I=.  --java_out=.  example.proto,生成自己的RPC调用规范,然后建立自己的协处理器。

在操作的过程主要出现问题:

1,过多的RPC连接,超过了最大的RPC连接数;刚开始尝试设置zookeeper的最大连接数,但是解决问题有限,然后阅读自己的协处理器代码,发现其中主要是每次得到一个数据的时候,都重新构造了table,导致RPC连接过度,改掉代码之后,问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值