首页 / 数据库 / MySQL / Java在HBase数据库创建表
要通过Java在HBase中创建一个数据表,首先需要导入hbase-client.jar驱动包。可以在项目pom.xml配置文件中添加依赖:<dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-client<artifactId> <version>1.1.0.1</version><dependency>在添加依赖后,我们需要创建Configuration对象,并指定core-site.xml和hbase-site.xml作为资源文件。Configuration config = HBaseConfiguration.create();config.addResource(new Path("/etc/hbase/conf/hbase-site.xml"));config.addResource(new Path("/etc/Hadoop/conf/core-site.xml"));还需要在Configuration对象中设置hbase.zookeeper.quorum参数和hbase.zookeeper.property.clientPort参数的值,这些值也可以在hbase-site.xml配置文件中找到:Configuration config = HBaseConfiguration.create();config.set("hbase.zookeeper.quorum", "127.0.0.1");config.set("hbase.zookeeper.property.clientPort", "2181");Configuration对象创建完成后,接着创建连接到HBase数据库的Connection对象,并通过此对象获取Admin对象,它负责实现创建数据表的操作:Connection connection = ConnectionFactory.createConnection(config);Admin admin = connection.getAdmin();一旦创建了Admin对象后,可以通过下面的代码创建数据表了:String tableName = "users";if (!admin.isTableAvailable(TableName.valueOf(tableName))) {HTableDescriptor hbaseTable = new HTableDescriptor(TableName.valueOf(tableName));hbaseTable.addFamily(new HColumnDescriptor("name"));hbaseTable.addFamily(new HColumnDescriptor("contact_info"));hbaseTable.addFamily(new HColumnDescriptor("personal_info"));admin.createTable(hbaseTable);}会严重是否存在“users”名的数据表,如果此表不存在就会创建一个新表,列名包括:家庭名、联系信息和个人信息。完整的程序如下:package com.wordpress.khodeprasad;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.Connection;import org.apache.hadoop.hbase.client.ConnectionFactory;/*** @author Prasad Khode**/public class CreateTable {public static void main(String[] args) {CreateTable object = new CreateTable();object.createTable();}public void createTable() {Configuration config = HBaseConfiguration.create();config.set("hbase.zookeeper.quorum", "127.0.0.1");config.set("hbase.zookeeper.property.clientPort", "2181");Connection connection = null;Admin admin = null;try {connection = ConnectionFactory.createConnection(config);admin = connection.getAdmin();String tableName = "users";if (!admin.isTableAvailable(TableName.valueOf(tableName))) {HTableDescriptor hbaseTable = new HTableDescriptor(TableName.valueOf(tableName));hbaseTable.addFamily(new HColumnDescriptor("name"));hbaseTable.addFamily(new HColumnDescriptor("contact_info"));hbaseTable.addFamily(new HColumnDescriptor("personal_info"));admin.createTable(hbaseTable);}} catch (Exception e) {e.printStackTrace();} finally {try {if (admin != null) {admin.close();}if (connection != null && !connection.isClosed()) {connection.close();}} catch (Exception e2) {e2.printStackTrace();}}}}Hadoop+HBase搭建云存储总结 PDF http://www.linuxidc.com/Linux/2013-05/83844.htmHBase 结点之间时间不一致造成regionserver启动失败 http://www.linuxidc.com/Linux/2013-06/86655.htmHadoop+ZooKeeper+HBase集群配置 http://www.linuxidc.com/Linux/2013-06/86347.htmHadoop集群安装&HBase实验环境搭建 http://www.linuxidc.com/Linux/2013-04/83560.htm基于Hadoop集群的HBase集群的配置 http://www.linuxidc.com/Linux/2013-03/80815.htm‘Hadoop安装部署笔记之-HBase完全分布模式安装 http://www.linuxidc.com/Linux/2012-12/76947.htm单机版搭建HBase环境图文教程详解 http://www.linuxidc.com/Linux/2012-10/72959.htmHBase 的详细介绍:请点这里
HBase 的下载地址:请点这里本文永久更新链接地址