HBase的hbase shell 详解

进入hbase命令行
./hbase shell
显示hbase中的表
list
创建user表,里面包含info,date两个列族
create 'user','info','data'
create 'user',{NAME => 'info', VERSIONS => 5},{NAME => 'data' , VERSIONS => 5 }
插入数据 puthbase> put 'ns1:t1', 'r1', 'c1', 'value'hbase> put 't1', 'r1', 'c1', 'value'hbase> put 't1', 'r1', 'c1', 'value', ts1hbase> put 't1', 'r1', 'c1', 'value', {ATTRIBUTES=>{'mykey'=>'myvalue'}}hbase> put 't1', 'r1', 'c1', 'value', ts1, {ATTRIBUTES=>{'mykey'=>'myvalue'}}hbase> put 't1', 'r1', 'c1', 'value', ts1, {VISIBILITY=>'PRIVATE|SECRET'}put 'user' , 'rk0001' , 'info:name' , 'zjs'
put 'user' , 'rk0001' , 'info:age' , '18'
put 'user' , 'rk0001' , 'info:sex' , '男'
put 'user' , 'rk0001' , 'data:name' , 'lt'
put 'user' , 'rk0001' , 'data:age' , '19'
put 'user' , 'rk0001' , 'data:sex' , '女'put 'user' , 'rk0002' , 'info:name' , 'zjszjs'
put 'user' , 'rk0002' , 'info:age' , '1818'
put 'user' , 'rk0002' , 'info:sex' , '男男'
put 'user' , 'rk0002' , 'data:name' , 'ltlt'
put 'user' , 'rk0002' , 'data:age' , '1919'
put 'user' , 'rk0002' , 'data:sex' , '女女'查询数据 gethbase> t.get 'r1'hbase> t.get 'r1', {TIMERANGE => [ts1, ts2]}hbase> t.get 'r1', {COLUMN => 'c1'}hbase> t.get 'r1', {COLUMN => ['c1', 'c2', 'c3']}hbase> t.get 'r1', {COLUMN => 'c1', TIMESTAMP => ts1}hbase> t.get 'r1', {COLUMN => 'c1', TIMERANGE => [ts1, ts2], VERSIONS => 4}hbase> t.get 'r1', {COLUMN => 'c1', TIMESTAMP => ts1, VERSIONS => 4}hbase> t.get 'r1', {FILTER => "ValueFilter(=, 'binary:abc')"}hbase> t.get 'r1', 'c1'hbase> t.get 'r1', 'c1', 'c2'hbase> t.get 'r1', ['c1', 'c2']hbase> t.get 'r1', {CONSISTENCY => 'TIMELINE'}hbase> t.get 'r1', {CONSISTENCY => 'TIMELINE', REGION_REPLICA_ID => 1}get 'user' , 'rk0001'
get 'user' , 'rk0002' , {COLUMN => 'info:name', VERSIONS => 10}扫描数据 scanhbase> scan 'hbase:meta'hbase> scan 'hbase:meta', {COLUMNS => 'info:regioninfo'}hbase> scan 'ns1:t1', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => 'xyz'}hbase> scan 't1', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => 'xyz'}hbase> scan 't1', {COLUMNS => 'c1', TIMERANGE => [1303668804, 1303668904]}hbase> scan 't1', {REVERSED => true}hbase> scan 't1', {ROWPREFIXFILTER => 'row2', FILTER => "(QualifierFilter (>=, 'binary:xyz')) AND (TimestampsFilter ( 123, 456))"}hbase> scan 't1', {FILTER =>org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}hbase> scan 't1', {CONSISTENCY => 'TIMELINE'}hbase> scan 't1', { COLUMNS => ['c1', 'c2'], ATTRIBUTES => {'mykey' => 'myvalue'}}hbase> scan 't1', { COLUMNS => ['c1', 'c2'], AUTHORIZATIONS => ['PRIVATE','SECRET']}hbase> scan 't1', {COLUMNS => ['c1', 'c2'], CACHE_BLOCKS => false}hbase> scan 't1', {RAW => true, VERSIONS => 10}hbase> t = get_table 't'hbase> t.scanscan 'user'创建user表,里面包含info,date两个列族
create 'user','info','data'(不指定VERSIONS时,默认VERSIONS=1)
create 'user',{NAME => 'info', VERSIONS => 5},{NAME => 'data' , VERSIONS => 5 }向user表中插入信息,row key 值为rk0001 列族info中添加name列标识符,值为zhangsan
put 'user','rk0001','info:name','zhansan'user表中插入信息,row key 值为rk0001 列族info中添加gender列标识符,female
put 'user','rk0001','info:gender','female'user表中插入信息,row key 值为rk0001 列族info中添加age列标识符,值为18
put 'user','rk0001','info:age','18'user表中插入信息,row key 值为rk0001 列族info中添加pic列标识符,值为picture
put 'user','rk0001','info:pic','picture'获取user表中,row key为rk0001的所有信息
get  'user','rk0001'获取user表中,row key为rk0001,info列族中的所有信息
get 'user', 'rk0001', 'info'获取user表中,row key为rk0001,info列族中的name和age列标识符中的信息
get 'user', 'rk0001', 'info:name', 'info:age'获取user表中,row key为rk0001,info,data 列族的信息
get 'user', 'rk0001', 'info', 'data'
get 'user', 'rk0001', {COLUMN => ['info' ,'data']}
get 'user', 'rk0001', {COLUMN => ['info:name' ,'data:age']}获取user表中,row key为rk0001,列族为info,版本号最新5个的信息
get 'user', 'rk0001', {COLUMN =>'info'},{VERSIONS =>5}
get 'user', 'rk0001', {COLUMN =>'info:name'},{VERSIONS =>5}获取user表中row key 为rk0001,cell的值为zjs的信息
get 'user', 'rk0001', {FILTER => "ValueFilter(=, 'binary:zjs')"}后去user表中row key为rk0001,列标示符中含有’a‘的信息
get 'user', 'rk0001' ,{FILTER => "(QualifierFilter(=,'substring:z'))"}查询user表中所有的信息scan 'user'查询user表中列族为info的信息
scan 'user', {COLUMUN => 'info'}
scan 'user', {COLUMN => 'info',RAW =>true, VERSIONS =>5}查询user表中,列族为info,data的信息
scan 'user', {COLUMN => ['info', 'data']}
scan 'user', {COLUMN => ['info:name', 'data:age']}查询user表中列族为info,列标识符为name的信息
scan 'user', {COLUMN =>'info:name'}
查询user表中列族为info,列标识符为name的信息,版本最多5个
scan 'user', {COLUMN =>'info:name'},{VERSIONS => 5}查询user表中,列族为info个data且列标识符含有a字符的信息
scan 'user' ,{COLUMN =>['info' , 'data'], FILTER => "(QualifierFilter(=,'substring:a'))"}scan 'user' ,{COLUMN =>['info' , 'data'], FILTER => "(QualifierFilter(=,'substring:a'))"}
ROW                                COLUMN+CELLrk0001                            column=data:age, timestamp=1529670010281, value=19rk0001                            column=data:name, timestamp=1529670010202, value=ltrk0001                            column=info:age, timestamp=1529670009879, value=18rk0001                            column=info:name, timestamp=1529669995801, value=zjsrk0002                            column=data:age, timestamp=1529670128578, value=1919rk0002                            column=data:name, timestamp=1529670128531, value=ltltrk0002                            column=info:age, timestamp=1529670128445, value=1818rk0002                            column=info:name, timestamp=1529670128315, value=zjszjs
2 row(s) in 0.0410 seconds查询user表中,列族为info,rk范围是[rk0001,rk0003]的数据
scan 'user', {CLOUMN =>'info' , STARTROW => 'rk0001' , ENDROW => 'rk0003'}
scan 'user', {COLUMN =>'info' , STARTROW => 'rk0001' , ENDROW => 'rk0003'}
ROW                                COLUMN+CELLrk0001                            column=info:age, timestamp=1529670009879, value=18rk0001                            column=info:name, timestamp=1529669995801, value=zjsrk0001                            column=info:sex, timestamp=1529670010078, value=\xE7\x94\xB7rk0002                            column=info:age, timestamp=1529670128445, value=1818rk0002                            column=info:name, timestamp=1529670128315, value=zjszjsrk0002                            column=info:sex, timestamp=1529670128489, value=\xE7\x94\xB7\xE7\x94\xB7
2 row(s) in 0.0320 seconds查询user表中,row key 以rk字符开头的
scan 'user' ,{FILTER => "PrefixFilter('rk')"}
scan 'user' ,{FILTER => "PrefixFilter('rk')"}
ROW                                COLUMN+CELLrk0001                            column=data:age, timestamp=1529670010281, value=19rk0001                            column=data:name, timestamp=1529670010202, value=ltrk0001                            column=data:sex, timestamp=1529670012330, value=\xE5\xA5\xB3rk0001                            column=info:age, timestamp=1529670009879, value=18rk0001                            column=info:name, timestamp=1529669995801, value=zjsrk0001                            column=info:sex, timestamp=1529670010078, value=\xE7\x94\xB7rk0002                            column=data:age, timestamp=1529670128578, value=1919rk0002                            column=data:name, timestamp=1529670128531, value=ltltrk0002                            column=data:sex, timestamp=1529670129123, value=\xE5\xA5\xB3\xE5\xA5\xB3rk0002                            column=info:age, timestamp=1529670128445, value=1818rk0002                            column=info:name, timestamp=1529670128315, value=zjszjsrk0002                            column=info:sex, timestamp=1529670128489, value=\xE7\x94\xB7\xE7\x94\xB7
2 row(s) in 0.0640 seconds查询user中,指定范围的数据
scan 'user', {TIMERANGE => [1529670010202,1529670012330]}
ROW                                COLUMN+CELLrk0001                            column=data:age, timestamp=1529670010281, value=19rk0001                            column=data:name, timestamp=1529670010202, value=lt
1 row(s) in 0.0190 seconds删除数据
删除user表中row key为rk0001,info列族中列标识符为name的数据
delete 'user','rk0001','info:name'
0 row(s) in 0.4830 seconds
hbase(main):002:0> scan 'user'
ROW                                COLUMN+CELLrk0001                            column=data:age, timestamp=1529670010281, value=19rk0001                            column=data:name, timestamp=1529670010202, value=ltrk0001                            column=data:sex, timestamp=1529670012330, value=\xE5\xA5\xB3rk0001                            column=info:age, timestamp=1529670009879, value=18rk0001                            column=info:sex, timestamp=1529670010078, value=\xE7\x94\xB7rk0002                            column=data:age, timestamp=1529670128578, value=1919rk0002                            column=data:name, timestamp=1529670128531, value=ltltrk0002                            column=data:sex, timestamp=1529670129123, value=\xE5\xA5\xB3\xE5\xA5\xB3rk0002                            column=info:age, timestamp=1529670128445, value=1818rk0002                            column=info:name, timestamp=1529670128315, value=zjszjsrk0002                            column=info:sex, timestamp=1529670128489, value=\xE7\x94\xB7\xE7\x94\xB7
2 row(s) in 0.0870 seconds删除user表,row key为rk0002,列标识符为info:name,timestamp1529670128315的数据
delete 'user', 'rk0002', 'info:name', 1529670128315
0 row(s) in 0.0100 secondshbase(main):004:0> scan 'user'
ROW                                COLUMN+CELLrk0001                            column=data:age, timestamp=1529670010281, value=19rk0001                            column=data:name, timestamp=1529670010202, value=ltrk0001                            column=data:sex, timestamp=1529670012330, value=\xE5\xA5\xB3rk0001                            column=info:age, timestamp=1529670009879, value=18rk0001                            column=info:sex, timestamp=1529670010078, value=\xE7\x94\xB7rk0002                            column=data:age, timestamp=1529670128578, value=1919rk0002                            column=data:name, timestamp=1529670128531, value=ltltrk0002                            column=data:sex, timestamp=1529670129123, value=\xE5\xA5\xB3\xE5\xA5\xB3rk0002                            column=info:age, timestamp=1529670128445, value=1818rk0002                            column=info:sex, timestamp=1529670128489, value=\xE7\x94\xB7\xE7\x94\xB7
2 row(s) in 0.0480 seconds清理user表中的数据
truncate 'user'
修改表结构
首先停用user表(新版本不需要)
disable 'user'
添加两个列族
alter 'user', NAME =>'f1'
alter 'user', NAME =>'f2'
启用表
enable 'user'删除一个列族
disable 'user'
alter 'user' ,NAME => 'f1', METHOD => 'delete'
或者
alter 'user', 'delete' => 'f1'添加列族f1,同时删除列族f2
alter 'user', {NAME => 'f1'},{NAME => 'f2', METHOD => 'delete'}将user表中的info列族的版本号改成10
alter 'user', NAME => info , VERSIONS =>5disable 'user'
0 row(s) in 2.9250 secondshbase(main):002:0> desc 'user'
Table user is DISABLED
user
COLUMN FAMILIES DESCRIPTION
{NAME => 'data', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0', VERSIONS => '5', COMPRESSION => 'NONE
', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CELLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 't
rue'}
{NAME => 'info', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0', VERSIONS => '5', COMPRESSION => 'NONE
', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CELLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 't
rue'}
2 row(s) in 0.0620 secondshbase(main):003:0> alter 'user', NAME=> 'info', VERSIONS => 15
Updating all regions with the new schema...
1/1 regions updated.
Done.
0 row(s) in 2.0130 secondshbase(main):004:0> enable
enable                     enable_all                 enable_peer                enable_table_replication
hbase(main):004:0> enable 'user'
0 row(s) in 1.4350 secondshbase(main):005:0> desc 'user'
Table user is ENABLED
user
COLUMN FAMILIES DESCRIPTION
{NAME => 'data', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0', VERSIONS => '5', COMPRESSION => 'NONE
', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CELLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 't
rue'}
{NAME => 'info', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0', VERSIONS => '15', COMPRESSION => 'NON
E', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CELLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => '
true'}
2 row(s) in 0.0210 seconds启用表
enable 'user'删除表
disable 'user'
drop 'user'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/325930.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

类的无参方法

一、方法: 1.组成:访问修饰符(public) 返回值类型(void,String ,int) 方法名(采用驼峰命名法)(){ //方法体 } eg:public String run(){ //方法体 return “快跑”; } 注意&#xff1…

这些保护Spring Boot 应用的方法,你都用了吗?

转载自 这些保护Spring Boot 应用的方法,你都用了吗? Spring Boot大大简化了Spring应用程序的开发。它的自动配置和启动依赖大大减少了开始一个应用所需的代码和配置量,如果你已经习惯了Spring和大量XML配置,Spring Boot无疑是…

.NET Core 2.0及.NET Standard 2.0

.NET Core 2.0的发布时间,.NET Core 2.0预览版及.NET Standard 2.0 Preview大概在5月中旬或下旬发布。 .NET Core 2.0正式版本发布时间大约在Q3 2017发布,具体我估计大概在8月份左右。同时一起发布的也就是.NET Standard 2.0。 MilestoneRelease Date.…

路径、形状工具与选区

一、路径工具: 可以转换为选区或者使用涂颜色填充和描边的轮廓。 二、路径工具的功能: 1.绘制平滑线条 2.绘制矢量形状 3.勾选图像轮廓 4.选区互换 三、路径工具的分类: 1.路径选择工具:选择一个闭合的路径或者是一个独立存在的路…

zookeeper 屁民

视频链接:https://pan.baidu.com/s/1b_liTHLVCesMWqoZYokxyA 密码:wjgu 视频在 00:31:00–01:03:00之间 Zookeeper Server最基础的东西是什么呢?我想应该是Paxos了。所以本文会介绍Paxos以及它在ZK Server中对应的实现。 先说Paxos&#x…

Linux清理磁盘挂载点方法(亲测有效)

问题现象 Linux操作系统云服务器根目录空间占用率过高。例如,以图1为例,根目录空间占用率为96%。 根目录空间占用率过高 查询当前系统存在一个约42G 大小的文件access_log,这个文件应该是apache产生的访问日志文件,从日志大小来…

.NET程序在Linux容器中的演变

本文将首先讨论镜像的构建时间和启动时间,接着会将一个简单的.NET程序运行在基于容器的应用上,然后观察镜像大小的变化,最终缩短镜像的构建和加载时间。此外,代码优化是本文的另一个主题。 现在,.NET开发人员可以无障…

滤镜与通道

一、滤镜:在原有图像的基础上,产生许多离奇而炫目的效果的工具集合。 二、滤镜分为两个部分: 1.内置的滤镜 2.外挂滤镜 三、滤镜组: 1.渲染:可以在图像中创建三维形状,云彩图案和三维光照效果。 2.风格化&a…

Zookeeper 详讲(笔记)1

client发送request给follower,follower将request给leader,leader将proposal(提议)发送给所有的follower,follower进行投票,每一个follower返回一个ack给Leader,leader将commit发送给所有的follower进行更新…

React的列表渲染

//9. 列表渲染class List extends React.Component{state {list:[1,2,3,4,5],list2:[{id:1,text:java},{id:2,text:js},{id:3,text:php},{id:4,text:python},{id:5,text:node}]}render(){const arr this.state.list;const arr2 this.state.list2;const listItem []const li…

Spring-SpringMVC父子容器

转载自 Spring-SpringMVC父子容器 前言 Spring&SpringMVC作为bean管理容器和MVC默认框架,是大多数web应用都会选择的方案。在其使用过程中,尽管基于xml的配置bean管理的方式依然存在,但在很多情况下已经采用的强大的注解功能将其替代。…

微服务的概念——《微服务设计》读书笔记

《领域驱动设计》(Eric Evans):告诉我们用代码呈现真实世界的重要性,并且告诉我们如何更好地建模。 持续交付理论:如何更有效及更高效地发布软件品,并指出保持每次提交均可发布的重要性。 六边形架构理论&a…

图标设计

一、图标的作用: 1.吸引用户的注意力 2.跨语言障碍,更好的实现人机交互。 二、图标的尺寸: 1.128128 2.4848 3.256256 4.3232 5.16*16 三、icon的中文意思就是图标,图形化表示。 四、图标的色彩数量: 1.颜色数&#xf…

React中后台管理系统添加广告分类显示不出来

问题描述 添加广告分类之后,其他的页面能正常显示,看不到广告页面,或者看到广告页面不停的转圈(打开network看到client的拦截信息) 问题分析 可能是浏览器中的拦截器拦截了请求 解决办法 关闭浏览器中的拦截广告插件

自定义机架感知

副本节点的选择(机架感知) 1、默认情况下 第一个副本在client所处的节点上,如果客户端在集群之外,(在win7上运行程序,写文件到集群上),随机选一个。 第二个副本和第一个副本在不同…

想要玩转实现负载均衡,你知道这些吗?

转载自 想要玩转实现负载均衡,你知道这些吗? 一、前言 互联网早期,业务流量比较小并且业务逻辑比较简单,单台服务器便可以满足基本的需求;但随着互联网的发展,业务流量越来越大并且业务逻辑也越来越复杂&…

按钮设计

一、按钮的常识: 1.状态:正常状态、鼠标放上去的状态、按下时的状态 2.按钮的格式:bmp、gif、png、jpg(应用程序中的) gif、png、jpg、swf(网页中的) 二、按钮的表现形式: 1.图形方式 2.文字方式 3.综合方式 4.动画方式 三、按钮的…

netcore实践:跨平台动态加载native组件

缘起netcore框架下实现基于zmq的应用。在.net framework时代,我们进行zmq开发由很多的选择,比较常用的有clrzmq4和NetMQ。 其中clrzmq是基于libzmq的Interop包装, NetMQ是100%C#的zmq实现(基于AsyncIO组件)。以上两种…

>>右移运算符

>>是右移运算符。假设x5,那么x的二进制为0101,x>>1表示x右移1位,即把最右边一位的1删掉,变为010,此时x2; 仍然设x5,二进制0101,x>>2表示x右移2位,把最…