HBase常用命令
在了解HTable的数据结构前提下,对于命令的使用是很容易上手,命令和平常大家熟悉的SQL的DML语法也大同小益,感觉比SQL的语法简单很多,学习技术主要的是思想,了解作者最初设计的初衷,熟悉语法只是时间问题,一下是我整理的部分常用的HBase的命令,首先得通过${HBASE_INSTALL}/bin/hbase shell进去shell模式,exist退出shell模式。
一、服务管理
1.运行状态:status;
2.版本:version;
3.引导帮助:table_help;
4.用户信息:whoami
二、表管理
1.创建表:create ‘<table name>’,’<column family>’ ;
2.列出表:list;
3.禁用、启用表:disable/enable table_name;
4.验证是否禁用:is_disabled table_name;
5.禁用匹配给定正则表达式的表:disable_all 'r.*';
6.验证表存在:exists table_name;
7.删除表(删除之前必须禁用):drop table_name;
8.删除匹配给定正则表达式的表:drop_all ‘t.*’ ;
9.删除列族: alter ‘ table name ’,‘delete’=>‘ column family ’
10.添加/修改列族:alter 't1', NAME =>'f1', VERSIONS =>5
11.表只读:alter 't1', READONLY(option)
三、数据管理
1.插入表数据:put ’<table name>’,’row1’,’<colfamily:colname>’,’<value>’;
2.更新数据:put ‘table name’,’row ’,'Column family:column name',’new value’;
3.扫表表:scan table_name;
4.读取数据:get’<table name>’,’row1’;
5.读取指定列:get'table name',‘rowid’,{COLUMN =>‘column family:column name ’};
6.删除特定单元格数据:delete‘<table name>’,‘<row>’,‘<column name >’,‘<time stamp>’;
7.删除一行所有单元格:deleteall ‘<table name>’,‘<row>’;
8.计数表:count ‘<table name>’ ;
9.清空表:truncate table_name;
四、权限管理
出于安全的目的,可以授予、撤销hbase的权限,主要涉及三个命令:grant、revoke、user_permission。
grant授予特定权限
语法:grant
权限代码:
R - 代表读取权限
W - 代表写权限
X - 代表执行权限
C - 代表创建权限
A - 代表管理权限
例子:为用户“Tutorialspoint'授予所有权限的例子:grant 'Tutorialspoint', 'RWXCA';
revoke撤销用户访问表的权限
语法:revoke
user_permission列出特定表的所有权限
语法:user_permission ‘tablename’;
附:
参考教程:http://blog.pureisle.net/archives/1887.html