Hbase记录-HBase客户端API
本章介绍用于对HBase表上执行CRUD操作的HBase Java客户端API。 HBase是用Java编写的,并具有Java原生API。因此,它提供了编程访问数据操纵语言(DML)。
HBaseConfiguration类
添加 HBase 的配置到配置文件。这个类属于org.apache.hadoop.hbase包。
方法及说明
| S.No. | 方法及说明 | 
|---|---|
| 1 | 
 static org.apache.hadoop.conf.Configuration create() 此方法创建使用HBase的资源配置  | 
HTable类
HTable表示HBase表中HBase的内部类。它用于实现单个HBase表进行通信。这个类属于org.apache.hadoop.hbase.client类。
构造函数
| S.No. | 构造函数 | 
|---|---|
| 1 | 
 HTable()  | 
| 2 | 
 HTable(TableName tableName, ClusterConnection connection, ExecutorService pool) 使用此构造方法,可以创建一个对象来访问HBase表。  | 
方法及说明
| S.No. | 构造函数 | 
|---|---|
| 1 | 
 void close() 释放HTable的所有资源  | 
| 2 | 
 void delete(Delete delete) 删除指定的单元格/行  | 
| 3 | 
 boolean exists(Get get) 使用这个方法,可以测试列的存在,在表中,由Get指定获取。  | 
| 4 | 
 Result get(Get get) 检索来自一个给定的行某些单元格。  | 
| 5 | 
 org.apache.hadoop.conf.Configuration getConfiguration() 返回此实例的配置对象。  | 
| 6 | 
 TableName getName() 返回此表的表名称实例。  | 
| 7 | 
 HTableDescriptor getTableDescriptor() 返回此表的表描述符。  | 
| 8 | 
 byte[] getTableName() 返回此表的名称。  | 
| 9 | 
 void put(Put put) 使用此方法,可以将数据插入到表中。  | 
Put类
此类用于为单个行执行PUT操作。它属于org.apache.hadoop.hbase.client包。
构造函数
| S.No. | 构造函数和描述 | 
|---|---|
| 1 | 
 Put(byte[] row) 使用此构造方法,可以创建一个将操作指定行。  | 
| 2 | 
 Put(byte[] rowArray, int rowOffset, int rowLength) 使用此构造方法,可以使传入的行键的副本,以保持到本地。  | 
| 3 | 
 Put(byte[] rowArray, int rowOffset, int rowLength, long ts) 使用此构造方法,可以使传入的行键的副本,以保持到本地。  | 
| 4 | 
 Put(byte[] row, long ts) 使用此构造方法,我们可以创建一个Put操作指定行,用一个给定的时间戳。  | 
方法
| S.No. | 方法及描述 | 
|---|---|
| 1 | 
 Put add(byte[] family, byte[] qualifier, byte[] value) 添加指定的列和值到 Put 操作。  | 
| 2 | 
 Put add(byte[] family, byte[] qualifier, long ts, byte[] value) 添加指定的列和值,使用指定的时间戳作为其版本到Put操作。  | 
| 3 | 
 Put add(byte[] family, ByteBuffer qualifier, long ts, ByteBuffer value) 添加指定的列和值,使用指定的时间戳作为其版本到Put操作。  | 
| 4 | 
 Put add(byte[] family, ByteBuffer qualifier, long ts, ByteBuffer value) 添加指定的列和值,使用指定的时间戳作为其版本到Put操作。  | 
Get类
此类用于对单行执行get操作。这个类属于org.apache.hadoop.hbase.client包。
构造函数
| S.No. | 构造函数和描述 | 
|---|---|
| 1 | 
 Get(byte[] row) 使用此构造方法,可以为指定行创建一个Get操作。  | 
| 2 | Get(Get get) | 
方法
| S.No. | 构造函数和描述 | 
|---|---|
| 1 | 
 Get addColumn(byte[] family, byte[] qualifier) 检索来自特定列家族使用指定限定符  | 
| 2 | 
 Get addFamily(byte[] family) 检索从指定系列中的所有列。  | 
Delete类
这个类用于对单行执行删除操作。要删除整行,实例化一个Delete对象用于删除行。这个类属于org.apache.hadoop.hbase.client包。
构造函数
| S.No. | 构造方法和描述 | 
|---|---|
| 1 | 
 Delete(byte[] row) 创建一个指定行的Delete操作。  | 
| 2 | 
 Delete(byte[] rowArray, int rowOffset, int rowLength) 创建一个指定行和时间戳的Delete操作。  | 
| 3 | 
 Delete(byte[] rowArray, int rowOffset, int rowLength, long ts) 创建一个指定行和时间戳的Delete操作。  | 
| 4 | 
 Delete(byte[] row, long timestamp) 创建一个指定行和时间戳的Delete操作。  | 
方法
| S.No. | 构造方法和描述 | 
|---|---|
| 1 | 
 Delete addColumn(byte[] family, byte[] qualifier) 删除指定列的最新版本。  | 
| 2 | 
 Delete addColumns(byte[] family, byte[] qualifier, long timestamp) 删除所有版本具有时间戳小于或等于指定的时间戳的指定列。  | 
| 3 | 
 Delete addFamily(byte[] family) 删除指定的所有列族的所有版本。  | 
