Part3---HBase更新删除表,使用dbeaver结合Phoenix操作_phoenix 清空表-程序员宅基地

技术标签: phoenix  HBase基础  hbase  dbeaver  

更新Hbase的数据:

01.数据准备

​ 先查看原始Hbase里面的数据情况

hbase(main):012:0> scan "Gadaite"
ROW                                        COLUMN+CELL
 001                                       column=F1:F11, timestamp=1649858571999, value=F1.F11
 001                                       column=F1:F12, timestamp=1649858578171, value=F1.F12
 001                                       column=F1:_0, timestamp=1649858592283, value=
 001                                       column=F2:F21, timestamp=1649858584519, value=F2.F21
 001                                       column=F2:F22, timestamp=1649858592283, value=F2.F22
 002                                       column=F1:F11, timestamp=1649858599071, value=G1.G11
 002                                       column=F1:F12, timestamp=1649858606288, value=G1.G12
 002                                       column=F1:_0, timestamp=1649858619587, value=
 002                                       column=F2:F21, timestamp=1649858613258, value=G2.G21
 002                                       column=F2:F22, timestamp=1649858619587, value=G2.G22
2 row(s)
Took 0.0368 seconds

02.使用phoenix在dbeaver上连接Hbase写sql操作

02.1.插入数据

​ 与标准sql的insert不同,这里是使用upsert

​ 查询结果,同时hbase shell也更新了:

UPSERT INTO "Gadaite"("rowkey",F11,F12,F21,F22) VALUES('003','B11','B1.B12','B2.B21','B2.B22');
SELECT * FROM "Gadaite" ;

image-20220413225135268

​ hbase对比发现之前数据的时间戳timestamp并没有发生变化的

hbase(main):013:0> scan "Gadaite"
ROW                                        COLUMN+CELL
 001                                       column=F1:F11, timestamp=1649858571999, value=F1.F11
 001                                       column=F1:F12, timestamp=1649858578171, value=F1.F12
 001                                       column=F1:_0, timestamp=1649858592283, value=
 001                                       column=F2:F21, timestamp=1649858584519, value=F2.F21
 001                                       column=F2:F22, timestamp=1649858592283, value=F2.F22
 002                                       column=F1:F11, timestamp=1649858599071, value=G1.G11
 002                                       column=F1:F12, timestamp=1649858606288, value=G1.G12
 002                                       column=F1:_0, timestamp=1649858619587, value=
 002                                       column=F2:F21, timestamp=1649858613258, value=G2.G21
 002                                       column=F2:F22, timestamp=1649858619587, value=G2.G22
 003                                       column=F1:F11, timestamp=1649861421663, value=B11
 003                                       column=F1:F12, timestamp=1649861421663, value=B1.B12
 003                                       column=F1:_0, timestamp=1649861421663, value=x
 003                                       column=F2:F21, timestamp=1649861421663, value=B2.B21
 003                                       column=F2:F22, timestamp=1649861421663, value=B2.B22
3 row(s)

02.2.更新数据

​ Phoenix中不存在update的语法关键字,而还是upsert ,功能上替代了Insert+update

UPSERT INTO "Gadaite" ("rowkey" ,F11) VALUES ('003','BBA');
SELECT * FROM "Gadaite" ;

​ 输出结果:

image-20220413230812514

​ 同时,hbase shell中更新过的时间戳会发生改变,该条数据未更新字段的时间戳则不会发生改变

hbase(main):015:0> scan "Gadaite"
ROW                                        COLUMN+CELL
 001                                       column=F1:F11, timestamp=1649858571999, value=F1.F11
 001                                       column=F1:F12, timestamp=1649858578171, value=F1.F12
 001                                       column=F1:_0, timestamp=1649858592283, value=
 001                                       column=F2:F21, timestamp=1649858584519, value=F2.F21
 001                                       column=F2:F22, timestamp=1649858592283, value=F2.F22
 002                                       column=F1:F11, timestamp=1649858599071, value=G1.G11
 002                                       column=F1:F12, timestamp=1649858606288, value=G1.G12
 002                                       column=F1:_0, timestamp=1649858619587, value=
 002                                       column=F2:F21, timestamp=1649858613258, value=G2.G21
 002                                       column=F2:F22, timestamp=1649858619587, value=G2.G22
 003                                       column=F1:F11, timestamp=1649862440389, value=BBA
 003                                       column=F1:F12, timestamp=1649861421663, value=B1.B12
 003                                       column=F1:_0, timestamp=1649862440389, value=x
 003                                       column=F2:F21, timestamp=1649861421663, value=B2.B21
 003                                       column=F2:F22, timestamp=1649861421663, value=B2.B22
