本篇内容介绍了“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中创建表、插入数据,更新数据,删除数据的操作”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。