HBase Java API 核心类主要有HBaseConfiguration,HBaseAdmin,HTable 和数据操作类组成。
1. HBaseConfiguration 类
HBaseConfiguration 是每一个HBase Client 都会使用到的对象,它代表HBase 配置信息。有两种构造方式。
public HBaseConfiguration()
public HBaseConfiguration(final Configuration c)
默认构造方式会尝试从hbase-default.xml 和hbase-site.xml 文件中读取配置。如果CLASSPATH 没有这两个文件,就需要自己配置,Windows 远程编写即需调用该构造函数。
2. HBaseAdmin 类
HBaseAdmin 类负责表的创建、销毁和查看操作,调用完毕后需要执行close 进行关闭。常用函数如下:
public HBaseAdmin(Configuration conf) //通过Configuration 对象构造HbaseAdmin对象
void createTable(HTableDescriptor desc) //创建表,等于shell 的create 命令
void disableTable(String tableName) //停用表,等于shell 的disable 命令
void deleteTable(String tableName) //销毁表,等于shell 的delete 命令
HTableDescriptor[] listTables() //查看当前HBase 里有哪些表,等于shell 的list命令
3. HTable 类
HTable 类负责数据的插入、查询和删除等到做,常用函数如下:
public HTable(Configuration conf, byte[] tableName) // 通过Configuration 和表名tableName 构造HTable 对象
void put(Put put) //插入数据,等于shell 的put 命令
void get(Get get) //查询数据,等于shell 的get 命令
void delete(Delete delete) //删除数据,等于shell 的delete 命令
ResultScanner getScanner(Scan scan) //扫描数据,等于shell 的scan 命令
4. HTableDescriptor 类
HtableDescriptor 类负责表的属性设置,常用函数如下:(www.daowen.com)
public HTableDescriptor(TableName.valueOf(String tableName)) //通过表名tableName构造HtableDescriptor 对象
void addFamily(HColumnDescriptor family) //向表中添加列簇
5. HColumnDescriptor 类
HColumnDescriptor 负责列簇的属性设置,常用函数如下:
public HColumnDescriptor(String familyName) //通过列簇名familyName 构造列簇对象
void setMaxVersions(int maxVersions) //设置列簇版本数
6. Put 类
Put 类负责向表中的列添加数据,常用函数如下:
public Put(byte[] row) //通过传入二进制的行健构造Put 对象
Put add(byte[] family, byte[] qualifier, byte[] value) //第一个参数是列簇的二进制,第二个参数是列的二进制,第三个参数是值的二进制,通过该函数构造具体向表中的哪个类插入数据
7. Get 类
Get 类负责查询数据,如果不使用addColumn 函数即为查询一行数据,常用函数如下:
public Get(byte[] row) //通过传入二进制的行健构造Get 对象
Get addColumn(byte[] family, byte[] qualifier) //第一个参数是列簇的二进制,第二个参数是列的二进制,通过该函数构造查询表中哪一列的值
Get void setMaxVersions(int maxVersions) //设置查询的版本数
8. Delete 类
Delete 类负责删除数据,常用函数如下:
public Delete(byte[] row) //通过传入二进制的行健构造Get 对象,表示删除一行数据
Delete deleteColumns(byte[] family, byte[] qualifier) //第一个参数是列簇的二进制,第二个参数是列的二进制,通过该函数构造删除表中哪一列的值
9. Result 类,ResultScanner 类和Cell 类
Result 类和ResultScanner 类为查询结果类,通过调用rawCells 即可得到一个Cell对象。Cell 对象包含了具体的查询内容,如列簇,列,时间戳和具体数据。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。