hbase 协处理器 部署_hbase 协处理器

本文介绍了如何在HBase中部署自定义协处理器。包括静态和动态加载协处理器的方法,详细步骤涵盖从上传jar包到HDFS,通过HBase shell命令行配置协处理器,并提供了解决协处理器异常及更新的策略。
摘要由CSDN通过智能技术生成

1、自定义协处理器

hbase 版本: 2.x

使用自定义的协处理器需要实现Coprocessor, RegionObserver, CoprocessorService这三个接口,如下图:

可以看出协处理器的加载分为静态加载和动态加载,静态加载需要修改hbase-site.xml配置文件,这将对所有的hbase表生效;如果单纯的只对某张表生效,需要通过hbase shell命令行方式进行动态的加载。

2、动态加载协处理器

这种方式想要对表的所有region生效,那么最好是将jar包放到hdfs上面,如下:

2.1 上传jar包

hadoop fs -put jar名字 /tmp

2.2 配置协处理器

# 操作表的时候需要关闭表:

hbase> disable 'test1'

# 加载协处理器

hbase> alter 'mytable', METHOD => 'table_att', 'coprocessor' => '/tmp/hbase-solr-1.1-SNAPSHOT.jar|com.xxx.hbase.coprocesser.SolrIndexCoprocessorObserver|1'

hbase> enable 'mytable' # 开启表

配置协处理器的结构如下:

hbase> alter 'mytable', METHOD => 'table_att', 'coprocessor' => '①|②|③|④'

解释下上面各个参数:

①:协处理器Jar包路径,要保证所有的RegionServer可读取到。也可以是本地路径,不过建议是放在HDFS上。

②:协处理器的完整类名。

③:协处理器优先级,整数表示。可以为空。

④:传递给协处理器的参数,可以为空。

注:各参数间不要有空格。

2.3 查看表的描述信息

2.4 卸载协处理器

hbase> disable 'mytable' # 禁用表,

hbase> alter 'mytable', METHOD => 'table_att_unset', NAME => 'coprocessor$1'

hbase> enable 'mytable' # 禁用表后启用表,

注意

① 如果协处理器实现的接口异常,从表对应的regionserver的日志里面将看到如下错误:

② 如果协处理器的代码重新改过了,需要做如下操作才能重新加载协处理器

方式1:重启regionserver

方式2:把jar包重新改名字,重新修改表的协处理器信息,否则表依然加载的是以前的信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值