HBase学习笔记2 - HBase shell常用命令
转载请标注原链接:http://www.cnblogs.com/xczyd/p/6639397.html
扫表的时候限定行数
scan 'TABLE_NAME', { LIMIT => 5 }
即为扫表的时候,限定只输出五条数据
==============================================
删表
删表需要执行两个步骤,即disable和drop,具体如下:
disable 'TABLE_NAME' drop 'TABLE_NAME'
当然disable后的表还可以重新enable起来,命令为:
enable 'TABLE_NAME'
==============================================
给用户赋权限
grant 'USER_NAME', 'RWXCA', 'TABLE_NAME'
较常见的就是给一个用户赋予某张表的权限,其中'RWXCA'每个字母表示一种权限类型,R(Read)是读,W(Write)是写,X(Exec)是执行,C(Create)是创建,A(Admin)是管理员权限
也有开启行级和单元格级别权限的命令,但是不是很常用,具体如下:
grant 'USER_NAME', 'RWXCA', 'TABLE_NAME', 'f1', 'col1'
==============================================
关闭表的WAL log
在HBase的Java API中,可以通过如下的方法来指定写入时不使用WAL log:
Put put = new Put(rowKey); put.setWriteToWAL(false);
在HBase shell中,可以执行如下命令来关闭一张表的WAL log:
alter 'TABLE_NAME', DURABILITY => 'SKIP_WAL'
注意此命令需要这张表的所有region下线后再上线才能生效(如果不想重启集群的话,就只能disable再enable一个表)
DURABILITY可选的值有ASYNC_WAL, FSYNC_WAL, SKIP_WAL,SYNC_WAL(默认值),USE_DEFAULT等
具体每个值的意义可以参考官网的注释:http://hbase.apache.org/0.94/apidocs/org/apache/hadoop/hbase/client/Durability.html
或者直接查看hbase源码中Durability这个枚举类型的实现