Apache Hbase shell之namespace与ddl操作

本文详细介绍HBase中的核心命令,包括命名空间(namespace)管理和数据定义语言(DDL)操作。涵盖创建、查看、删除命名空间及表的方法,以及如何禁用和启用表等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通用命令:

help 查看帮助文档

help '命令':查看命令详细说明

version 查看hbase版本信息

whoami 查看hbase用户信息

1.namespace

虽然hbase没有数据库这一概念,但是namespace也就是命名空间的概念,就是数据库的意思

# 创建namespace:
create namespace   'xxx';

# 查看namespacce 详细描述信息:
describe_namespace "xxx";

# 查看namespace列表:
list_namespace;

# 查看namespace中所有的表:
list_namespace_tables "xxx";

# 删除namespace:
drop_namespace "xxx";
2.DDL操作
1)建表语句
# 格式一:create 'namespace:表名',列族1,列族2...
# 不指定则为default
create 'mkmg:user','info1','info2'

# 格式二:建表的时候指定参数,此处有名称和版本等
create 'namespace:表名',{NAME => '列族名1',VERSION => 3},{NAME => '列族名2',VERSION => 2},...
2)查看表列表
# 默认显示的是default下的
list  

# 查看表的详细信息  {}代表的是一个列簇的信息  Version  数据存储版本,默认一个数据只存储一个版本,in_memory  数据是否存在内存中,默认为false,TTL:数据过期时间,生命周期,默认永久存储 ...
describe '表名'  

# 查看某个namespace下面的所有表
list 'namespace:*'  

# 查看某个namespace下面的所有abc开头的表
list 'namespace:abc.*' 
3)查看表的禁用和启用信息:

禁用:不允许对表执行任何写操作

启用:允许执行操作

# 禁用/启动某一个表
disable | enable  'namespace:表名'  

# 禁用/启动某名称空间下所有表
disable_all | enable_all 'namespace:.*'
# 禁用/启动某名称空间下所有以t开头的表
disable_all | enable_all 'namespace:t.*'
# 禁用/启动所有以t开头的表
disable_all | enable_all 't.*'

# 判断表是否禁用 true 禁用  false 启用
is_disabled 'namespace:xxx'
# 判断表是否可用 true 启用  false 禁用
is_enabled  'namespace:xxx'
4)表删除

drop all,drop

drop 'namespace:xxx'
drop 'xxx'   
drop all   ‘namespace:*’
drop all   ‘namespace:t.*’

注:删除表前必须先禁用表

表修改

修改列族的时候,如果这个列族不存在,则相当于添加了列族

-- 修改列族
alter 'namespace:表名',{NAME => '列族名','属性名'=>'属性值'}

-- 删除列族
alter 'namespace:xx',NAME => '列族名',METHOD => 'delete'
	MeTHOD 指定对当前列族的操作类型
alter 'namespace:xx','delete' => '列族名'

注意:表中至少有一个列族,当表中只有一个列族是不允许进行删除的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值