`

HBase0.89常用API接口使用

 
阅读更多
HTable:这个是table对象,通过他来完成对hbase表的各种操作,删除,更新,创建,查询

RowFilter:对rowkey过滤查询的类

QualifierFilter:对子列做过滤查询的类

FilterList:复合filter的实现类

Get:rowkey定位器

Scan:查询扫描器

ResultScanner:查询结果扫描器

Result:单个查询结果

KeyValue:查询结果中的keyvalue原子项

//场景一,通过rowkey,列族,子列直接定位value

Configuration conf = Configuration.create();

HTable table = new HTable(conf,”mytable”);

Get get = new Get(“rowkey1”.getBytes());

get.addFamily(“myfamily”.getBytes());

Result rs = table.get(get);

If(rs.isEmpty()){

System.out.println(“no record”);

}else{

List<KeyValue> kvList = rs.list();

for(KeyValue kv : kvList){

System.out.println(new String(kv.getRow(),”UTF-8”) + “->”);

System.out.println(new String(kv.getQualifier (),”UTF-8”) + “:”);

System.out.println(new String(kv.getValue(),”UTF-8”) );

}

}

//场景二,使用rowkey的模糊匹配来查询

Configuration conf = Configuration.create();

HTable table = new HTable(conf,”mytable”);

Scan sc = new Scan(“somewords”)

sc.addFamily(“myfamily”.getBytes());

ResultScanner rsan = table.getScanner(sc);

Resullt rs = rsan.next();

If(rs==null){

System.out.println(“no record”);

}else{

While(rs!=null){

List<KeyValue> kvList = rs.list();

for(KeyValue kv : kvList){

System.out.println(new String(kv.getRow(),”UTF-8”) + “->”);

System.out.println(new String(kv.getQualifier (),”UTF-8”) + “:”);

System.out.println(new String(kv.getValue(),”UTF-8”) );

}

rs = rsan.next();

}

}

//场景三,使用rowkey和子列的filter进行条件查询

Configuration conf = Configuration.create();

HTable table = new HTable(conf,”mytable”);

Scan sc = new Scan()

sc.addFamily(“myfamily”.getBytes());

RowFilter filter1 = new RowFilter(CompareOp.EQUAL, new RegexStringComparator(“^”+accountlike+”~(.*)”));//利用正则表达式来查找rowkey

QualifierFilter filter2 = new QualifierFilter(CompareOp.LESS_OR_EQUAL,new BinaryComparator(“stop”.getBytes()));

QualifierFilter filter3 = new QualifierFilter(CompareOp.GREATER_OR_EQUAL,new BinaryComparator(“start”.getBytes()));

FilterList flist = new FilterList(FilterList.Operator.MUST_PASS_ALL);

flist.addFilter(filter1);

flist.addFilter(filter2);

flist.addFilter(filter3);

sc.addFilter(flist);

ResultScanner rsan = table.getScanner(sc);

Resullt rs = rsan.next();

If(rs==null){

System.out.println(“no record”);

}else{

While(rs!=null){

List<KeyValue> kvList = rs.list();

for(KeyValue kv : kvList){

System.out.println(new String(kv.getRow(),”UTF-8”) + “->”);

System.out.println(new String(kv.getQualifier (),”UTF-8”) + “:”);

System.out.println(new String(kv.getValue(),”UTF-8”) );

}

rs = rsan.next();

}

}

未完待续。。。
分享到:
评论

相关推荐

    HBase 1.2.0 Javadoc API CHM

    自行制作的HBase 1.2.0 Javadoc API CHM版本。内容抽取自官方站点网页

    Hadoop+HBase+Java API

    **Java API** 是Java编程语言提供的应用程序接口,允许开发者使用Java来访问和操作Hadoop和HBase的功能。对于Hadoop,Java API主要包括`org.apache.hadoop.mapreduce`包下的类,如Job、Mapper、Reducer等,用于实现...

    hbase常用JAVA API

    在Java中,我们可以使用HBase的Java API来与HBase交互,进行数据的读写操作。下面将详细介绍HBase Java API的核心概念和常用方法。 1. **连接HBase** 要连接到HBase,你需要创建一个`Configuration`对象,然后通过...

    Hbase调用JavaAPI实现批量导入操作

    要使用Java API与HBase交互,首先需要在项目中引入HBase的依赖库,例如通过Maven或Gradle。主要涉及的类有`HBaseConfiguration`, `HTable`, `Put`和`BatchOperation`等。`HBaseConfiguration`用于配置HBase连接参数...

    HBase0.90.4_API.chm

    HBase API chm hadoop 分布式 java HBase0.90.4_API.chm

    HBase的Python语言接口zohmg.zip

    HBase的Python语言接口 Zohmg is a data store for aggregation of multi-dimensional time series data, built on top of Hadoop, Dumbo and HBase. 标签:zohmg

    hbase资料api

    HBase数据查询API HBase是一种分布式的、面向列的NoSQL数据库,主要应用于存储大量的半结构化数据。HBase提供了多种查询方式,包括单条查询和批量查询。 单条查询 单条查询是通过rowkey在table中查询某一行的数据...

    Hbase的JavaAPI

    下面我们将深入探讨HBase的Java API及其在实际应用中的使用。 1. **HBase连接** 在Java中使用HBase,首先要建立与HBase服务器的连接。这通常通过`HBaseConfiguration.create()`方法创建一个配置对象,然后设置相关...

    Hbase Java API

    HBase Java API HBase 是 Hadoop 的数据库,能够对大数据提供随机、实时读写访问。他是开源的,分布式的,多版本的,面向列的,存储模型。HBase 的整体结构主要包括 HBase Master、HRegion 服务器和 HRegion Server...

    hbase-metrics-api-1.4.3-API文档-中文版.zip

    赠送jar包:hbase-metrics-api-1.4.3.jar; 赠送原API文档:hbase-metrics-api-1.4.3-javadoc.jar; 赠送源代码:hbase-metrics-api-1.4.3-sources.jar; 赠送Maven依赖信息文件:hbase-metrics-api-1.4.3.pom; ...

    hbase java api 访问 增加修改删除(一)

    在本文中,我们将深入探讨如何使用HBase的Java API进行数据的增加、修改和删除操作。HBase是一个基于Google Bigtable设计的开源分布式数据库,它属于Apache Hadoop生态系统的一部分,适用于处理大规模数据存储。通过...

    Hbase11 Java API 介绍及使用示例.docx

    ..Hbase11 Java API 介绍及使用示例.docx

    Hbase11 Java API 介绍及使用示例.pdf

    ..Hbase11 Java API 介绍及使用示例.pdf

    Hbase调用JavaAPI实现批量导入操作.docx

    本文旨在介绍如何使用 JavaAPI 调用 Hbase 实现批量导入操作,实现将手机上网日志文件批量导入到 Hbase 中。 一、准备工作 在开始批量导入操作之前,我们需要准备以下 несколько步骤: 1. 将日志文件...

    hbase java api 所需最精简 jar

    HBase的Java客户端API提供了一系列的类和接口,使得开发者能够方便地在Java程序中创建、读取、更新和删除(CRUD)HBase表的数据。这些主要组件包括: 1. **HBase连接器(Connection)**:是访问HBase集群的入口点,...

    javaApi_sparkhiveAPI_hbaseAPI.zip

    本压缩包"javaApi_sparkhiveAPI_hbaseAPI.zip"包含了2019年8月至10月期间针对这些技术的Java版API实现,以及与Spark相关的Hive和HBase API。以下是关于这些技术的详细知识: 1. **Java API for Hive**: - **Hive*...

    java 访问Hbase 使用的jar包 和 hbase-0.20.6 api

    Java Hbase jar api hbase-0.20.6.jar hadoop-core-0.20.1.jar commons-logging-1.1.1.jar zookeeper-3.3.0.jar log4j-1.2.91.jar

    HBase JavaAPI开发

    使用JavaAPI实现HBase的ddl(创建表、删除表、修改表(添加列族等))、dml(添加数据、删除数据)、dql(查询数据(get、scan))等操作 除此之外还包含一些其他操作:命名空间的应用、快照的应用等 对应(《HBase...

    HBase Java API类介绍

    HBase提供了Java API供开发者使用,以便更方便地与HBase进行交互。本文将详细介绍HBase Java API中的几个核心类及其功能。 #### 二、HBase Java API类介绍 ##### 1. HBaseConfiguration **关系**:`org.apache....

Global site tag (gtag.js) - Google Analytics