3 row(s)
Took 0.0228 seconds

02.3.删除数据

DELETE FROM "Gadaite" WHERE "rowkey" = '001';
SELECT * FROM "Gadaite" ;

​ 输出结果:

image-20220413231317352

​ 同时hbase shell对应数据也进行删除,剩下数据的时间戳却是没有发生变化的

hbase(main):016:0> scan "Gadaite"
ROW                                        COLUMN+CELL
 002                                       column=F1:F11, timestamp=1649858599071, value=G1.G11
 002                                       column=F1:F12, timestamp=1649858606288, value=G1.G12
 002                                       column=F1:_0, timestamp=1649858619587, value=
 002                                       column=F2:F21, timestamp=1649858613258, value=G2.G21
 002                                       column=F2:F22, timestamp=1649858619587, value=G2.G22
 003                                       column=F1:F11, timestamp=1649862440389, value=BBA
 003                                       column=F1:F12, timestamp=1649861421663, value=B1.B12
 003                                       column=F1:_0, timestamp=1649862440389, value=x
 003                                       column=F2:F21, timestamp=1649861421663, value=B2.B21
 003                                       column=F2:F22, timestamp=1649861421663, value=B2.B22
2 row(s)
Took 0.0330 seconds

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_46408961/article/details/124223986

智能推荐

ansible安装遇到的问题,不太懂,望大神指教_nothing provides python(abi) = 3.11 needed by ansi-程序员宅基地

文章浏览阅读3.4k次,点赞3次,收藏4次。安装ansible遇到的问题,望大神指点_nothing provides python(abi) = 3.11 needed by ansible-7.2.0-1.el8.noarch

关于LNK2001错误的一些总结 (摘录) - David Hu - 网大博客 - powered by phpwind.net-程序员宅基地

文章浏览阅读1.7k次。导读: 在最开始的编程过程中,最常出现的错误就是LNK2001这个错误,究其原因,其实一句话可以解释:当程序调用函数(function1)时,没有找到function1具体的实现部分。最常见的例子和解释:main or winmain函数:应该是选择工程类型的时候有错误,因为系统会根据subsystem的选项来决定调用main或winmain作为程序的入口函数,如果是console,会选择

让你的开发效率提高1400%的IntelliJ IDEA插件汇总_鲁班大叔 maven插件-程序员宅基地

文章浏览阅读1k次,点赞6次,收藏28次。哈喽,大家好,我是爱学习的莫提。从大二就开始接触并使用IDEA这款软件,现在它同样是我工作中的主力开发工具。对于Java开发人员来说,掌握这款软件的基本使用也已经是必备的工作技能。这款软件相比于Eclipse来说也是有非常多的优点,更加的高效,也更加的稳定。IDEA的插件市场也是非常的丰富!吸引了非常多的开发者从Eclipse来过渡到IDEA,那么正所谓「工欲善其事,必先利其器」,经过我这几年的使用,以及工作之后和同事的一些交流分享。我总结出了很多可以让我们的使用体验和开发效率得到很大程度提升的。_鲁班大叔 maven插件

Oracle SQL Loader的详细语法_sqlldr941-程序员宅基地

文章浏览阅读623次。Oracle SQL Loader 的详细语法 SQL*LOADER 是 ORACLE 的数据加载工具,通常用来将操作系统文件迁移到 ORACLE 数据库中。 S_sqlldr941

嵌入式和机械哪个好?机械转嵌入式好转吗?_机械转嵌入式那个方向好-程序员宅基地

文章浏览阅读2.9k次,点赞6次,收藏10次。大家好,我是无际。最近有一些做机械的朋友找到我,说嵌入式好不好学。深度聊完以后,我抓到了他们的几个吐槽点,行业过于传统,工资低,没前途,工作环境恶劣。看到身边那些做了10年的才1万块出头,心都凉了。如果不是看不到希望,谁也不会轻易冒险转行,毕竟付出的代价太大啦。我做了嵌入式单片机开发10年,除了技术以外,我还领悟到了很多经验。一、嵌入式和机械哪个好?首先要告诉你的是,不管任何技术都好,本身只是工具,有没有前途其实最大的因素是你怎么用这个工具去创造价值。做嵌入式开发也一样,_机械转嵌入式那个方向好

