学习日志---hbase学习(最大版本查询)
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,在HBase中 一个row对应的相同的列只会有一行。使用scan 或get 得到都是最新的数据如果我们对这某一row所对应的列进行了更改操作后,并不会多生成一条数据,不会像RDBMS一样insert时
千家信息网最后更新 2025年02月01日学习日志---hbase学习(最大版本查询)
在HBase中 一个row对应的相同的列只会有一行。使用scan 或get 得到都是最新的数据
如果我们对这某一row所对应的列进行了更改操作后,并不会多生成一条数据,不会像RDBMS一样
insert时多生成一条记录,在HBase中对同一条数据的修改或插入 都只是put操作,最终看到的都是
最新的数据,其它的数据在不同的version中保存,就像隐藏的东西一样
那么如何才能看到这些隐藏version的值呢
Get get = new Get(startRow);
get.setMaxVersions();
Result result = table.get(get);
List
for(final KeyValue v:list){
logger.info("value: "+ v+ " str: "+Bytes.toString(v.getValue()));
}
加入setMaxVersions()方法就可以把所有的版本都取出来了
实例代码:
@Test public void test4() throws Exception { Configuration config = HBaseConfiguration.create(); config.set("hbase.zookeeper.quorum", "hadoop1,hadoop2,hadoop3"); HTable hTable = new HTable(config, "t_xuanxuan"); Get get = new Get("29129101029_1444038378601".getBytes()); get.setMaxVersions(); //这里设置的是2 Result result = hTable.get(get); System.out.println(result.size()); Listlist = result.list(); for(final KeyValue v:list){ System.out.println("value: "+ v+ " str: "+Bytes.toString(v.getValue())); } }
result的个数会是2,因为把其隐藏起来了,所以在hbase命令行中也查询不到,只有这样查。
数据
多生
版本
学习
查询
不同
相同
一行
东西
个数
代码
只是
只有
命令
实例
方法
最大
日志
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云服务器的配置与管理
鑫盟软件开发有限公司
重庆学校网络安全风险提示
l2tp苹果手机服务器配置教程
后端数据库怎么保证安全
网络安全信息办法
医疗类软件开发公司有哪些
数据库安全要求吗
联想rs260服务器
pme软件开发环境
c 调用php服务器
公大网络安全与执法专业就业率
游戏服务器后台是啥
狮子座互联网科技有限公司
网络技术证书有用吗
地球表面数据库的演讲
网络安全工程师工资规划
软件开发张云河
虚拟拆装需要哪些软件开发
软件开发项目对环境影响
江门物联网软件开发学费
大青蛙数据库
4S店金税盘的代理服务器是什么
关系数据库规范化实例
钉钉聊天记录是存在服务器吗
陕西锐捷网络技术有限公司
联想rs260服务器
栾城租房软件开发
DNS服务器是怎么工作的
打车软件开发得多少钱