Hdoop学习笔记(HDP)-Part.16 安装HBase

十六、安装HBase

1.安装

选择HBase进行安装
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.HMaster HA

ACTIONS->ADD HBase Master
在这里插入图片描述

3.Ranger授权

在HBase中新建策略
在这里插入图片描述
在这里插入图片描述
先以hbase/[email protected]身份分别创建两个表空间及表

kinit -kt /etc/security/keytabs/hbase.service.keytab hbase/[email protected]
hbase shell
create_namespace 'tenant1'
create_namespace 'tenant2'
create 'tenant1:hbase_table1',{NAME=>'baseinfo',VERSIONS=>5},{NAME=>'extrainfo',VERSIONS=>3}
create 'tenant2:hbase_table2',{NAME=>'baseinfo',VERSIONS=>5},{NAME=>'extrainfo',VERSIONS=>3}

然后以tenant1身份登录,分别测试对两张表的权限

kinit -kt /root/keytab/tenant1.keytab tenant1
hbase shell
describe 'tenant1:hbase_table1'
describe 'tenant2:hbase_table2'

在这里插入图片描述

4.常用操作

(1)连接HBase

首先通过Kerberos认证,然后用hbase shell连接

kinit -kt /etc/security/keytabs/hbase.service.keytab hbase/[email protected]
hbase shell

注:向左删除是ctrl+backspace、向右删除是backspace。

(2)表空间

hbase默认有两个表空间,它们是default和hbase
列出所有表空间

list_namespace

查看表空间下有的表

list_namespace_tables 'default'

创建表空间,禁止创建表到hbase表空间下

create_namespace 'tenant1'

查看表空间信息

describe_namespace 'tenant1'

删除表空间

drop_namespace 'tenant1'

(3)表

创建表
该表中有两个列族baseinfo和extrainfo,baseinfo族中存储的每个值的最近时间版本数量为5,族参数必须大写,如NAME和VERSION

create 'tenant1:hbase_table1',{NAME=>'baseinfo',VERSIONS=>5},{NAME=>'extrainfo',VERSIONS=>3}

显示表结构

describe 'tenant1:hbase_table1'

修改表
会先判断有没有,有就修改,没有就增加,修改是alter
修改列族baseinfo,将主版本数量改为3

alter 'tenant1:hbase_table1',{NAME=>'baseinfo',VERSIONS=>3}

增加列族base

alter 'tenant1:hbase_table1',{NAME=>'base',VERSIONS=>5}

删除列族baseinfo,低版本的HBase需要先disable而不是alter,再delete

alter 'tenant1:hbase_table1',{NAME=>'baseinfo',METHOD=>'delete'}

判断表是否存在

exists 'tenant1:hbase_table1'

删除表
在删除表之前必须先disable禁用表然后再执行drop操作删除它
disable ‘tenant1:hbase_table1’
drop ‘tenant1:hbase_table1’
增加键值对到表中
向tenant1表空间的hbase_table1表中的base列族中添加name列,添加值为ligang
修改和增加都是put,存在时是修改,不存在时是增加

put 'tenant1:hbase_table1','001','base:name','liujingyu'
put 'tenant1:hbase_table1','001','base:age',37

查询001行的所有键值对

get 'tenant1:hbase_table1','001','base:name'

删除表中的键值对

delete 'tenant1:hbase_table1','001','base:name'

删除表中的所有数据并重置表的结构,实际上truncate属于DDL操作

truncate 'tenant1:hbase_table1'

扫描表中的所有行的数据

scan 'tenant1:hbase_table1'

统计表中的行记录数

count 'tenant1:hbase_table1'

你可能感兴趣的:(hadoop,学习,笔记,hadoop,hbase)