Home >Database >Mysql Tutorial >Java在HBase数据库创建表

Java在HBase数据库创建表

WBOY
WBOYOriginal
2016-06-07 14:58:221376browse

要通过Java在HBase中创建一个数据表,首先需要导入hbase-client.jar驱动包。可以在项目pom.xml配置文件中添加依赖:

要通过Java在HBase中创建一个数据表,首先需要导入hbase-client.jar驱动包。可以在项目pom.xml配置文件中添加依赖:

org.apache.hbase hbase-client 1.1.0.1

在添加依赖后,我们需要创建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

HBase 结点之间时间不一致造成regionserver启动失败

Hadoop+ZooKeeper+HBase集群配置

Hadoop集群安装&HBase实验环境搭建

基于Hadoop集群的HBase集群的配置 ‘

Hadoop安装部署笔记之-HBase完全分布模式安装

单机版搭建HBase环境图文教程详解

HBase 的详细介绍:请点这里
HBase 的下载地址:请点这里

本文永久更新链接地址

 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:sqlite树型结构查询Next article:postgresql常用命令