Hbase shell 操作:增删改查小结

HBASE SHELL  操作

 

名称

命令表达式

创建表

create '表名称', '列族名称1','列族名称2','列族名称N'

添加记录     

put '表名称', '行名称', '列名称:', '值'

查看记录

get '表名称', '行名称'

查看表中的记录总数

count  '表名称'

删除记录

delete  '表名' ,'行名称' , '列名称'

删除一张表

先要屏蔽该表,才能对该表进行删除,第一步 disable '表名称' 第二步  drop '表名称'

查看所有记录

scan "表名称" 

查看某个表某个列中所有数据

scan "表名称" , {COLUMNS=>'列族名称:列名称'}

更新记录

就是重写一遍进行覆盖

 

添加一

  • 创建表

>create 'users','user_id','address','info'

hbase(main):005:0>create 'user','userid','address','info'

0row(s) in 0.4650 seconds

 

=>Hbase::Table - user

表users,有三个列族user_id,address,info

  • 列出全部表

>list

hbase(main):006:0>list

TABLE                                                                                                                                                                                         

user                                                                                                                                                                                          

1row(s) in 0.0180 seconds

 

  • 得到表的描述

>describe 'users'

hbase(main):007:0>describe 'user'

Tableuser is ENABLED                                                                                                                                                                         

user                                                                                                                                                                                          

COLUMNFAMILIES DESCRIPTION                                                                                                                                                                   

{NAME=> 'address',DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE=> '0', VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS =>'0', TTL => 'FOREVER', KEEP_DELETED_

CELLS=> 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE=> 'true'}                                                                                                           

{NAME=> 'info',DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE=> '0', VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS =>'0', TTL => 'FOREVER', KEEP_DELETED_CEL

LS=> 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE=> 'true'}                                                                                                              

{NAME=> 'userid',DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE=> '0', VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS =>'0', TTL => 'FOREVER', KEEP_DELETED_C

ELLS=> 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE=> 'true'}                                                                                                            

3row(s) in 0.0860 seconds

 

  • 创建表

>create 'users_tmp','user_id','address','info'

hbase(main):008:0>create 'user_temp','user_id','address','info'

0row(s) in 0.4320 seconds

 

=>Hbase::Table - user_temp

 

  • 删除表

>disable 'users_tmp'

>drop 'users_tmp'

hbase(main):009:0>list

TABLE                                                                                                                                                                                         

user                                                                                                                                                                                          

user_temp                                                                                                                                                                                     

2row(s) in 0.0200 seconds

=>["user", "user_temp"]

 

hbase(main):010:0>disable 'user_temp'

0row(s) in 1.4110 seconds

 

hbase(main):012:0>drop 'user_temp'

0row(s) in 0.2330 seconds

 

hbase(main):013:0> list

TABLE                                                                                                                                                                                         

user                                                                                                                                                                                          

1row(s) in 0.0090 seconds

 

=>["user"]

 

 

  • 添加记录

--一次插入一行

hbase(main):014:0>put'user','zhangsan','info:age','24';

hbase(main):017:0> put 'user','zhangsan','info:company','cnpc';

hbase(main):018:0' put 'user','zhangsan','info:birthday','1988-09-09';

hbase(main):019:0*put'user','zhangsan','address:conutry','china';

hbase(main):020:0*put'user','zhangsan','address:city','beiJing';

--一次插入多行

hbase(main):001:0>put'user','lisi','address:country','usa';put'user','lisi','address:city','newYork';

hbase(main):001:0>put'user','lisi','info:age','28'; put 'user','lisi','info:weight','70'; put'user','lisi','info:bitrhday','1900-12-12';

hbase(main):008:0>scan 'user'

ROW                                             COLUMN+CELL                                                                                                                                  

 lisi                                           column=address:city, timestamp=1450188162725, value=new\x19York                                                                              

 lisi                                           column=address:country, timestamp=1450188162691, value=usa                                                                                   

 lisi                                           column=info:age, timestamp=1450188386861, value=28                                                                                           

 lisi                                           column=info:bitrhday, timestamp=1450188386977, value=1900-12-12                                                                              

 lisi                                           column=info:weight, timestamp=1450188386967, value=70                                                                                        

 zhangsan                                       column=address:city, timestamp=1450187240722, value=beiJing                                                                                  

 zhangsan                                       column=address:conutry, timestamp=1450187240699, value=china                                                                                 

 zhangsan                                       column=info:age, timestamp=1450186822002, value=24                                                                                           

 zhangsan                                       column=info:birthday, timestamp=1450187264358, value=1988-09-09                                                                              

 zhangsan                                       column=info:company, timestamp=1450187185959, value=cnpc                                                                                     

2 row(s) in0.0640 seconds(实际上只有现行,行键确定一行)

 

 

  • 获取一条记录

1.取得一个id的所有数据

hbase(main):007:0>get 'user','zhangsan'

