Java程序操作HBase
- package com.zy.test;
- 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.TableName;
- import org.apache.hadoop.hbase.client.Admin;
- import org.apache.hadoop.hbase.client.Connection;
- import org.apache.hadoop.hbase.client.ConnectionFactory;
- import org.apache.hadoop.hbase.client.Delete;
- import org.apache.hadoop.hbase.client.Get;
- import org.apache.hadoop.hbase.client.Put;
- import org.apache.hadoop.hbase.client.Result;
- import org.apache.hadoop.hbase.client.ResultScanner;
- import org.apache.hadoop.hbase.client.Scan;
- import org.apache.hadoop.hbase.client.Table;
- import org.apache.hadoop.hbase.util.Bytes;
- import org.junit.Test;
- public class HBaseTest {
- @Test
- public void createTable() throws IOException{
- Configuration conf = HBaseConfiguration.create();
- conf.set("hbase.zookeeper.quorum", "exercise1:2181,exercise2:2181,exercise3:2181");
- //建立连接
- Connection conn=ConnectionFactory.createConnection(conf);
- //获取表管理类
- Admin admin=conn.getAdmin();
- //定义表
- HTableDescriptor hTableDescriptor=new HTableDescriptor(TableName.valueOf("person"));
- //定义列族
- HColumnDescriptor hColumnDescriptor=new HColumnDescriptor("info");
- //将列族添加到表中
- hTableDescriptor.addFamily(hColumnDescriptor);
- //执行建表操作
- admin.createTable(hTableDescriptor);
- admin.close();
- conn.close();
- }
- @Test
- public void put() throws IOException{
- Configuration conf=HBaseConfiguration.create();
- conf.set("hbase.zookeeper.quorum", "exercise1:2181,exercise2:2181,exercise3:2181");
- //建立连接
- Connection conn=ConnectionFactory.createConnection(conf);
- //获取表
- Table table=conn.getTable(TableName.valueOf("person"));
- //用行键实例化Put
- Put put=new Put("rk0001".getBytes());
- //指定列族名、列名和值
- put.addColumn("info".getBytes(), "name".getBytes(),"zhangsan".getBytes());
- //执行put操作
- table.put(put);
- //关闭连接
- table.close();
- conn.close();
- }
- @Test
- public void get() throws IOException {
- Configuration conf=HBaseConfiguration.create();
- conf.set("hbase.zookeeper.quorum","exercise1:2181,exercise2:2181,exercise3:2181");
- //建立连接
- Connection conn=ConnectionFactory.createConnection(conf);
- //获取表
- Table table=conn.getTable(TableName.valueOf("person"));
- //用行键实例化Get
- Get get=new Get("rk0001".getBytes());
- //增加列族名和列名条件
- get.addColumn("info".getBytes(),"name".getBytes());
- //执行,返回结果
- Result result=table.get(get);
- //取出结果
- String valStr=Bytes.toString(result.getValue("info".getBytes(),"name".getBytes()));
- System.out.println(valStr);
- //关闭连接
- table.close();
- conn.close();
- }
- @Test
- public void scan() throws IOException{
- Configuration conf=HBaseConfiguration.create();
- conf.set("hbase.zookeeper.quorum", "exercise1:2181,exercise2:2181,exercise3:2181");
- //建立连接
- Connection conn=ConnectionFactory.createConnection(conf);
- //获取表
- Table table=conn.getTable(TableName.valueOf("person"));
- //初始化Scan实例
- Scan scan=new Scan();
- //增加过滤条件
- scan.addColumn("info".getBytes(),"name".getBytes());
- //返回结果
- ResultScanner rss=table.getScanner(scan);
- //迭代并取出结果
- for(Result rs:rss){
- String valStr=Bytes.toString(rs.getValue("info".getBytes(),"name".getBytes()));
- System.out.println(valStr);
- }
- //关闭连接
- table.close();
- conn.close();
- }
- @Test
- public void delete() throws IOException{
- Configuration conf=HBaseConfiguration.create();
- conf.set("hbase.zookeeper.quorum", "exercise1:2181,exercise2:2181,exercise3:2181");
- //建立连接
- Connection conn=ConnectionFactory.createConnection(conf);
- //获取表
- Table table=conn.getTable(TableName.valueOf("person"));
- // 用行键来实例化Delete实例
- Delete del = new Delete("rk0001".getBytes());
- // 执行删除
- table.delete(del);
- //关闭连接
- table.close();
- conn.close();
- }
- }
Java程序操作HBase的更多相关文章
- JAVA程序操作hbase的Maven配置pom.xml文件
由于工作需要,用到Java连接Hbase读写数据.原来的方式是直接将依赖的jar包全部下载下来,然后工程里面引用. 现想重构下,改为使用Maven管理,遇到了各种坑,各种不好使,特总结下. <d ...
- 【Hbase三】Java,python操作Hbase
Java,python操作Hbase 操作Hbase python操作Hbase 安装Thrift之前所需准备 安装Thrift 产生针对Python的Hbase的API 启动Thrift服务 执行p ...
- Java程序操作数据库SQLserver详解
数据库基本操作:增删改查(CRUD) crud介绍(增.删.改.查操作) CRUD是指在做计算处理时的增加(Create).查询(Retrieve)(重新得到数据).更新(Update)和删除(Del ...
- linux 下通过过 hbase 的Java api 操作hbase
hbase版本:0.98.5 hadoop版本:1.2.1 使用自带的zk 本文的内容是在集群中创建java项目调用api来操作hbase,主要涉及对hbase的创建表格,删除表格,插入数据,删除数据 ...
- HBase 6、用Phoenix Java api操作HBase
开发环境准备:eclipse3.5.jdk1.7.window8.hadoop2.2.0.hbase0.98.0.2.phoenix4.3.0 1.从集群拷贝以下文件:core-site.xml.hb ...
- [原创]HBase学习笔记(3)- Java程序访问HBase
这里介绍使用java api来访问和操作HBase,例如create.delete.select.update等操作. 1.HBase配置 配置HBase使用的zookeeper集群地址和端口. pr ...
- 大数据-09-Intellij idea 开发java程序操作HDFS
主要摘自 http://dblab.xmu.edu.cn/blog/290-2/ 简介 本指南介绍Hadoop分布式文件系统HDFS,并详细指引读者对HDFS文件系统的操作实践.Hadoop分布式文件 ...
- java程序操作Geometry对象
Geometry 空间地理对象,Oracle中存储Geometry对象的字段类型是 MDSYS.SDO_GEOMETRY,在数据库中构建Geometry对象的方法: v_pointarray MDSY ...
- kerberos下JAVA代码操作hbase的方式(客户端方式,应用程序方式)
(一)如果部署JAVA 代码的主机用户获取了kerberos权限情况下 假设主机名是:client su - client 登录主机后 kinit -kt /keytab的路径/client.keyt ...
随机推荐
- day119:MoFang:宠物的状态改动&宠物粮道具的使用&宠物死亡处理
目录 1.宠物的状态改动 2.宠物粮道具的使用 3.宠物死亡处理 1.宠物的状态改动 1.在setting表中为每个宠物配置生命周期时间 因为宠物有多个,每个宠物会有不同的初始生命的饥饿时间,所以我们 ...
- Mac安装Go语言
正文 安装 安装我们使用 HomeBrew ,其使用方法详见我的上一篇博文 brew install go 配置环境变量 Go1.3及以后版本跳过以下步骤 进入变量文件 cd ~ vim .bash_ ...
- docker基础总结
搜索镜像docker search ubuntu 搜索ubuntu的Docker镜像 搜索结果单个单词ubuntu这样的镜像,被称为基础镜像或根镜像,这些基础镜像由 Docker 公司创建搜索结果ti ...
- oracle 11g 安装与卸载
安装 点击是,这是位数不一致,但可用. 桌面类――这种安装方式一般适用于台式机和笔记本.它包含一个最小数据库和最低的配置需求. 服务器类――这种安装方式适用于服务器,例如,它会向您提供数据中心和用于支 ...
- 深入理解static、volatile关键字
static 意思是静态的,全局的.被修饰的东西在一定范围内是共享的,被类的所有实例共享,这时候需要注意并发读写的问题. 只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内找到他们. ...
- linux最大打开文件句柄数
linux最大打开文件句柄数,即打开文件数最大限制,就是规定的单个进程能够打开的最大文件句柄数量(Socket连接也算在里面,默认大小1024) liunx中文件句柄有两个限制,一种是用户级的,一种是 ...
- python sqlite3增加表字段
给sqlite3表格增加新字段,要注意大小写,要不然不成功. 一开始这样写,不成功! 后面规范写,按大小写严格规范写! 成功了!现在查看新增加的字段commit: 仔细看,这下全部小写,括表名称.co ...
- PW6513高压40V的LDO芯片,SOT89封装
一般说明 PW6513系列是一款高精度,高输入电压,低静态电流,高速,低具有高纹波抑制的线性稳压器.输入电压高达40V,负载电流为在电压=5V和VIN=7V时高达300mA.该设备采用BCD工艺制造. ...
- linux自定义安装位置安装jdk
注:本文系参考网络内容及本人实践得出 1 下载jdk安装包 下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downl ...
- Centos7 虚拟机优化
配置yum源 rm -f /etc/yum.repos.d/* curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/ ...