设为首页 加入收藏

TOP

Java读写HBase简单例子
2019-01-07 13:46:42 】 浏览:57
Tags:Java 读写 HBase 简单 例子
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hxg117/article/details/84105817

几个概念:

  • 表 Table。 表由行和列组成。
  • 行 Row。每行都由 Row Key 来标识。
  • 列族 ColumnFamily。表由列族组成。
  • 列限定符 Qualifier。也就是列,每个列族由多个列组成。列可以动态创建
  • 单元格。通过行,列族和列限定符定位一个单元格
  • 时间戳 。每个单元格都有多个版本。

创建表的时候需要指定表的名字,以及所有的列族。
插入数据到HBase时,需要指定表,行键,列族,列限定符,以及单元格的数据。
查找时,需要指定表和行键,也可以指定列族和列限定符。

下载并启动HBase,然后运行下面代码。

public static void main(String[] args) throws Exception {
	Configuration conf = HBaseConfiguration.create();		
	Connection cn = ConnectionFactory.createConnection(conf);
	Admin admin = cn.getAdmin();

	String columnFamily= "score";
	String columnQualifier = "math";
	String row = "Andy";
	
	//Create
	TableName tableName = TableName.valueOf("test_table");
	ColumnFamilyDescriptor family = ColumnFamilyDescriptorBuilder.of(columnFamily);
	TableDescriptor desc = TableDescriptorBuilder.newBuilder(tableName).setColumnFamily(family).build();
	admin.createTable(desc);
	System.out.println("Create done");
	
	//Insert
	Table table = cn.getTable(tableName);
	Put put = new Put(row.getBytes());
	put.addColumn(columnFamily.getBytes(), columnQualifier.getBytes()
		    

, "100".getBytes()); table.put(put); table.close(); System.out.println("Insert done"); //Get table = cn.getTable(tableName); Get get = new Get(row.getBytes()); get.addColumn(columnFamily.getBytes(), columnQualifier.getBytes()); Result result = table.get(get); table.close(); System.out.println("Get result: " + new String(result.getValue(columnFamily.getBytes(), columnQualifier.getBytes()))); //Delete table admin.disableTable(tableName); admin.deleteTable(tableName); System.out.println("Delete table"); }

编程开发网
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇hbase完全分布式安装与配置 下一篇Spark 操作Hbase 对表的操作:..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

array(4) { ["type"]=> int(8) ["message"]=> string(24) "Undefined variable: jobs" ["file"]=> string(32) "/mnt/wp/cppentry/do/bencandy.php" ["line"]=> int(217) }