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. String Comparison(C#)

    When comparing programmatic strings, you should always use StringComparison.Ordinal or StringCompari ...

  2. jquery定时器

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  3. HCF4094(CD4094)应用

    管脚说明和内部逻辑图 注:管脚图为HCF4094,内部逻辑图为CD4094(HCF4094内部逻辑图在datasheet不清晰,且复杂). 其中控制管脚有3个:STROBE-DATA-CLOCK,Ou ...

  4. swfit的特点

    swfit的特点: 1.swift句尾不需要分号,除非你想在一行中写三行代码就加分号隔开. 2.swift不要写main函数,程序默认从上往下执行 3.swift不分.h和.m文件,一个类只有.swi ...

  5. 《Unix环境高级编程》读书笔记 第4章-文件和目录

    1. stat结构的基本形式: on error 24. 设备特殊文件 每个文件系统所在的存储设备都由其主.次设备号表示. 设备号所用的数据类型是基本系统数据类型dev_t. 主设备号标识设备驱动程序 ...

  6. 如何取未知Json字符串 某个主键取对应的Value

    需添加引用using Newtonsoft.Json; string strJon  "Json 字符串"; JObject obj = JObject.Parse(strJon  ...

  7. 算法38---292. Nim游戏

    1.题目: 你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个函 ...

  8. vue之父子组件间通信实例讲解(props、$ref、$emit)

       组件间如何通信,也就成为了vue中重点知识了.这篇文章将会通过props.$ref和 $emit 这几个知识点,来讲解如何实现父子组件间通信. 组件是 vue.js 最强大的功能之一,而组件实例 ...

  9. ajax动态添加复选框

    function getLands() { $.ajax({ url:"httpserver.do?doPost&userQygs="+$("#userQygs& ...

  10. Android 获取麦克风的音量(分贝)

    基础知识 度量声音强度.大家最熟悉的单位就是分贝(decibel,缩写为dB).这是一个无纲量的相对单位.计算公式例如以下: 分子是測量值的声压,分母是參考值的声压(20微帕.人类所能听到的最小声压) ...