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意义何在?

相关推荐
_Jimmy_2 分钟前
mysql 键长如何计算
数据库·mysql
J2虾虾2 分钟前
通过Web界面来访问和操作MySQL数据库的开源项目
前端·数据库·mysql
程序员佳佳3 分钟前
2025 AI 架构演进:从 Open Claw 到 GPT-5.3,如何用“向量引擎”解决大模型调用的“最后一公里”?
人工智能·gpt·架构·数据分析·aigc·api
雪碧聊技术6 分钟前
Oracle数据迁移指南:如何按主键顺序提取并迁移前10,000条记录(基于CSV)
数据库·oracle·数据导出·数据导入·数据备份、迁移
数据知道8 分钟前
MongoDB压缩算法选择:snappy, zlib, zstd性能与压缩比对比
数据库·mongodb
m0_528174459 分钟前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
Access开发易登软件14 分钟前
在 Access 实现标签输入控件:VBA + HTML 混合开发实战
前端·数据库·信息可视化·html·excel·vba·access
程序员一点19 分钟前
第23章:备份与灾难恢复策略
linux·运维·网络·数据库·openeuler
数据知道24 分钟前
MongoDB内存使用优化:working set理论与缓存命中率提升策略
数据库·mongodb
财迅通Ai26 分钟前
海立股份子公司参展AWE2026 以创新科技赋能行业转型升级
大数据·人工智能·物联网