一、安装好Hbase后,首先启动hdfs和yarn,然后启动Hbase
~$ start-dfs.sh
~$ start-yarn.sh
~$ start-hbase.sh
二、jps查看节点
三、输入hbase shell,进入hbase shell
四、打开eclipse,导入外部包(client-facing-thirdparty文件夹下所有,lib页面中文件夹以外所有外部包)
五、下面的代码分别演示如何采用Java API去创建表、插入数据、获取数据、查询数据等(代码中的“qiangzi-virtual-machine”改为你的hostname)。
package HbaseApi;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.Table;
import org.apache.hadoop.hbase.util.Bytes;
public class Hbasejava {
//删除表格
private void dropTable() throws Exception{
Configuration conf = new Configuration();
conf.set("hbase.zookeeper.quorum", "qiangzi-virtual-machine");
Connection connection = ConnectionFactory.createConnection(conf);
HBaseAdmin admin = (HBaseAdmin) connection.getAdmin();
admin.disableTable(TableName.valueOf("student"));
admin.deleteTable(TableName.valueOf("student"));
admin.close();
}
//获取数据
private void getData() throws Exception{
Configuration conf = new Configuration();
conf.set("hbase.zookeeper.quorum", "qiangzi-virtual-machine");
Connection connection = ConnectionFactory.createConnection(conf);
Table table = connection.getTable(TableName.valueOf("student"));
Get get = new Get(Bytes.toBytes("stu001"));
Result record = table.get(get);
String name = Bytes.toString(record.getValue(Bytes.toBytes("info"),Bytes.toBytes("name")));
System.out.println(name);
table.close();
}
//插入数据
private void insertData() throws Exception{
Configuration conf = new Configuration();
conf.set("hbase.zookeeper.quorum", "qiangzi-virtual-machine");
Connection connection = ConnectionFactory.createConnection(conf);
Table table = connection.getTable(TableName.valueOf("student"));
Put put = new Put(Bytes.toBytes("stu001"));
put.addColumn(Bytes.toBytes("info"),Bytes.toBytes("name"),Bytes.toBytes("Tom"));
table.put(put);
table.close();
}
//创建表格
private void createTable() throws Exception{
Configuration conf = new Configuration();
conf.set("hbase.zookeeper.quorum", "qiangzi-virtual-machine");
Connection connection = ConnectionFactory.createConnection(conf);
HBaseAdmin admin = (HBaseAdmin) connection.getAdmin();
HTableDescriptor htd = new HTableDescriptor(TableName.valueOf("student"));
HColumnDescriptor h1 = new HColumnDescriptor("info");
HColumnDescriptor h2 = new HColumnDescriptor("grade");
htd.addFamily(h1);
htd.addFamily(h2);
admin.createTable(htd);
admin.close();
}
public static void main(String[] args) throws Exception{
Hbasejava api = new Hbasejava();
//创建表格
api.createTable();
//插入数据
api.insertData();
//获取数据
api.getData();
//删除表格
api.dropTable();
System.out.println("successs!");
}
}
六、运行结果
1.创建表格
2.插入数据
3.获取数据
4.删除表格