HBaseAdmin
类:org.apache.hadoop.hbase.client.HBaseAdmin
作用:提供了一个接口来管理 HBase 数据库的表信息。它提供的方法包括:创建表,删 除表,列出表项,使表有效或无效,以及添加或删除表列族成员等。
HBaseConfiguration
类:org.apache.hadoop.hbase.HBaseConfiguration
作用:对 HBase 进行配置
HTableDescriptor
类: org.apache.hadoop.hbase.HTableDescriptor
作用:包含了表的名字极其对应表的列族
HColumnDescriptor
类: org.apache.hadoop.hbase.HColumnDescriptor
作用:维护着关于列族的信息,例如版本号,压缩设置等。它通常在创建表或者为表添 加列族的时候使用。列族被创建后不能直接修改,只能通过删除然后重新创建的方式。列族被删除的时候,列族里面的数据也会同时被删除。
HTable
Put
类: org.apache.hadoop.hbase.client.Put
作用:用来对单个行执行添加操作
Get
类: org.apache.hadoop.hbase.client.Get
作用:用来获取单个行的相关信息
Result
类: org.apache.hadoop.hbase.client.Result
作用:存储 Get 或者 Scan 操作后获取表的单行值。使用此类提供的方法可以直接获取值 或者各种 Map 结构( key-value 对)
创建表
1 package com.shujia; 2 3 import org.apache.hadoop.conf.Configuration; 4 import org.apache.hadoop.hbase.HBaseConfiguration; 5 import org.apache.hadoop.hbase.HColumnDescriptor; 6 import org.apache.hadoop.hbase.HTableDescriptor; 7 import org.apache.hadoop.hbase.TableName; 8 import org.apache.hadoop.hbase.client.Admin; 9 import org.apache.hadoop.hbase.client.Connection; 10 import org.apache.hadoop.hbase.client.ConnectionFactory; 11 12 import java.io.IOException; 13 14 public class Demo01 { 15 public static void main(String[] args) throws IOException { 16 17 //创建配置,指定zk集群 18 Configuration conf = HBaseConfiguration.create(); 19 conf.set("hbase.zookeeper.quorum","master,node1,node2"); 20 21 //创建连接 22 Connection coon = ConnectionFactory.createConnection(conf); 23 24 //创建admin对象 25 Admin admin = coon.getAdmin(); 26 27 //创建表 28 HTableDescriptor test_api = new HTableDescriptor(TableName.valueOf("test_api")); 29 30 //创建列簇 31 HColumnDescriptor cf1 = new HColumnDescriptor("cf1"); 32 33 //配置列簇 34 cf1.setTimeToLive(20); //设置死亡时间20s 35 cf1.setMaxVersions(3); //设置版本 36 37 //增加列簇 38 test_api.addFamily(cf1); 39 40 //创建表 41 admin.createTable(test_api); 42 43 //关闭连接 44 coon.close(); 45 } 46 }