HBase 开发:使用Java操作HBase 第2关:添加数据

编程入门 行业动态 更新时间:2024-10-07 21:37:48

HBase 开发:使用Java<a href=https://www.elefans.com/category/jswz/34/1770947.html style=操作HBase 第2关:添加数据"/>

HBase 开发:使用Java操作HBase 第2关:添加数据

添加数据

要对一个表添加数据,我们需要一个Put对象,在定义Put对象之前我们需要获取到Table对象,这样才能对指定的表进行操作:

Table table = connection.getTable(tableName);//获取Table对象
try {
byte[] row = Bytes.toBytes("row1"); //定义行
Put put = new Put(row); //创建Put对象
byte[] columnFamily = Bytes.toBytes("data"); //列簇
byte[] qualifier = Bytes.toBytes(String.valueOf(1)); //列
byte[] value = Bytes.toBytes("张三丰"); //值
put.addColumn(columnFamily, qualifier, value);
table.put(put); //向表中添加数据} finally {
//使用完了要释放资源
table.close();
}

编程要求

好了,到你啦,使用本关知识,在右侧编辑器begin-end处补充代码,请你编写一个Java程序,在HBase中创建表tb_step2,列簇都为:data,添加数据:

  • 行号分别为:row1row2
  • 列名分别为:12
  • 值分别为:张三丰张无忌
package step2;
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.TableName;
import org.apache.hadoop.hbase.client.Admin;
import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;
import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;
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.Put;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.ResultScanner;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.client.Table;
import org.apache.hadoop.hbase.client.TableDescriptor;
import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
import org.apache.hadoop.hbase.util.Bytes;
public class Task {public void insertInfo()throws Exception{/********* Begin *********/Configuration config = HBaseConfiguration.create();Connection connection = ConnectionFactory.createConnection(config);Admin admin = connection.getAdmin();TableName tableName = TableName.valueOf("tb_step2");TableDescriptorBuilder tableDescriptor = TableDescriptorBuilder.newBuilder(tableName);ColumnFamilyDescriptor family = ColumnFamilyDescriptorBuilder.newBuilder(Bytes.toBytes("data")).build();//  构建列族对象tableDescriptor.setColumnFamily(family); //  设置列族admin.createTable(tableDescriptor.build()); //  创建表// 添加数据byte[] row1 = Bytes.toBytes("row1");Put put1 = new Put(row1); byte[] columnFamily1 = Bytes.toBytes("data"); // 列byte[] qualifier1 = Bytes.toBytes(String.valueOf(1)); // 列族修饰词byte[] value1 = Bytes.toBytes("张三丰"); // 值put1.addColumn(columnFamily1, qualifier1, value1);byte[] row2 = Bytes.toBytes("row2");Put put2 = new Put(row2); byte[] columnFamily2 = Bytes.toBytes("data"); // 列byte[] qualifier2 = Bytes.toBytes(String.valueOf(2)); // 列族修饰词byte[] value2 = Bytes.toBytes("张无忌"); // 值put2.addColumn(columnFamily2, qualifier2, value2);Table table = connection.getTable(tableName);table.put(put1);table.put(put2);/********* End *********/}
}

start-dfs.sh
start-hbase.sh
hadoop fs -ls /hbase

更多推荐

HBase 开发:使用Java操作HBase 第2关:添加数据

本文发布于:2024-03-09 23:53:08,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1726480.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:操作   数据   HBase   Java

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!