本章介绍用于在HBase表上执行 CRUD 操作的HBase的Java客户端API. HBase是用Java编写的,它有一个Java Native API.因此,它提供对数据操作语言(DML)的编程访问.
将HBase配置文件添加到配置.此类属于 org.apache.hadoop.hbase 包.
S.No. | 方法和描述 |
---|---|
1 | static org.apache.hadoop.conf.Configuration create() 此方法使用HBase资源创建配置. |
HTable是一个表示HBase表的HBase内部类.它是用于与单个HBase表通信的表的实现.此类属于 org.apache.hadoop.hbase.client 类.
S.No. | 构造函数和描述 |
---|---|
1 | HTable() |
2 | HTable(TableName tableName,ClusterConnection连接,ExecutorService池) 使用此构造函数,您可以创建一个对象来访问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() 返回此实例使用的Configuration对象. |
6 | TableName getName() 返回此表的表名实例. |
7 | HTableDescriptor getTableDescriptor() 返回此表的表描述符. |
8 | byte [] getTableName() 返回此表的名称. |
9 | void put(Put put) 使用此方法,您可以将数据插入表中. |
此类用于对单行执行Put操作.它属于 org.apache.hadoop.hbase.client 包.
S.No. | 构造函数和描述 |
---|---|
1 | Put(byte []行) 使用此构造函数,您可以为指定的行创建Put操作. |
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操作,给定的t imestamp. |
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操作.此类属于 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对象.此类属于 org.apache.hadoop.hbase.client 包.
S.No. | 构造函数和描述 |
---|---|
1 | Delete(byte[] row) 为指定的行创建一个Delete操作. |
2 | Delete(byte[] rowArray, int rowOffset, int rowLength) 为指定的行和时间戳创建一个删除操作. |
3 | Delete(byte[] rowArray, int rowOffset, int rowLength, long ts) 为指定的行和时间戳创建一个删除操作. |
4 | Delete(byte[] row, long timestamp) 为指定的行和时间戳创建一个删除操作. |
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) 删除指定系列的所有列,其时间戳小于或等于指定的时间戳. |
本课程用于获取Get或Scan查询的单行结果.
S.No. | 构造函数 |
---|---|
1 | Result() 使用此构造函数,您可以创建一个空结果没有KeyValue有效载荷;如果调用raw Cells(),则返回null. |
S.No. | 方法和描述 |
---|---|
1 | byte[] getValue(byte[] family, byte[] qualifier) 此方法用于获取指定列的最新版本. |
2 | byte [] getRow() 此方法用于检索与创建此Result的行对应的行键. |