HBase 由 Java 语言实现,同时他也是最主要最高效的客户端。 相关的类在org.apache.hadoop.hbase.client 包中。涵盖所有 增删改查 API 。 主要的类包含: HTable、HBaseAdmin、Put、Get、Scan、Increment 和 Delete 等。

        HBase 是一个 NoSQL数据库。JAVA客户端提供了增删改查表的DDL操作,同时提供了一些工具。类似合并、分裂 Region 等。
 
        使用 HBase 原生客户端需要创建 配置类、定义 HMaster 地址、定义 Zookeeper 端口、 Zookeeper 队列名称 以及需要操作的表的名字。
       
         1. 简单的配置实例:
 
import java.io.IOException;
 
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.util.Bytes;
 
public class HBaseManager extends Thread{
    /** 客户端的配置类 */
    public Configuration config;
    /**  */
    public HTable table;
    public HBaseAdmin admin;
    
    @SuppressWarnings("deprecation")
    public HBaseManager(){
        config = HBaseConfiguration.create();
        config.set("hbase.master", "test:80000");                   // HMaster 地址
        config.set("hbase.zookeeper.propertity.clientPort", "2181");// ZooKeeper 端口
        config.set("hbase.zookeeper.quorum", "test1,test2,test3");  // ZooKeeper 队列名称
        try {
            table = new HTable(config, Bytes.toBytes("demo_table"));// 用于连接单独的表(非线程安全)
         // table = new HTable(config, "test",new ExecutorService); //   外部独立维护的线程池类
            admin = new HBaseAdmin(config);                         // 管理数据库
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
          读数据
                1,初始化 HTable 实例
                2,构造实体类 Get  // get可以在new时设置行键, 可以 设置查询属性,如只要 addColumn() 如 addFamily()。 是否开启缓存 setCacheBlocks()、设置返回多少版本 setMaxVersions()。setTimeRange(long)方法用于设置返回那个时间戳版本。 setTimeRange(long,long)返回时间戳区间
                      构造实体类 Scan 实际上Get方法内部也是使用 Scan去实现的。
                3,执行查询
 
 
        ExecutorService 类,即外部独立维护的线程池类。 new HTable时(byte[] tableName, HConnection con, ExecutorService pool)
 
 
        
 
 
 
 
 
 
 
 
 
 
 
 
                                                                                                                        God has given me a gift. Only one. I am the most complete fighter in the world. My whole life, I have trained. I must prove I am worthy of someting.                                                             rocky_24

九、 HBase SHELL、 JAVA 和 Thrift 客户端的更多相关文章

  1. hadoop(九) - hbase shell命令及Java接口

    一. shell命令 1. 进入hbase命令行  ./hbase shell 2. 显示hbase中的表  list 3. 创建user表,包括info.data两个列族 create 'user' ...

  2. 通过HBase Shell与HBase交互

    出处:http://www.taobaotest.com/blogs/1604 业务开发测试HBase之旅二:通过HBase Shell与HBase交互 yedu 发表于:2011-10-11 浏览: ...

  3. Hbase框架原理及相关的知识点理解、Hbase访问MapReduce、Hbase访问Java API、Hbase shell及Hbase性能优化总结

    转自:http://blog.csdn.net/zhongwen7710/article/details/39577431 本blog的内容包含: 第一部分:Hbase框架原理理解 第二部分:Hbas ...

  4. Hbase配置java客户端

    1.修改windows配置文件 C:\WINDOWS\system32\drivers\etc\hosts 将远程hbase和zookeeper主机的IP地址加进去 54.0.88.53      H ...

  5. Hadoop HBase概念学习系列之hbase shell中执行java方法(高手必备)(二十五)

    hbase shell中执行java方法(高手必备),务必掌握! 1. 2. 3. 4. 更多命令,见scan help.在实际工作中,多用这个!!! API参考: http://hbase.apac ...

  6. hbase shell命令及Java接口介绍

    一. shell命令 1. 进入hbase命令行  ./hbase shell 2. 显示hbase中的表  list3. 创建user表,包含info.data两个列族create 'user', ...

  7. Java API 操作HBase Shell

    HBase Shell API 操作 创建工程 本实验的环境实在ubuntu18.04下完成,首先在改虚拟机中安装开发工具eclipse. 然后创建Java项目名字叫hbase-test 配置运行环境 ...

  8. Linux巩固记录(8) Hbase shell 基本使用

    继续前几篇内容,讲解hbase基本使用 1.进入hbase shell: hbase有很多种操作方式,比如shell,java客户端,webUI等,可以直接输入hbase进行提示 [root@mast ...

  9. HBase Shell操作

    Hbase 是一个分布式的.面向列的开源数据库,其实现是建立在google 的bigTable 理论之上,并基于hadoop HDFS文件系统.     Hbase不同于一般的关系型数据库(RDBMS ...

随机推荐

  1. python对比图片

    通过python的PIL模块可以对比两张图片是否相同,具体源码如下 from PIL import Image from PIL import ImageChops def compare_image ...

  2. redis数据库服务器开启的三种方式

    redis的启动方式1.直接启动  进入redis根目录,执行命令:  #加上‘&’号使redis以后台程序方式运行 1 ./redis-server & 2.通过指定配置文件启动  ...

  3. IFC2x3标准阅读

    参考地址:西北逍遥-IFC数据模式架构的四个概念层详解说明 1.架构图 IFC模型体系结构由四个层次构成,从下到上依次是 资源层(Resource Layer).核心层(Core Layer).交互层 ...

  4. Promise语法

    转自:廖雪峰的官方网站 在JavaScript的世界中,所有代码都是单线程执行的. 由于这个“缺陷”,导致JavaScript的所有网络操作,浏览器事件,都必须是异步执行.异步执行可以用回调函数实现: ...

  5. vue项目测试和打包发布

    在线测试:npm run dev 发布打包:npm run build  打包后,代码文件在dist文件夹下面,可以正式发布了,复制到其它web服务器下面,在浏览器用http访问.

  6. HDU-4296 Buildings 贪心 从相邻元素的相对位置开始考虑

    题目链接:https://cn.vjudge.net/problem/HDU-4296 题意 有很多板子,每一个板子有重量(w)和承重(s)能力 现规定一块板子的PDV值为其上所有板子的重量和减去这个 ...

  7. POJ-3159 Candies 最短路应用(差分约束)

    题目链接:https://cn.vjudge.net/problem/POJ-3159 题意 给出一组不等式 求第一个变量和最后一个变量可能的最大差值 数据保证有解 思路 一个不等式a-b<=c ...

  8. Centos6.6 系统优化

    1:最小化安装 2:修改网卡 vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0HWADDR=52:54:00:0e:c2:c3TYPE ...

  9. UVALive 3989 Ladies' Choice

    Ladies' Choice Time Limit: 6000ms Memory Limit: 131072KB This problem will be judged on UVALive. Ori ...

  10. solr环境搭建&基本使用

    分步指南 solr服务与tomcat整合 solr使用配置步骤 solr使用 推荐分词工具 相关的文章 一.Solr服务与tomcat整合 1.solr相关版本下载路径:http://archive. ...