HBase的Shell操作,修改版本值
2021/11/14 7:13:50
本文主要是介绍HBase的Shell操作,修改版本值,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
HBase中通过rowkey和列族CF确定的一个数据存储单元称成Cell
RowKey Time Stamp CF1 CF2 CF3 t6 CF2:q2=v2 CF3:q3=v3 11248112 t3 t1 CF1:q1=v1
首先,版本是针对列族CF而言的,
每个Cell都会保存同一份数据的多个版本,也就是相同列族CF:列CL可以多次插入值,HBase默认会存储3个版本的数据,默认查询是最新版本的数据;某一个版本如果没有插入则为空,不占用存储空间,Cell里的数据全部以字节码的形式存在。
在实际应用中,出于性能或业务需要,我们可能只有一个或其他数量的版本需要存储。那么如何修改这一默认配置呢?
一、建表时设定版本号
create '表名',{NAME='列族名1',VERSIONS=给定一个版本号},{NAME='列族名2',VERSIONS=给定的版本号}
二、建表后修改表配置设定版本号
1. 首先要将表下线
disable 'table'
2. 修改表中指定列族的版本号
alter 'table' , NAME => 'f', VERSION => 1,NAME => 'x', VERSION => 3
3. 重新上线表
enable 'table'
三、同一个rowkey和列族下,多版本列数据查询
1. 指定stu表,rowkey=1008,info列族下,3个版本的数据
hbase(main):036:0> get 'stu','1008',{COLUMN=>'info',VERSIONS=>3} COLUMN CELL info:name timestamp=1545223094696, value=wangwu info:name timestamp=1545223075610, value=lisi info:name timestamp=1545202502110, value=zhangsan info:sex timestamp=1545202745329, value=male
2. 指定stu表,rowkey=1008,info列族下,name列下,3个版本的数据
hbase(main):037:0> get 'stu','1008',{COLUMN=>'info:name',VERSIONS=>3} COLUMN CELL info:name timestamp=1545223094696, value=wangwu info:name timestamp=1545223075610, value=lisi info:name timestamp=1545202502110, value=zhangsan
这篇关于HBase的Shell操作,修改版本值的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-11有哪些好用的家政团队管理工具?
- 2025-01-11营销人必看的GTM五个指标
- 2025-01-11办公软件在直播电商前期筹划中的应用与推荐
- 2025-01-11提升组织效率:上级管理者如何优化跨部门任务分配
- 2025-01-11酒店精细化运营背后的协同工具支持
- 2025-01-11跨境电商选品全攻略:工具使用、市场数据与选品策略
- 2025-01-11数据驱动酒店管理:在线工具的核心价值解析
- 2025-01-11cursor试用出现:Too many free trial accounts used on this machine 的解决方法
- 2025-01-11百万架构师第十四课:源码分析:Spring 源码分析:深入分析IOC那些鲜为人知的细节|JavaGuide
- 2025-01-11不得不了解的高效AI办公工具API