React native和原生之间的通信_react native promise 原生通信-程序员宅基地

文章浏览阅读7.3k次,点赞3次,收藏5次。RN中文网关于原生模块(Android)的介绍可以看到,RN前端与原生模块之间通信,主要有三种方法:1)使用回调函数Callback,它提供了一个函数来把返回值传回给JavaScript。2)使用Promise来实现。3)原生模块向JavaScript发送事件。关于使用回调,这是最简单的一种通信,这里可以看看官网的实现,今天要讲的是滴三种由原生模块向JavaScript发送事件。(1)首先,你需要_react native promise 原生通信

随便推点

【国内首发】 Virtualbox 4.1版本加入的新功能以及功能的详解--Professor哥-程序员宅基地

文章浏览阅读251次。近日在帮朋友做远程的时候发现Virtualbox 已经更新到4.1版本了(有点out.之前用的4.0.12)一开始觉得里面应该跟以往更行一样没多大改善,就修复几个bug而已! 但是我点进去才发现 变化可不小哦! 1、支持虚拟机的克隆; 2、改进了创建虚拟磁盘和复制虚拟磁盘的GUI界面; 3、64位主机的内存限制提升到1TB; 4、支持Linux主机下的PCI ..._virtualbox 4.1

C语言的按位 或,与,非,异或 运算符_c需要按位非-程序员宅基地

文章浏览阅读1.5w次,点赞3次,收藏12次。注意与常用逻辑运算符的区别位运算符常用逻辑运算符按位与:& 与:&& 按位或:| 或:||按位异或:^ 非:!非运算:~按位与&:其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。 例如:9&5可写算式如下: 00001001 (9的二进制补码)&00000101 (5的二_c需要按位非

BUUCTF逆向刷题——[GKCTF2020]BabyDriver_do { *(_dword *)(((unsigned int)v7 & 0xfffffffc) +-程序员宅基地

文章浏览阅读471次。IDA打开在sub_140001380发现主函数然后在字符串里发现有东西双击跟进发现a0有东西,估计是个迷宫题。看代码` char v9; // dlCHAR *v10; // rcxv2 = a2;if ( *(_DWORD *)(a2 + ‘0’) >= 0 ){v3 = *(_QWORD *)(a2 + 24);v4 = *(_QWORD *)(a2 + 56) >> 3;if ( (_DWORD)v4 ){v5 = dword_1400030E4;_do { *(_dword *)(((unsigned int)v7 & 0xfffffffc) + v4) = 0; v4 += 4; } while

MFC简单的登入界面设计_mfc制作密码登录页面-程序员宅基地

文章浏览阅读5.8k次,点赞4次,收藏33次。原文地址:https://blog.csdn.net/to_baidu/article/details/53649796步骤一:登录界面设计首先在VS中设计一个简单的登录界面,点击【资源视图】,然后右键【Dialog】,选择【添加资源】——【Dialog】——【新建】,这样就创建了一个新的空白对话框。可以按自己的需要更改窗口的ID,并根据自己需要将窗口设计成登录的方式,例如我的设计如下: ..._mfc制作密码登录页面

mysql数据库ACID实现原理_acid原理-程序员宅基地

文章浏览阅读243次。说到事物的四大特性原子性、一致性、隔离性、持久性,懂的人很多,但是稍微涉及细节,四大特性在数据库中的实现原理是怎么实现的?几乎很少有人能够答上来。所以这里着重讨论下mysql中的实现原理。问题一:Mysql怎么保证一致性的?OK,这个问题分为两个层面来说。从数据库层面,数据库通过原子性、隔离性、持久性来保证一致性。也就是说ACID四大特性之中,C(一致性)是目的,A(原子性)、I(隔离性)、D(持久性)是手段,是为了保证一致性,数据库提供的手段。数据库必须要实现AID三大特性,才有可能实现一致性_acid原理

docker-compose搭建skywalking服务并且与SpringBoot集成_springboot集成skywalking docker-程序员宅基地

文章浏览阅读1.5k次。服务搭建:基于docker-compose搭建单机版skywalking:docker-compose.yml文件内容version: '3.5'services: elasticsearch: image: elasticsearch:${ES_TAG} container_name: elasticsearch restart: always ports: - 9200:9200 environment: dis_springboot集成skywalking docker

推荐文章

热门文章

相关标签