Hbase的shell操作

Hbase的shell操作

1.Hbase中的DDL操作

1)建表

语法1.     create "namespace:表名","family column","family column"

语法2.    {表的一些属性 必须包含列族}

create "namespace:表名",{NAME=> “”,VERSIONS => 3,TTL =>},{NAME => ""}

常用属性:VERSIONS => 1  指定数据版本, TTL => 2592000  指定数据存储周期

2)查看表列表

list

hbase> list  查看所有的表列表
hbase> list 'abc.*'  查看所有的指定字符开头的表  default 下的
hbase> list 'ns:abc.*'  查看指定的namespace下的所有的指定字符开头的表列表
hbase> list 'ns:.*'   查看指定namespace下的所有表列表

3)查看表的详细信息
help 'describe'
hbase> describe 't1'  查看default下的表的描述信息 
hbase> describe 'ns1:t1' 查看指定namespace下的所有表描述信息的

4)查看表是否禁用

hbase中表有两种状态:
    启用 enable 可以执行操作的
    禁用 disable 不可以执行操作
is_disabled 查看表是否禁用  禁用true 启用 false
    is_disabled "namespace:表名"
is_enabled  查看表是否启用  启用 true 禁用 false

5)禁用表和启用表的相关操作

disable "namespace:表名"
enable “namespace:表名”

6)删除表
    先禁用表  在删除表
disable "namespace:表名"

drop "namespace:表名"

2.Hbase中的DML操作


1)向表中添加数据 put

行键   列族:列  值
hbase> put 'namespace:表名', '行键', '列族:列', '列的值'  如下:

put "bd1901:test2","rk001","info1:name","zs"
put "bd1901:test2","rk001","info1:age","18"
put "bd1901:test2","rk001","info1:addr","hebei"

2)查询表数据

1.扫描查询  scan

1)全表扫描:scan "表名"   scan "ueser_info"

2)指定列扫描:scan "user_info",{COLUMNS=>["base_info:name","base_info:age"]}

3)指定显示行数:scan "user_info",{COLUMNS=>["base_info:name"],LIMIT=>需要显示的行数}

4)指定rowkey范围显示:scan "user_info",{COLUMNS=>["base_info:name"],LIMIT=>10,STARTROW => "",ENDROW => ""}这种显示方式,包含左边界,不包含右边界

5)可以指定时间戳范围 查询数据 TIMERANGE => [起始时间戳,终止的时间戳]

2.单条查询  get

1)查询指定行键的 只能查询一条数据的:hbase> get 'namespace:表名',"行键"   get "user_info","zhangsan_20150701_0004"

2)指定需要查询的一行数据的列:

get "user_info","zhangsan_20150701_0004",{COLUMN => ["base_info:name","base_info:age"]}、

3)可以指定查询的数据的 时间戳范围的:

 get "user_info","zhangsan_20150701_0004",{TIMERANGE => [1558844823464,1558847245992]}
 时间戳  含头不含尾的

3)删除表数据 delete 

 delete 'namespace:表名', '行键', '列族:列', 时间戳

delete "user_info","zhangsan_20150701_0004","base_info:age",1558848338698

4)清空表数据 

truncate "namespace:表名"

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值