文档章节

hbase协处理的部署

岁月留痕
 岁月留痕
发布于 2015/12/21 20:35
字数 505
阅读 177
收藏 1


1.hbaseCoprocessor的简介

      HBase是一个分布式的存储体系,数据按照RowKey分成不同的Region,再分配给RegionServer管理。但是RegionServer只承担了存储的功能,如果Region能拥有一部分的计算能力,从而实现一个HBase框架上的MapReduce,那HBase的操作性能将进一步提升。正是为了解决这一问题,HBase 0.92版本后推出了Coprocessor -- 协处理器,一个工作在Master/RegionServer中的框架,能运行用户的代码,从而灵活地完成分布式数据处理的任务。

      Coprocessor包含两个组件,一个是EndPoint(类似关系型数据库的存储过程),用以加快特定查询的响应,另一个就是Observer(类似关系型数据库的触发器)。Observer也分为几个类型,其中RegionObserver提供了一组表数据操作的钩子函数,覆盖了GetPutScanDelete等操作(通常有prepost两种情况,表示在操作发生之前或发生之后),我们可以通过重载这些钩子函数,利用RegionServer实现特定的数据处理需求。


2.Coprocessors提供了两种部署方式:

1.    全局部署。把jar包的路径加入HBASE_CLASSPATH并且修改hbase-site.xml,这样Observer会对每一个表都生效。

<property>
<name>hbase.coprocessor.region.classes</name>
 <value>org.apache.hadoop.hbase.coprocessor. BaseRegionObserver </value>
</property>


2.    单表部署。通过HBase Shell修改表结构,加入coprocessor信息。

a)      进入HBase Shelldisable你希望加载的表

b)     通过以下指令激活Observer

alter 'table_name', METHOD => 'table_att', 'coprocessor' => ' hdfs://master:9000/HbaseCoprocessor.jar | test.CoprocessorObserverTest |1001'

c)      coprocessor对应的格式以|分隔,依次为:

  •         jar包的HDFS路径

  •         Observer的主类

  •         优先级(一般不用改)

d)     新安装的coprocessor会自动生成名称:coprocessor + $ + 序号(可通过describe 'table_name'查看)

e)     因为一张表可能拥有多个coprocessor,卸载需要输入对应的coprocessor名称,比如:

alter 'table_name', METHOD => 'table_att_unset', NAME=> 'coprocessor$1'

注:创建协处理器时需要把必要的jar,copy完整。

© 著作权归作者所有

岁月留痕
粉丝 3
博文 25
码字总数 25341
作品 0
郑州
私信 提问
Kylin集群部署和cube使用

Kylin集群部署和cube使用 安装集群环境 节点 Kylin节点模式 Ip 内存 磁盘 Node1 All 192.167.71.11 2G 80G Node2 query 192.168.71.12 1.5G 80G Node3 query 192.168.71.13 1.5G 80G Kylin工......

仔仔1993
2018/07/05
1K
0
Apache HBase 出现信息泄漏漏洞

Apache HBase 因为远程拒绝服务、发现信息泄露漏洞和信息完整性出现问题。 受影响的版本有: HBase 0.98.0 - 0.98.12 HBase 1.0.0 - 1.0.1 HBase 1.1.0 HBase 0.96(受波及了) 逻辑错误导致...

oschina
2015/05/26
2.4K
6
完全分布式集群(五)Hbase-1.2.6.1安装配置

环境信息 完全分布式集群(一)集群基础环境及zookeeper-3.4.10安装部署 hadoop集群安装配置过程 安装hive前需要先部署hadoop集群 完全分布式集群(二)hadoop2.6.5安装部署 Hbase集群安装部...

PeakFang-BOK
2018/10/16
123
0
HBase实操 | 使用Spark通过BulkLoad快速导入数据到HBase

HBase社区直播本期分享专家:明惠(网名:过往记忆)-阿里云数据架构师 视频地址: https://yq.aliyun.com/live/590?spm=a2c4e.11155435.0.0.460177969kCLxf PPT地址: https://yq.aliyun.com/...

hbase小能手
2018/11/16
0
0
Windows HBase2.2.0安装部署踩坑

下载安装 hbase下载 解压之后根目录,没有什么要修改的。 配置文件目录,主要修改hbase-env.cmd和hbase-site.xml hbase-env.cmd HBASEMANAGESZK值为false表示zookeeper外装,HBASEMANAGESZK的...

trayvon
06/25
87
0

没有更多内容

加载失败,请刷新页面

加载更多

CSS盒子模型

一、什么叫框模型 页面元素皆为框(盒子) 定义了元素框处理元素内容,内边距,外边距以及边框的计算方式 二、外边距 围绕在元素边框外的空白距离(元素与元素之间的距离) 语法:margin,定...

wytao1995
今天
4
0
Replugin借助“UI进程”来快速释放Dex

public static boolean preload(PluginInfo pi) { if (pi == null) { return false; } // 借助“UI进程”来快速释放Dex(见PluginFastInstallProviderProxy的说明) return PluginFastInsta......

Gemini-Lin
今天
4
0
Hibernate 5 的模块/包(modules/artifacts)

Hibernate 的功能被拆分成一系列的模块/包(modules/artifacts),其目的是为了对依赖进行独立(模块化)。 模块名称 说明 hibernate-core 这个是 Hibernate 的主要(main (core))模块。定义...

honeymoose
今天
4
0
精华帖

第一章 jQuery简介 jQuery是一个JavaScript库 jQuery具备简洁的语法和跨平台的兼容性 简化了JavaScript的操作。 在页面中引入jQuery jQuery是一个JavaScript脚本库,不需要特别的安装,只需要...

流川偑
今天
7
0
语音对话英语翻译在线翻译成中文哪个方法好用

想要进行将中文翻译成英文,或者将英文翻译成中文的操作,其实有一个非常简单的工具就能够帮助完成将语音进行翻译转换的软件。 在应用市场或者百度手机助手等各大应用渠道里面就能够找到一款...

401恶户
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部