当我们在用java API将数据写入HBase时,如果遇到了Connection连接对象一直未null的情况,很有可能是当前系统的用户对HBase中的命名空间和表的读写权限不够导致的,接下来我会对HBase的权限的设置和查看进行说明。
HBase提供五个权限标识符:(RWXCA)
- R - 读
- W - 写
- X - 执行
- C - 创建
- A - 管理
举个例子 :
授权namespace:
Hbase授权 test_yc 用户对命名空间 aueic 授权写权限:
hbase>grant 'test_yc','W','@aueic'
授权表:
Hbase授权 test_yc 用户对命名空间 aueic 下 COLLECT_TOTAL 表设置读、写权限:
hbase>grant 'test_yc ','RW','aueic:COLLECT_TOTAL '
授权 test_yc 用户全局权限
hbase>grant 'test_yc ','A'
查看所有用户权限
hbase>user_permission '.*'