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

相关推荐
2401_8676239812 分钟前
SQL如何提取分组中的第一条记录_使用ROW_NUMBER定位数据
jvm·数据库·python
lifewange17 分钟前
Hive 数据库 增删改 完整操作指南
数据库·hive·hadoop
数据皮皮侠AI20 分钟前
基于经济学季刊方法测算的中国城市蔓延指数
大数据·人工智能·笔记·数据挖掘·回归
Mike117.20 分钟前
GBase 8c 写入高峰抖一下,我通常会先看检查点和 WAL
数据库
JGHAI27 分钟前
2026年GEO技术发展趋势:从“流量游戏”到“智能对齐”,技术演进驱动品牌信任重塑
大数据·人工智能
C137的本贾尼30 分钟前
子查询与合并查询:SQL 的高级过滤技巧
数据库·sql
Elastic 中国社区官方博客33 分钟前
Elastic 开源社区行为准则
大数据·elasticsearch·搜索引擎·信息可视化·全文检索
视***间34 分钟前
算力为核,智驱无界——视程空间硬核赋能机器狗与机器人,解锁具身智能产业新未来
大数据·运维·人工智能·机器人·采集卡·机器狗·视程空间
LONGZETECH39 分钟前
新能源汽车VR仿真教学软件技术解析|职教数字化实训解决方案
大数据·架构·汽车·vr·汽车仿真教学软件
jingyu飞鸟1 小时前
linux系统二进制安装MySQL 8.4、8.0版本数据库,配置crontab和xtrabackup数据库热备份脚本
linux·数据库·mysql