HBase教程

HBase 客户端API

本章介绍 HBase 的 Java 客户端 API,用于对 HBase 表执行 CRUD 操作。 HBase 是用 Java 编写的,并有一个 Java Native API。因此,它提供了对数据操作语言 (DML) 的编程访问。

类 HBase 配置

将 HBase 配置文件添加到配置中。此类属于 org.apache.hadoop.hbase 包。

方法和说明

方法和说明
static org.apache.hadoop.conf.Configuration create()
此方法使用 HBase 资源创建配置。

HTable 类

HTable 是一个 HBase 内部类,代表一个 HBase 表。它是 table 的一种实现,用于与单个 HBase 表进行通信。这个类属于 org.apache.hadoop.hbase.client 类。

构造函数

构造函数和描述
HTable()
HTable(TableName tableName, ClusterConnection connection, ExecutorService pool)
使用这个构造函数,你可以创建一个访问HBase表的对象。

方法和说明

方法和说明
void close()
释放HTable的所有资源。
void delete(Delete delete)
删除指定的单元格/行。
boolean exists(Get get)
使用这个方法,你可以测试表中列是否存在,由Get指定。
Result get(Get get)
从给定的行中检索某些单元格。
org.apache.hadoop.conf.Configuration getConfiguration()
返回此实例使用的配置对象。
TableName getName()
返回该表的表名实例。
HTableDescriptor getTableDescriptor()
返回该表的表描述符。
byte[] getTableName()
返回此表的名称。
void put(Put put)
使用这个方法可以插入数据到表中。

Class Put

该类用于对单行执行 Put 操作。它属于 org.apache.hadoop.hbase.client 包。

构造函数

构造函数和描述
Put(byte[] row)
使用这个构造函数,你可以为指定的行创建一个Put操作。
Put(byte[] rowArray, int rowOffset, int rowLength)
使用此构造函数,您可以将传入的行键复制到保持本地。
Put(byte[] rowArray, int rowOffset, int rowLength, long ts)
使用这个构造函数,可以复制传入的行键保持本地。
Put(byte[] row, long ts)
使用这个构造函数,我们可以使用给定的时间戳为指定的行创建一个 Put 操作。

方法

方法和说明
Put add(byte[] family, byte[] qualifier, byte[] value)
将指定的列和值添加到此 Put 操作中。
Put add(byte[] family, byte[] qualifier, long ts, byte[] value)
添加指定的列和值,用指定时间戳作为此 Put 操作的版本。
Put add(byte[] family, ByteBuffer qualifier, long ts, ByteBuffer value)
添加指定的列和值,以指定的时间戳作为它的此 Put 操作的版本。
Put add(byte[] family, ByteBuffer qualifier, long ts, ByteBuffer value)
添加指定的列和值,以指定的时间戳作为它的此 Put 操作的版本。

Class Get

该类用于对单行执行Get操作。此类属于 org.apache.hadoop.hbase.client 包。

构造函数

构造函数和描述
Get(byte[] row)
使用这个构造函数,你可以为指定的行创建一个Get操作。
Get(Get get)

方法

方法和说明
Get addColumn(byte[] family, byte[] qualifier)
从具有指定限定符的特定族中检索列。
Get addFamily(byte[] family)
从指定的族中检索所有列。

Class Delete

该类用于对单行执行删除操作。要删除整行,请使用要删除的行实例化一个 Delete 对象。此类属于 org.apache.hadoop.hbase.client 包。

构造函数

构造函数和描述
Delete(byte[] row)
为指定行创建删除操作。
Delete(byte[] rowArray, int rowOffset, int rowLength)
为指定的行和时间戳创建删除操作。
Delete(byte[] rowArray, int rowOffset, int rowLength, long ts)
为指定的行和时间戳创建删除操作。
Delete(byte[] row, long timestamp)
为指定的行和时间戳创建删除操作。

方法

方法和说明
删除 addColumn(byte[] family, byte[] qualifier)
删除指定列的最新版本。
删除a​​ddColumns(byte[] family, byte[] qualifier, long timestamp)
删除时间戳小于等于的指定列的所有版本到指定的时间戳。
Delete addFamily(byte[] family)
删除指定系列的所有列的所有版本。
Delete addFamily(byte[] family, long timestamp)
删除指定族中时间戳小于或等于指定时间戳的所有列。

Class Result

此类用于获取 Get 或 Scan 查询的单行结果。

构造函数

构造函数
Result()
使用此构造函数,您可以创建一个没有 KeyValue 负载的空 Result;如果调用原始 Cells(),则返回 null。

方法

方法和说明
byte[] getValue(byte[] family, byte[] qualifier)
该方法用于获取指定列的最新版本。
byte[] getRow()
此方法用于检索与创建此 Result 的行对应的行键。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4