大数据组件之Hbase快速入门及其使用

本文介绍了HBase的安装步骤,包括配置环境变量、修改配置文件等,并详细讲解了HBase的基本操作,如创建表、插入数据、查询数据等。

1 安装

1)解压tar -zxvf HBase-1.3.1-bin.tar.gz
2) 解压完成后进入conf目录
3) 修改HBase-env.sh内容
指定JAVA_HOME目录
在这里插入图片描述
4) 修改 HBase-site.xml内容
注:这里需要安装并指定zookeeper集群和hadoop集群,如未安装,可点这里

<configuration>
	<property>     
		<name>hbase.rootdir</name>     
		<value>hdfs://master-1:9000/HBase</value>   
	</property>

	<property>   
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>

   <!-- 0.98后的新变动,之前版本没有.port,默认端口为60000 -->
	<property>
		<name>hbase.master.port</name>
		<value>16000</value>
	</property>

	<property>    
		<name>hbase.zookeeper.quorum</name>
	     <value>master-1:2181,master-2:2181,slave-1:2181</value>
	</property>

	<property>   
		<name>hbase.zookeeper.property.dataDir</name>
	     <value>/root/data/zookeeper/hbase</value>
	</property>

在这里插入图片描述
5) 修改regionservers
添加需要安装hbase的节点

在这里插入图片描述
6) 将hbase文件夹拷贝到另外两台机器
7) 启动hbase

bin/start-HBase.sh

在这里插入图片描述
8) 访问http://master-1:16010
在这里插入图片描述

2 基本操作

bin/hbase shell

进入shell终端
在这里插入图片描述
status 查看状态
在这里插入图片描述
version 查看版本号
在这里插入图片描述
whoami查看用户及组信息
在这里插入图片描述

3 表的操作

1)创建表
创建表时,需要指定表名和列族名,而且至少需要指定一个列族,没有列族的表是没有任何意义的。
创建表时,还可以指定表的属性,表的属性需要指定在列族上!
格式:
create ‘表名’, { NAME => ‘列族名1’, 属性名 => 属性值}, {NAME => ‘列族名2’, 属性名 => 属性值}, …
如果你只需要创建列族,而不需要定义列族属性,那么可以采用以下快捷写法:
create’表名’,‘列族名1’ ,‘列族名2’, …

create 'student','info'

在这里插入图片描述
2) desc 查看表结构

desc ‘student’

在这里插入图片描述
3) disable停用表

disable ‘student’
is_disabled 'student'查看是否停用

在这里插入图片描述
4) enable启用表

enable ‘student’

在这里插入图片描述
5) exits查看表是否存在

exits ‘student’

在这里插入图片描述
6) drop删除表
删除表前需要确保表在停用状态
7) truncate
8) get _split
在这里插入图片描述
获取表所对应的Region个数。每个表在一开始只有一个region,之后记录增多后,region会被自动拆分。
9)alter命令可以修改表的属性,通常是修改某个列族的属性。
alter ‘表名’, ‘delete’ => ‘列族名’

4 数据操作

1) put
put可以新增记录还可以为记录设置属性。
put ‘表名’, ‘行键’, ‘列名’, ‘值’
put ‘表名’, ‘行键’, ‘列名’, ‘值’,时间戳
put ‘表名’, ‘行键’, ‘列名’, ‘值’, { ‘属性名’ => ‘属性值’}
put ‘表名’, ‘行键’, ‘列名’, ‘值’,时间戳, { ‘属性名’ =>‘属性值’}

HBase(main):012:0> put 'student','1001','info:name','Nick'
HBase(main):003:0> put 'student','1001','info:sex','male'
HBase(main):004:0> put 'student','1001','info:age','18'
HBase(main):005:0> put 'student','1002','info:name','Janna'
HBase(main):006:0> put 'student','1002','info:sex','female'
HBase(main):007:0> put 'student','1002','info:age','20'

2) scan
scan命令可以按照rowkey的字典顺序来遍历指定的表的数据。
scan ‘表名’:默认当前表的所有列族。
scan ‘表名’,{COLUMNS=> [‘列族:列名’],…} : 遍历表的指定列
scan ‘表名’, { STARTROW => ‘起始行键’, ENDROW => ‘结束行键’ }:指定rowkey范围。如果不指定,则会从表的开头一直显示到表的结尾。区间为左闭右开。
scan ‘表名’, { LIMIT => 行数量}: 指定返回的行的数量
scan ‘表名’, {VERSIONS => 版本数}:返回cell的多个版本
scan ‘表名’, { TIMERANGE => [最小时间戳, 最大时间戳]}:指定时间戳范围
注意:此区间是一个左闭右开的区间,因此返回的结果包含最小时间戳的记录,但是不包含最大时间戳记录
scan ‘表名’, { RAW => true, VERSIONS => 版本数}
显示原始单元格记录,在Hbase中,被删掉的记录在HBase被删除掉的记录并不会立即从磁盘上清除,而是先被打上墓碑标记,然后等待下次major compaction的时候再被删除掉。注意RAW参数必须和VERSIONS一起使用,但是不能和COLUMNS参数一起使用。
scan ‘表名’, { FILTER => “过滤器”} and|or { FILTER => “过滤器”}: 使用过滤器扫描

scan 'student'

在这里插入图片描述

scan 'student',{STARTROW => '1001', STOPROW  => '1001'}

在这里插入图片描述

scan 'student',{STARTROW => '1001'}

在这里插入图片描述
3) get
get支持scan所支持的大部分属性,如COLUMNS,TIMERANGE,VERSIONS,FILTER

get 'student','1001'
get 'student','1001','info:name'

在这里插入图片描述
4) delte
删除某rowkey的全部数据:

deleteall 'student','1001'

在这里插入图片描述
删除某rowkey的某一列数据:

delete 'student','1002','info:sex'

在这里插入图片描述

评论 14
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值