HBASE的API操作之put,get

本文详细介绍了HBase中Put和Get类的各种方法,包括用于数据操作的时间戳设置、锁管理和过滤器应用等,帮助读者深入理解HBase的数据读写机制。

Put类的方法

  getRow()         返回创建Put实例时所指定的行键

  getRowLock()     返回当前Put实例的行RowLock实例

  getLockId()       返回使用rowlock参数传递给构造函数的可选的锁ID,当未被指定时返回-1L

  setWriteToWAL()  允许关闭默认启用的服务端预写日志(WAL)功能

  getWriteToWAL()  返回代表是否启用了WAL功能

  getTimeStamp()   返回相应Put实例的时间戳,该值可在构造函数中由ts参数传入,当未被设定时返回Long.MAX_VALUE

  heapSize()        计算当前Put实例所需的堆大小,既包含其中的数据,也包含内部数据结构所需的空间

  isEmpty()         检查FamilyMap是否含有任何KeyValue实例

  numFamilies()     查询FamilyMap的大小,即所有的KeyValue实例中列族的个数

  size()            返回本次Put会添加的KeyValue的实例

 

get方法:

方法

描述

getRow()

返回创建Get实例时指定的行键

getRowLock()

返回当前Get实例的RowLock实例

getLockId()

返回创建时指定rowLock的锁ID,如果没有指定返回-1L

getTimeRange()

返回指定的Get实例的时间戳范围。注意,Get类中已经没有getTimeStamp()方法了,因为API会在内部将setTimeStamp()赋的值转换成TimeRange实例,设定给定时间戳的最大值和最小值

setFilter()/getFilter()

用户可以使用一个特定的过滤器实例,通过多种规则和条件来筛选列和单元格。使用这些方法用户可以设定或查看Get实例的过滤器成员

setCacheBlocks()/getCacheBlocks()

每个HBaseregion服务器都有一个块缓存来有效地保存最近存取过的数据,并以此来加速之后的相邻信息的读取。不过在某些情况下,例如完全随机读取时,最好能避免这种机制带来的扰动。这些方法能够控制当次读取的块缓存机制是否启效

numFamilies()

快捷地获取列族FamilyMap大小的方法,包括用addFamily()方法和addColumn()方法添加的列族

hasFamilies()

检查列族或列是否存在于当前的Get实例中

familySet()/getFamilyMap()

这些方法能让用户直接访问addFamily()addColumn()添加的列族和列。FamilyMap列族中键是列族的名称,键对应的值是指定列族的限定符列表。familySet()方法返回一个所有已存储列族的Set,即一个只包含列族名的集合

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值