COLUMN                                          CELL                                                                                                                                         

 address:city                                   timestamp=1450187240722, value=beiJing                                                                                                       

 address:conutry                                timestamp=1450187240699, value=china                                                                                                         

 info:age                                       timestamp=1450186822002, value=24                                                                                                            

 info:birthday                                  timestamp=1450187264358, value=1988-09-09                                                                                                    

 info:company                                   timestamp=1450187185959, value=cnpc                                                                                                          

5row(s) in 0.0910 seconds

 

2.获取一个id,一个列族的所有数据

>get 'users','xiaoming','info'

hbase(main):012:0> get'user','zhangsan','info'   同等  get'user','zhangsan',{COLUMN => 'info'}

COLUMN                                          CELL                                                                                                                                         

 info:age                                       timestamp=1450186822002, value=24                                                                                                            

 info:birthday                                  timestamp=1450187264358, value=1988-09-09                                                                                                    

 info:company                                   timestamp=1450187185959, value=cnpc                                                                                                          

3row(s) in 0.0210 seconds

 

3.获取一个id,一个列族中一个列的

所有数据

get 'users','xiaoming','info:age'

hbase(main):015:0> get'user','zhangsan','info:age'  同等   get 'user','zhangsan',{COLUMN => 'info:age'}

COLUMN                                          CELL                                                                                                                                         

 info:age                                       timestamp=1450186822002, value=24                                                                                                            

1row(s) in 0.0160 seconds

 

 

  • 更新记录

 

>put 'users','xiaoming','info:age' ,'29'

>get 'users','xiaoming','info:age'

>put 'users','xiaoming','info:age' ,'30'

>get 'users','xiaoming','info:age'

  • 获取单元格数据的版本数据

>get'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>1}

>get'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>2}

>get'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>3}

 

 

hbase(main):004:0> put'user','zhangsan','info:age','26';

hbase(main):004:0>put 'user','zhangsan','info:age','30';

hbase(main):005:0*get 'user','zhangsan'

0row(s) in 0.0880 seconds

 

COLUMN                                          CELL                                                                                                                                         

 address:city                                   timestamp=1450187240722, value=beiJing                                                                                                       

 address:conutry                                timestamp=1450187240699, value=china                                                                                                         

 info:age                                       timestamp=1450192093812, value=30                                                                                                            

 info:birthday                                  timestamp=1450187264358, value=1988-09-09                                                                                                    

 info:company                                   timestamp=1450187185959, value=cnpc                                                                                                          

5row(s) in 0.0340 seconds

 

hbase(main):006:0>get 'user','zhangsan',{COLUMN => 'info:age',VERSIONS => 2}

COLUMN                                          CELL                                                                                                                                         

 info:age                                       timestamp=1450192093812, value=30                                                                                                            

 info:age                                       timestamp=1450189851238, value=26                                                                                                            

2row(s) in 0.0210 seconds

 

  • 获取单元格数据的某个版本数据

〉get 'users','xiaoming',{COLUMN=>'info:age',TIMESTAMP=>1364874937056}

 

hbase(main):003:0>get 'user','lisi',{COLUMN => 'info'}

COLUMN                                          CELL                                                                                                                                         

 info:age                                       timestamp=1450188386861, value=28                                                                                                            

 info:bitrhday                                  timestamp=1450188386977, value=1900-12-12                                                                                                    

 info:weight                                    timestamp=1450188386967, value=70                                                                                                            

3row(s) in 0.0560 seconds

 

hbase(main):004:0>get 'user','lisi',{COLUMN => 'info:age'}

COLUMN                                          CELL                                                                                                                                         

 info:age                                       timestamp=1450188386861, value=28                                                                                                            

1row(s) in 0.0150 seconds

 

hbase(main):005:0>get 'user','lisi',{COLUMN => ['info:age','info:weight']}

COLUMN                                          CELL                                                                                                                                         

 info:age                                       timestamp=1450188386861, value=28                                                                                                            

 info:weight                                    timestamp=1450188386967, value=70                                                                                                            

2row(s) in 0.0160 seconds

 

hbase(main):006:0>get 'user','lisi',{COLUMN => ['info:age','info:weight','address']}

COLUMN                                          CELL                                                                                                                                         

 address:city                                   timestamp=1450188162725, value=new\x19York                                                                                                   

 address:country                                timestamp=1450188162691, value=usa                                                                                                           

 info:age                                       timestamp=1450188386861, value=28                                                                                                            

 info:weight                                    timestamp=1450188386967, value=70                                                                                                            

4row(s) in 0.0280 seconds

 

 

  • 全表扫描

>scan 'users'

  • 删除xiaoming值的'info:age'字段

>delete 'users','xiaoming','info:age'

>get 'users','xiaoming'

  • 删除整行

>deleteall 'users','xiaoming'

  • 统计表的行数

>count 'users'

  • 清空表

>truncate 'users'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值