hbase中创建表、插入数据,更新数据,删除数据的操作

发布时间:2021-08-02 16:22:09 作者:chen
来源:亿速云 阅读:347

本篇内容介绍了“hbase中创建表、插入数据,更新数据,删除数据的操作”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

所需要的包有:
commons-codec-1.4.jar
commons-logging-1.1.1.jar
hadoop-0.20.2-core.jar
hbase-0.90.2.jar
log4j-1.2.16.jar
zookeeper-3.3.2.jar
 
背景:
假设有一个不知道是干什么表:)
表里需要存入人员和其相对应的部门信息
 
代码:

import java.util.ArrayList;import java.util.List;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.client.Delete;import org.apache.hadoop.hbase.client.HBaseAdmin;import org.apache.hadoop.hbase.client.HTable;import org.apache.hadoop.hbase.client.Put; public class HbaseAddEdtDel {  public static Configuration configuration=null;  static {  configuration = HBaseConfiguration.create();  configuration.set("hbase.master", "192.168.0.201:60000");  configuration.set("hbase.zookeeper.quorum","192.168.0.201,192.168.0.202,192.168.0.203");    configuration.set("hbase.zookeeper.property.clientPort", "2181");         }     public static void main(String[] args) throws Exception {            HBaseAdmin admin = new HBaseAdmin(configuration);                   if (admin.tableExists("riapguh")) {            System.out.println("删除 table");            admin.disableTable("riapguh");            admin.deleteTable("riapguh");        }                     //创建riapguh表        System.out.println("创建 table");        HTableDescriptor tableDescripter = new HTableDescriptor("riapguh".getBytes());//创建表        tableDescripter.addFamily(new HColumnDescriptor("user"));//创建列簇user        tableDescripter.addFamily(new HColumnDescriptor("dpt"));//创建列簇dpt        admin.createTable(tableDescripter);               HTable table = new HTable(configuration, "riapguh");         //插入数据       System.out.println("add riapguh data");      List<Put> putuser = new ArrayList<Put>();                   Put user1 = new Put(new String("用户A").getBytes());       //写入用户员信息       user1.add(new String("user").getBytes(), new String("user_code").getBytes(), new String("u_0001").getBytes());       user1.add(new String("user").getBytes(), new String("user_name").getBytes(), new String("u_用户A").getBytes());             //写入部门信息       user1.add(new String("dpt").getBytes(), new String("dpt_code").getBytes(), new String("d_001").getBytes());       user1.add(new String("dpt").getBytes(), new String("dpt_name").getBytes(), new String("d_部门A").getBytes());       putuser.add(user1);                     Put user2 = new Put(new String("用户B").getBytes());       //写入用户员信息       user2.add(new String("user").getBytes(), new String("user_code").getBytes(), new String("u_0002").getBytes());       user2.add(new String("user").getBytes(), new String("user_name").getBytes(), new String("u_用户B").getBytes());             //写入部门信息       user2.add(new String("dpt").getBytes(), new String("dpt_code").getBytes(), new String("d_002").getBytes());       user2.add(new String("dpt").getBytes(), new String("dpt_name").getBytes(), new String("d_部门B").getBytes());       putuser.add(user2);                       Put user3 = new Put(new String("用户C").getBytes());       //写入用户员信息       user3.add(new String("user").getBytes(), new String("user_code").getBytes(), new String("u_0003").getBytes());       user3.add(new String("user").getBytes(), new String("user_name").getBytes(), new String("u_用户C").getBytes());             //写入部门信息       user3.add(new String("dpt").getBytes(), new String("dpt_code").getBytes(), new String("d_003").getBytes());       user3.add(new String("dpt").getBytes(), new String("dpt_name").getBytes(), new String("d_部门C").getBytes());       putuser.add(user3);          table.put(putuser);      table.flushCommits();           //更新用户B      Put updateb = new Put(new String("用户B").getBytes());     //写入用户员信息      updateb.add(new String("user").getBytes(), new String("user_code").getBytes(), new String("u_000xsx").getBytes());      updateb.add(new String("user").getBytes(), new String("user_name").getBytes(), new String("u_用户xsx").getBytes());        //写入部门信息      updateb.add(new String("dpt").getBytes(), new String("dpt_code").getBytes(), new String("d_00xsx").getBytes());      updateb.add(new String("dpt").getBytes(), new String("dpt_name").getBytes(), new String("d_部门xsx").getBytes());      table.put(updateb);           table.flushCommits();      //HBaseBasic.selectByRowKey("riapguh");           System.out.println("-------------删除用户C---------------------");      //删除用户C      //able.delete(new Delete(new String("用户C").getBytes()));      List<Delete> deld = new ArrayList<Delete>();      deld.add(new Delete(new String("用户C").getBytes()));      table.delete(deld);           table.flushCommits();      //HBaseBasic.selectByRowKey("riapguh");    } }

“hbase中创建表、插入数据,更新数据,删除数据的操作”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

推荐阅读:
  1. Hbase shell操作总结
  2. hbase shell 执行创建表时错误

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

hbase

上一篇:Oracle中怎么刪除表的重复记录

下一篇:MySQL中如何删除表重复记录

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》