| 4 | 
 Delete addFamily(byte[] family, long timestamp) 删除指定列具有时间戳小于或等于指定的时间戳的列族。  | 
Result类
这个类是用来获取Get或扫描查询的单行结果。
构造函数
| S.No. | 构造函数 | 
|---|---|
| 1 | 
 Result() 使用此构造方法,可以创建无Key Value的有效负载空的结果;如果调用Cells()返回null。  | 
方法
| S.No. | 方法及描述 | 
|---|---|
| 1 | 
 byte[] getValue(byte[] family, byte[] qualifier) 此方法用于获取指定列的最新版本  | 
| 2 | 
 byte[] getRow() 此方法用于检索对应于从结果中创建行的行键。  | 
Hbase记录-HBase客户端API的更多相关文章
- Hbase记录-HBase性能优化指南
		
垃圾回收优化当region服务器处理大量的写入负载时,繁重的任务会迫使JRE默认的内存分配策略无法保证程序的稳定性 所以我们可能需要对region服务器的垃圾回收机制进行一些参数调整(因为master ...
 - Hbase记录-Hbase基础概念
		
HBase是什么? HBase是建立在Hadoop文件系统之上的分布式面向列的数据库.它是一个开源项目,是横向扩展的. HBase是一个数据模型,类似于谷歌的大表设计,可以提供快速随机访问海量结构化数 ...
 - Hbase记录-Hbase shell使用
		
HBase Shell HBase包含可以与HBase进行通信的Shell. HBase使用Hadoop文件系统来存储数据.它拥有一个主服务器和区域服务器.数据存储将在区域(表)的形式.这些区域被分割 ...
 - Hbase记录-Hbase介绍
		
Hbase是什么 HBase是一种构建在HDFS之上的分布式.面向列的存储系统,适用于实时读写.随机访问超大规模数据的集群. HBase的特点 大:一个表可以有上亿行,上百万列. 面向列:面向列表(簇 ...
 - Hbase记录-Hbase配置项
		
hbase.tmp.dir:本地文件系统的临时目录,默认是java.io.tmpdir/hbase−java.io.tmpdir/hbase−{user.name}: hbase.rootdir:hb ...
 - Hbase记录-HBase扫描/计数/权限
		
HBase扫描 scan 命令用于查看HTable数据.使用 scan 命令可以得到表中的数据.它的语法如下: scan ‘<table name>’ 下面的示例演示了如何使用scan ...
 - Hbase记录-HBase增删改查
		
HBase创建数据 本章将介绍如何在HBase表中创建的数据.要在HBase表中创建的数据,可以下面的命令和方法: put 命令, add() - Put类的方法 put() - HTable 类 ...
 - Hbase记录-HBase基本操作(二)
		
HBase Exists 可以使用exists命令验证表的存在.下面的示例演示了如何使用这个命令. hbase(main):024:0> exists 'emp' Table emp doe ...
 - Hbase记录-HBase基本操作(一)
		
HBase创建表 可以使用命令创建一个表,在这里必须指定表名和列族名.在HBase shell中创建表的语法如下所示. create ‘<table name>’,’<column ...
 
随机推荐
- 查看Linux机器名
			
uname -a hostname vim /etc/sysconfig/network
 - MySql连接空闲8小时自动断开引起的问题
			
一.问题描述  最近遇到了一个奇怪的MySql数据库问题,好几次前一天晚上历史数据还正常存储,第二天早上来了看实时数据存储还正常,历史数据不存储了.找了好久也没找到问题.后来仔细想了想,历史数据设置 ...
 - 给定一个 hashMap 最终输出最大值的键
			
/** * * 类 描 述:机试题: 给定一个 hashMap 最终输出最大值的键 * 作 者: 赵 鹏 * 时 间:2017年7月4日 下午6:51:06 */ public class Test ...
 - js 錯誤
			
try{ //需要被檢測是否拋出錯誤 } catch(err) { //錯誤處理代碼 } try.catch成對出現 throw:拋出錯誤 當錯誤發生時,javascript引擎停止運行,并生成一個錯 ...
 - CentOS常用包安装
			
安装rz和sz命令: yum install lrzsz 安装unzip:yum install unzip
 - Highcharts之饼图
			
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
 - Linux 编译命令参数
			
基本格式:gcc [options] file1 file2... //若不加入参数,则按默认参数依次执行编译.汇编和链接操作,生成的可执行文件名为 a.out 常用参数:-E //只执行预处理操作 ...
 - Directory操作
			
操作文件夹 CreateDirectory() 创建新文件夹 Delete() 删除 Move() 剪切 Exists() 判断文件夹是否存在 //获取当前目录下所有文件夹的路径 Directory. ...
 - P3760 [TJOI2017]异或和
			
题目描述 在加里敦中学的小明最近爱上了数学竞赛,很多数学竞赛的题都是与序列的连续和相关的.所以对于一个序列,求出它们所有的连续和来说,小明觉得十分的简单.但今天小明遇到了一个序列和的难题,这个题目不仅 ...
 - IO模型介绍 以及同步异步阻塞非阻塞的区别
			
阻塞:用户进程访问数据时,如果未完成IO,等待IO操作完成或者进行系统调用来判断IO是否完成非阻塞:用户进程访问数据时,会马上返回一个状态值,无论是否完成 同步:用户进程发起IO(就绪判断)后,轮 ...