hbase java 建表_Java在HBase数据库创建表
Java在HBase数据库创建表
作者:chszs,版权所有,未经同意,不得转载。博主主页:http://blog.csdn.net/chszs
要通过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();
}
}
}
}
hbase java 建表_Java在HBase数据库创建表相关推荐
- java metadata 使用_java 查询oracle数据库所有表DatabaseMetaData的用法(详解)
一 . 得到这个对象的实例 Connection con ; con = DriverManager.getConnection(url,userName,password); DatabaseMet ...
- linux系统中db2创建表空间,为DB2数据库创建表空间
数据库中的表空间(tablespace) 是一个逻辑层,一些数据库对象(比如表.视图和索引)驻留在这里.一个数据库可以有多个表空间.在首次创建数据库时,DB2 会自动地创建一组表空间. 在 Contr ...
- R操作MySQL数据库创建表、删除表、增删改查(CRUD)
R操作MySQL数据库创建表.删除表.增删改查(CRUD) 关系数据中的数据是按照一定范式去存储的.当我们需要非常高级和复杂的Sql查询就可以使用关系数据库的数据资产.不光java和python可以容 ...
- 数据库创建(利用写好的数据库表生成创建表的sql语句+利用生成的数据库创建表加同步数据sql)
一.利用写好的数据库表生成创建表的sql语句 1.简单创建一个数据库,并建一个表,并编辑数据. a.建库 b.建表 c.编辑表,保存时输入表名 d.刷新一下,出来了 e.转存导出sql文件. 二.利用 ...
- oracle两个表数据比较,oracle数据库两表数据比较
1 引言 在程序设计的过程中,往往会遇到两个记录集的比较.如华东电网PMS接口中实现传递一天中变更(新增.修改.删除)的数据.实现的方式有多种,如编程存储过程返回游标,在存储过程中对两批数据进行比较等 ...
- 数据库地区表sql语句,数据库地区表包含省市县
数据库地区表sql语句,数据库地区表包含省市县 包含省市县的数据表,需要的可以参考,sql语句一个博客字数太多发布不了,剩下的在下一个博客里面,之前也是在网上找的,感谢分享 -- ---------- ...
- 达梦数据库创建表空间
达梦数据库的数据是存储在表空间下的. 创建表空间时需要指定表空间名和拥有的数据文件列表. 表空间的创建有两种方式. 一. 通过manager图形化界面创建 1.进入安装目录tool目录下,通过./ma ...
- 数据库创建表失败原因
小白又建数据库创建表之N种错误= = 这次错误是由于表的名字 user 为数据库的关键字造成的,而且错误很难找出,因为控制台并没有报错,而且正常输出创建表的hibernate语句,后想到改个表名试试, ...
- sql server基础语法 创建数据库 创建表
sql server基础语法 创建数据库 创建表 1.创建数据库 2.表的创建 3.在现有表中添加标识列 4.创建外键 5.添加外键 6.约束 7.创建局部临时表 8.创建全局临时表 9.创建具有ch ...
- python 笔记 之 sqlalchemy操作数据库-创建表
2019独角兽企业重金招聘Python工程师标准>>> ''' pip install SQLAlchemy 操作数据库-创建表 ''' import sqlalchemy''' s ...
最新文章
- MySQL 学习笔记(17)— SQL 执行顺序
- tensorBoard 初级实现
- 36条网络安全术语盘点——Vecloud
- 字节跳动AI科学家王崇学生时代论文获“时间检验研究奖”
- MySQL搭建主从复制架构实战
- hihocoder 1015 : KMP算法(kmp)
- 盘点9 个实用的 JSON 工具
- 2011年度最佳代码“不管你们信不信,我反正信了”
- 作者:周晓津(1971-),男,博士,广州市社会科学院研究员。
- 机器学习之朴素贝叶斯算法原理
- raspberry pi_Raspberry Pi支持的杂耍性能
- 详解Domino服务器的安装
- MP3文件格式说明 (转)
- python编程单词排序_Python实现针对中文排序的方法
- 基于多线程技术和自定义消息编程实现Windows 9x异步串行通信
- 汽车自动泊车辅助系统APA(上)
- 「解析」Matplotlib 绘制折线图
- python基础-Task3
- mysql json官方文档,10分钟了解MySQL5.7对原生JSON的支持与用法
- 3ds MAX常用快捷键命令大全,快捷键自定义方法,游戏建模小白必备