19 HBase SHELL、 JAVA 和 Thrift 客户端

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

来自为知笔记(Wiz)

时间: 2024-08-29 20:09:19

19 HBase SHELL、 JAVA 和 Thrift 客户端的相关文章

HBase 常用java api获得客户端,创建表,查询,删除

1,前期准备 (1) 本文采用的hbase是采用三台服务器搭建的集群,zookeeper也是相同服务器搭建的集群,集群ip分别是192.168.183.101: 192.168.183.102: 192.168.183.103.其中102是主节点(HMaster),101以及103都是HRegionServer (2) 这次测试安装的hbase的版本是 hbase-0.99.2.-bin.tar (3)java api引用的maven依赖路径如下 <dependency> <groupI

hbase之python利用thrift操作hbase数据和shell操作

前沿: 以前都是用mongodb的,但是量大了,mongodb显得不那么靠谱,改成hbase撑起一个量级. HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型.它存储的是松散型数据. HBase提供了丰富的访问接口. HBase Shell Java clietn API Jython.Groovy DSL.Scala REST Thrift(Ruby.Pyt

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

转自:http://blog.csdn.net/zhongwen7710/article/details/39577431 本blog的内容包含: 第一部分:Hbase框架原理理解 第二部分:Hbase调用MapReduce函数使用理解 第三部分:Hbase调用Java API使用理解 第四部分:Hbase Shell操作 第五部分:Hbase建表.读写操作方式性能优化总结 第一部分:Hbase框架原理理解 概述 HBase是一个构建在HDFS上的分布式列存储系统:HBase是基于Google

用java做thrift服务端,php做thrift客户端简单例子

注意: 1).需要的包以及路径问题要注意修改为自己本地的 2)详细情况见  http://pan.baidu.com/s/1qW8xI0k 这里以Hello.thrift为例 namespace java hellodemo namespace php hellodemo service Hello{ string helloString(1:string para) i32 helloInt(1:i32 para) bool helloBoolean(1:bool para) void hel

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

一. shell命令 1. 进入hbase命令行  ./hbase shell 2. 显示hbase中的表  list 3. 创建user表,包括info.data两个列族 create 'user', 'info', 'data' create 'user', {NAME => 'info', VERSIONS => '3'} 4. 向表中插入信息: 向user表中插入信息.row key为rk0001.列族info中加入name列标示符,值为zhangsan put 'user', 'rk

分布式数据库HBase安装与使用(shell+Java API)

本指南介绍了HBase,详细指导大家安装配置HBase及其使用.本教程在Ubuntu14.04下测试通过. 一.HBase介绍 HBase是一个分布式的.面向列的开源数据库,源于Google的一篇论文<BigTable:一个结构化数据的分布式存储系统>.HBase以表的形式存储数据,表有行和列组成,列划分为若干个列族/列簇(column family).欲了解HBase的官方资讯,请访问HBase官方网站. HBase的运行有三种模式:单机模式.伪分布式模式.分布式模式. 单机模式:在一台计算

hbase shell 命令

1.首先要打开hbase,使用jps查看进程 jps是java进程状态工具,它会返回进程ID和服务名称 [email protected]:~/Apache/hbase-0.94.15-security$ jps 3082 NameNode 6245 HRegionServer 3493 JobTracker 6064 HMaster 5999 HQuorumPeer 3638 TaskTracker 3259 DataNode 3413 SecondaryNameNode 6320 Jps 2

HBase Shell操作

Hbase 是一个分布式的.面向列的开源数据库,其实现是建立在google 的bigTable 理论之上,并基于hadoop HDFS文件系统.     Hbase不同于一般的关系型数据库(RDBMS).是一种适用于非结构化数据存储的数据库,且Hbase是基于列的数据库. 下面的内容基于我们已经安装好hadoop.hbase. 一.hbase shell 介绍 hbase shell是用户和hbase 交互的接口之一,当然还可以通过其它方式比如java api等 下表列出了 hbase 基本命令

HBase shell scan 模糊查询

0.进入hbase shell ./hbase shell help help "get" #查看单独的某个命令的帮助 1. 一般命令 status 查看状态 version 查看版本 2.DDL(数据定义语言Data Definition Language)命令 1. 创建表 create '表名称','列名称1','列名称2','列名称3' 如: create 'member','member_id','address','info' 1 2.列出所有的表 list  list '