Java操作HBase

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错
Java操作HBase

package Hbase;

import org.apache.Hadoop.conf.Configuration;

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.MasterNotRunningException;
import org.apache.hadoop.hbase.TableDescriptors;
import org.apache.hadoop.hbase.ZooKeeperConnectionException;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.ResultScanner;
import org.apache.hadoop.hbase.client.Scan;

public class HBaseAPP {

private static final String TABLE_NAME = “table1”;
private static final String FAMILY_NAME = “family1”;
private static final String ROW_KEYS = “rowKey1”;

public static void main(String[] args) throws Exception {
Configuration conf = HBaseConfiguration.create();
conf.set(“hbase.rootdir”, “hdfs://hadoop1:9000/hbase”);
// 使用eclipse时必须添加这个,否则无法定位
conf.set(“hbase.zookeeper.quorum”, “hadoop1”);
// HBaseAdmin用来创建表 删除表使用 alt+shift+l 抽取变量
HBaseAdmin hBaseAdmin = new HBaseAdmin(conf);
//创建表
//createTable(hBaseAdmin);
//删除表
//deleteTable(hBaseAdmin);
// HTable 插入 查询 使用

HTable hTable = new HTable(conf, TABLE_NAME);
//插入记录
//putRecord(hTable);
//查询记录
//getRecord(hTable);
//扫面
//scanRecord(hTable);
}

 

private static void scanRecord(HTable hTable) throws IOException {
Scan scan = new Scan();
ResultScanner scanner = hTable.getScanner(scan);
for (Result result : scanner) {
byte[] value = result.getValue(FAMILY_NAME.getBytes(), “age”.getBytes());
System.out.println(result+”\t”+new String(value));
}
}

 

private static void getRecord(HTable hTable) throws IOException {
Get get = new Get(ROW_KEYS.getBytes());
Result result = hTable.get(get);
byte[] value = result.getValue(FAMILY_NAME.getBytes(), “age”.getBytes());
System.out.println(new String(value));
}

 

private static void putRecord(HTable hTable) throws IOException {
Put put = new Put(ROW_KEYS.getBytes());
put.add(FAMILY_NAME.getBytes(), “age”.getBytes(), “28”.getBytes());
hTable.put(put);
hTable.close();
}

 

private static void deleteTable(final HBaseAdmin hBaseAdmin)
throws IOException {
hBaseAdmin.disableTable(TABLE_NAME);
hBaseAdmin.deleteTable(TABLE_NAME);
}

private static void createTable(HBaseAdmin hBaseAdmin) throws IOException {
if (!(hBaseAdmin.tableExists(TABLE_NAME))) {
HTableDescriptor hTableDescriptor = new HTableDescriptor(TABLE_NAME);
HColumnDescriptor family = new HColumnDescriptor(FAMILY_NAME);
hTableDescriptor.addFamily(family);
hBaseAdmin.createTable(hTableDescriptor);
}
}
}

HBase 的详细介绍请点这里
HBase 的下载地址请点这里

相关阅读

Hadoop+HBase搭建云存储总结 PDF http://www.linuxidc.com/Linux/2013-05/83844.htm

HBase 结点之间时间不一致造成regionserver启动失败 http://www.linuxidc.com/Linux/2013-06/86655.htm

Hadoop+ZooKeeper+HBase集群配置 http://www.linuxidc.com/Linux/2013-06/86347.htm

Hadoop集群安装&HBase实验环境搭建 http://www.linuxidc.com/Linux/2013-04/83560.htm

基于Hadoop集群的HBase集群的配置 http://www.linuxidc.com/Linux/2013-03/80815.htm

Hadoop安装部署笔记之-HBase完全分布模式安装 http://www.linuxidc.com/Linux/2012-12

未经允许不得转载:演道网 » Java操作HBase

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册