HBase API设置列族的VERSION【留给有缘人】

前言

关于如何使用 hbase api去设置hbase中数据的version这个问题,本人浏览器都快搜烂了,没找到!无奈只能找找源码,有所得,遂记录,留给有缘人。

直接上代码

想使用hbase的VERSION功能需要两步,一个是在创建列族的时候指定存储多少个VERSION,一个是在scan的时候指定要读多少个VERSION,缺一不可!

复制代码
// 创建列族的时候指定最大Version数(最大保留多少个版本)
TableDescriptor desc = TableDescriptorBuild
.newBuilder("test")
.setColumnFamily(
ColumnFamilyDescriptorBuilder
.newBuilder(Bytes.toBytes("cf_0"))
.setMaxVersions(10) // 主要是这里
.build())
.build()

// scan的时候指定要搜索多少个version
Scan s = new Scan();
s.addFamily(Bytes.toBytes("cf_01"))
s.readAllVersions(); // 主要就是这里配置
Scanner scanner = table.getScanner(s);
for (Result : scanner) {
	Cell[] cells = result.rawCells(); // 这里就可以得到多个版本的数据了
}

笔者还想问点东西

笔者其实还有一些不明白的地方,有懂哥请帮忙解答一下,Cell中有一个type变量,存储的是Put,Delete等类型,但是我scan的时候,只看到了Put,不太明白什么情况下能扫描到Delete类型的Cell?Delete类型的Cell意义何在?

相关推荐
xixixi77777几秒前
《从心理诱导突破Claude到AI仿冒直播首张拘留单:AI安全、监管与商用的三重转折点》
大数据·网络·人工智能·安全·ai·大模型·风险
雨浓YN1 分钟前
GKTGD 工业监控系统-02MySQL 数据库技术文档(类库:NET8_SQLData)
数据库·wpf
dFObBIMmai1 分钟前
JavaScript中对象生命周期与垃圾回收的引用关系
jvm·数据库·python
2401_824697662 分钟前
Go语言怎么格式化时间_Go语言time.Format教程【详解】
jvm·数据库·python
2303_821287382 分钟前
HTML函数在低背光键盘上编写困难吗_输入设备舒适度说明【介绍】
jvm·数据库·python
爱喝水的鱼丶2 分钟前
SAP-ABAP:ABAP Development Tools(ADT)安装配置学习分享教程(四篇连载)第四篇:ADT连接故障排查与环境迁移教程
运维·开发语言·数据库·学习·sap·abap
2301_783848653 分钟前
防范SQL注入的SQL编码规范_禁用动态拼接字符串语句
jvm·数据库·python
立控信息LKONE3 分钟前
门禁机、控制器等库室安防设施、实现库室智能联动,一体报警
大数据·人工智能·安全
weixin_444012934 分钟前
Angular 表单中基于下拉选择动态启用字段必填校验的完整实现
jvm·数据库·python
小真zzz5 分钟前
中立第三方:搜极星的突围之路
大数据·人工智能