hbase的shell操作

本文详细介绍了如何在HBase shell中进行基本操作,包括创建表、添加和删除列族、修改表结构、查看表信息以及表的启用禁用。重点讲解了create、alter和describe等关键命令及其用法示例。
摘要由CSDN通过智能技术生成

hbase的shell操作

hbase shell
exit #退出命令行
version #查看当前hbase版本
status #查看状态
whoami  #告诉你当前角色

在这里插入图片描述

  • 注意表名、列名一般采用单括号包括
  • 不支持SQL语句!采用自定义的命令和语法
  • 参数大小写敏感
  • 同一个表中不可有同名的列族
  • 注意对列族参数的定义语法
  • 注意对列族参数的定义语法

二.hbase的基本操作

一.表和列族的操作

1.create:创建表
# 语法
create '表名', {NAME => '列族名1'}, {NAME => '列族名2'}, {NAME => '列族名3'}
# 此种方式是上上面的简写方式,使用上面方式可以为列族指定更多的属性,如VERSIONS、TTL、BLOCKCACHE、CONFIGURATION等属性
create '表名', '列族名1', '列族名2', '列族名3'

create '表名', {NAME => '列族名1', VERSIONS => 版本号, TTL => 过期时间, BLOCKCACHE => true}

# 示例
create 'tbl_user', 'info', 'detail'
2. alter:修改表结构
2.1 添加一个列族
# 语法 
alter '表名', '列族名'

# 示例
alter 'tbl_user', 'address'

image-20211009150037936

2.2 删除一个列族
# 语法 
alter '表名', {NAME=> '列族名', METHOD=> 'delete'}

# 示例
alter 'tbl_user', {NAME=> 'address', METHOD=> 'delete'}

在这里插入图片描述

2.3 修改列族的属性

可以修改列族的VERSIONS、IN_MEMORY

# 修改f1列族的版本为5
alter 't1', NAME => 'f1', VERSIONS => 5

# 修改多个列族,修改f2为内存,版本号为5
alter 't1', 'f1', {NAME => 'f2', IN_MEMORY => true}, {NAME => 'f3', VERSIONS => 5}

# 也可以修改table-scope属性,例如MAX_FILESIZE, READONLY,MEMSTORE_FLUSHSIZE, DEFERRED_LOG_FLUSH等。
# 例如,修改region的最大大小为128MB:
alter 't1', MAX_FILESIZE => '134217728'
3.describe:描述表结构
# 语法 
describe '表名'

# 示例
describe 'tbl_user'

在这里插入图片描述

4.exist:确认表是否存
#示例
exists 'tbl_user'

image-20211009150636183

5.list:显示所有表名列表
#示例
list

在这里插入图片描述

6.disable/enable,is_disabled/is_enabled:禁用/解禁一个表,验证

通过enable和disable来启用/禁用这个表,相应的可以通过is_enabled和is_disabled来检查表是否被禁用。

相应的表被禁用时,使用is_disabled命令查看表会出现true返回值,解禁同理

# 语法
enable '表名'
is_enabled '表名'

disable '表名'
is_disabled '表名'

# 示例
disable 'tbl_user'
is_disabled 'tbl_user'
enable 'tbl_user'
is_enabled 'tbl_user'

在这里插入图片描述

  • 注意:这里的启用和禁用表都满足正则表达式。
# 匹配以t开头的表名
disable_all 't.*'
# 匹配指定命名空间ns下的以t开头的所有表
disable_all 'ns:t.*'
# 匹配ns命名空间下的所有表
disable_all 'ns:.*'

enable_all 't.*'
enable_all 'ns:t.*'
enable_all 'ns:.*'
7.drop/drop_all:删除一个或全部
7.1.这里要注意的时需要先禁用表,然后再删除表,启用的表是不允许删除的
# 语法
disable '表名'
drop '表名'

# 示例
disable 'tbl_user'
drop 'tbl_user'

image-20211009151811648

7.2删除满足正则表达式的所有表drop_all
drop_all 't.*'
drop_all 'ns:t.*'
drop_all 'ns:.*'
8.truncate:禁用、删除并重建一个表
#示例
#创建一个表
create 't1', 'f1'
#删除并重建表't1'
truncate 't1'

在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值