设为首页 加入收藏

TOP

HBaseAPI(二)
2015-11-21 01:34:20 来源: 作者: 【 】 浏览:2
Tags:HBaseAPI
id

put(Put put)

向表中添加值

用法示例:

HTable table = new HTable(conf, Bytes.toBytes(tablename));

ResultScanner scanner = table.getScanner(family); ---family指列族

?

Put

关系:org.apache.hadoop.hbase.client.Put

作用:用来对单个行执行添加操作

返回值

函数

描述

Put

add(byte[] family, byte[] qualifier, byte[] value)

将指定的列和对应的值添加到

Put实例中

Put

add(byte[] family, byte[] qualifier, long ts, byte[] value)

将指定的列和对应的值及

时间戳添加到Put实例中

byte[]

getRow()

获取Put实例的行

RowLock

getRowLock()

获取Put实例的行锁

long

getTimeStamp()

获取Put实例的时间戳

boolean

isEmpty()

检查familyMap是否为空

Put

setTimeStamp(long timeStamp)

设置Put实例的时间戳

用法示例:

?

HTable table = new HTable(conf,Bytes.toBytes(tablename));

Put p = new Put(brow);//为指定行创建一个Put操作

p.add(family,qualifier,value);

table.put(p);

?

Get

关系:org.apache.hadoop.hbase.client.Get

作用:用来获取单个行的相关信息

返回值

函数

描述

Get

addColumn(byte[] family, byte[] qualifier)

获取指定列族和列修饰符对应的列

Get

addFamily(byte[] family)

通过指定的列族获取其对应列的所有列

Get

setTimeRange(long minStamp,long maxStamp)

获取指定取件的列的版本号

Get

setFilter(Filter filter)

当执行Get操作时设置服务器端的过滤器

用法示例:

?

HTable table = new HTable(conf, Bytes.toBytes(tablename));

Get g = new Get(Bytes.toBytes(row));

?

Result

关系:org.apache.hadoop.hbase.client.Result

作用:存储Get或者Scan操作后获取表的单行值。使用此类提供的方法可以直接获取值或者各种Map结构(key-value对)

返回值

函数

描述

boolean

containsColumn(byte[] family, byte[] qualifier)

检查指定的列是否存在

NavigableMap

getFamilyMap(byte[] family)

获取对应列族所包含的

修饰符与值的键值对

byte[]

getValue(byte[] family, byte[] qualifier)

获取对应列的最新值

?

实例:

Htable table = new Htable(conf,Bytes.toBytes(tablename));

Get g = new Get(Bytes.toBytes(row));

Result rowResult = table.get(g);

Bytes[] ret = rowResult.getValue();

?

ResultScanner

关系:Interface

作用:客户端获取值的接口

返回值

函数

描述

void

close()

关闭scanner并释放分配给它的资源

Result

next()

获取下一行的值

?

实例:

ResultScanner scanner = table.getScanner(Bytes.toBytes(family));

for (Result rowResult:sanner)

{

Bytes[] str =rowResult.getValue(family,column);

}

综合以上,一个例子如下:

package com.dream.hbase;



import java.io.IOException;

import java.util.ArrayList;

import java.util.List;



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.KeyValue;

import org.apache.hadoop.hbase.MasterNotRunningException;

import org.apache.hadoop.hbase.ZooKeeperConnectionException;

import org.apache.hadoop.hbase.client.Delete;

import org.apache.hadoop.hbase.client.Get;

import org.apache.hadoop.hbase.client.HBaseAdmin;

import org.apache.hadoop.hbase.client.HTable;

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.util.Bytes;







public class HBaseTest {



private HBaseAdminadmin = null;

// 定义配置对象HBaseConfiguration

privateHBaseConfiguration cfg = null;



private staticConfiguration conf = null;

static {

conf =HBaseConfiguration.create();
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇数据库如何从SQL server转换到SQL.. 下一篇bat启动oracle本地服务

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: