Java操作hbase
来源:互联网 发布:张鲁 三国杀淘宝 编辑:程序博客网 时间:2024/06/05 07:56
1.HBase简单介绍
HBase是一种构建在HDFS之上的分布式、面向列的存储系统。在需要实时读写、随机访问超大规模数据集时,可以使用HBase。
HBase以表的形式存储数据。表是由行和列组成,列划分为若干个列族。
存储形式如下:
建表时,不需要限定表中的字段,只要制定若干个列族就可以了。插入数据时,列族中可以任意存储多个列。
一个列名的值可以有多个版本
要查询一个具体字段的值,需要指定的坐标:表名-->行键-->列族:列名-->版本
2.Java客户端操作HBase建表
创建表的时候要指定列名和列族名
package neu.tt.hbase;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.TableName;import org.apache.hadoop.hbase.ZooKeeperConnectionException;import org.apache.hadoop.hbase.client.HBaseAdmin;public class CreateTableTest {public static void main(String[] args) throws MasterNotRunningException, ZooKeeperConnectionException, IOException{ //设置HBase据库的连接配置参数 Configuration conf =HBaseConfiguration.create(); conf.set("hbase.zookeeper.quorum", "slave2:2181,slave3:2181,slave4:2181"); //建立表名 TableName tableName=TableName.valueOf("hbasetest"); //列族名 String[] family = { "basicinfo","deptinfo"}; HBaseAdmin hbaseAdmin = new HBaseAdmin(conf); //创建表对象 HTableDescriptor hbaseTableDesc = new HTableDescriptor(tableName); for(int i = 0; i < family.length; i++) { //设置列族名 hbaseTableDesc.addFamily(new HColumnDescriptor(family[i])); } hbaseAdmin.createTable(hbaseTableDesc); hbaseAdmin.close();}}
3.插入数据
@Testpublic void insertTest() throws Exception{HTable hbasetest = new HTable(conf, "hbasetest"); //rk0001表示row key的值Put name=new Put(Bytes.toBytes("rk0001")); //源码:public Put add(byte [] family, byte [] qualifier, byte [] value)name.add(Bytes.toBytes("basicinfo"), Bytes.toBytes("name"),Bytes.toBytes("tiantian"));Put age=new Put(Bytes.toBytes("rk0001"));age.add(Bytes.toBytes("basicinfo"), Bytes.toBytes("age"),Bytes.toBytes(18));ArrayList<Put> puts = new ArrayList<>();puts.add(name);puts.add(age);hbasetest.put(puts);hbasetest.close();}
附加:这是hbase的源码下载地址
0 0
- HBase入门-Java操作HBase
- Java操作HBase
- Hbase java客户端操作
- java操作hbase
- hbase java client 操作
- hbase java api操作
- java操作hbase
- java操作HBase
- java操作hbase
- hbase java api操作
- java操作hbase
- hbase Java Api 操作
- Java操作Hbase
- hbase java api操作
- HBase的java操作
- Java操作HBase接口
- Java操作HBase
- java操作hbase例子
- Java中的反射机制
- asp.net中ObjectDataSource“”未能找到带参数的非泛型方法“DelnewsClass”: p1, id 问题
- mysql数据库密码忘记怎么办,没事看这里
- 蛇形填数
- Cocos2dx游戏开发工程师[更新完毕-共享完毕]
- Java操作hbase
- HTTP服务器工作原理
- H5项目常见问题汇总及解决方案
- 读书笔记-《深入理解Java虚拟机》-对象探秘
- cookie和session的区别
- Java笔试题解(1)
- Leetcode 10. Regular Expression Matching
- 使用DDMS中的native heap检查Android native内存泄露
- 关于JS创建对象的几个常见模式