HBase客户端API使用

  • 时间:
  • 浏览:10
  • 来源:uu直播快3平台

MyTableReducer

1.HBaseInfo:保存了Configuration和Connection,并进行有些初始化的设置,如zk地址等

2.HBaseDDLUtil:继承HBaseInfo,通过父类的Configuration和Connection获得Admin实例并使用其提供的最好的土法子进行DDL操作

3.HBaseDMLUtil:继承HBaseInfo,通过父类的Configuration和Connection获得Table实例并使用其提供的最好的土法子进行DML操作

HBase有两套API,分别是1.0和2.0,在较新版本的HBase中使用1.0的API时,什么都类和最好的土法子都被标记为Deprecated,官方表示旧版本的API肯能在3.0版本中删除,什么都推荐使用2.0

本篇中使用的API均为2.0

2.0官方API文档

使用maven可不还要简单方便地管理jar包,pom文件示例如下:

篇幅中使用的HBase版本为1.1.2

时候 使用TableMapReduceUtil的initTableMapperJob/initTableReducerJob则是通过参数传递一种配置,下面给出具体的配置项

其中Admin和Table为HBase API中提供的还还有一个多多统一操作接口,在1.0中对应的是HAdmin和HTable

Admin对应的是DDL操作

Table对应的是相关表的DML操作

MyTableMapper

HBase API的使用可不还要归纳为一下有几个步骤:

要使用HBase的MapReduce API还要在pom文件中再加以下依赖:

1.获得Configuration实例:其中保存了环境和配置信息

2.在Configuration中设置zk和master的相关信息,肯能hbase的配置文件在环境变量中则不还要配置

3.获得Connection实例连接到zk

4.通过Connection实例获得Admin和Table实例调用其最好的土法子进行操作

HBase中的CRUD就有通过对应的对象来操作的,例如:

Put为新增,肯能记录肯能所处会用新值覆盖,为宜修改

Delete为删除

Get为查询

一种最好的土法子的设置效果是相同的,通过普通的最好的土法子进行设置的时候 还要配置TableInputFormat/TableOutputFormat的相关属性,如上的

驱动应用应用程序

示例代码以上传至Github

HBase提供了一套Java API来支持Java应用应用程序对HBase数据库的请求操作,在hbase shell中不能使用的都可不还要通过这套API来实现

为了应用应用程序的可维护性和方便调用,这里将HBase API提供的接口划分成了还还有一个多多类

initTableMapperJob

该类负责将Reducer的输出数据写入到HBase中

DDL操作

TableInputFormat

在上方的代码中可不还要就看,设置job的最好的土法子一种:MapReduce常用最好的土法子和HBase提供的TableMapReduceUtil工具类

该类将Reducer的输出类型限制为Mutation,Mutation是HBase中Delete/Put/Get/Append类的父类,也时候 说TableReducer将输出类型限制在这有几个类之中

自定义的Reducer类继承TableReducer,指定其输入的

用于读取HBase表数据并生成键值对

将数据表按照Region分割成split,既有有几个个Regions就有多个splits

时候 将Region按行键分成

和普通的Mapper的区别在于

TableMapper将输入的

作者:@小黑

篇幅有限,HBase工具类的代码已上传至Github

API文档中还有有些实用的函数那么接触到,希望在实践中可不还要操作一下

DML操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1010885678/article/details/51985735

initTableReducerJob

TableOutputFormat

HBase实现了TableInputFormat和TableOutputFormat用于读写HBase表

TableMapper类和TableReducer类,在使用MapReduce操作HBase的时候 可不还要借助你这名个多多类从HBase中读数据和写数据