hbase的安装流程和常用命令

一、hbase简介

Hbase:是谷歌三篇论文的bigtable的实现
官网:http://hbase.apache.org/
Hbase:hadoop的database;
非关系型数据库;NoSql;Redis,memcache,mongodb,Hbase
HBase :Hadoop Database
是一个高可靠性、高性能、面向列、可伸缩、实时读写的分布式数据库

利用HadoopHDFS作为其文件存储系统,利用HadoopMapReduce来处理HBase中的海量数据,利用Zookeeper作为其分布式协同服务

主要用来存储非结构化和半结构化的松散数据(列存 NoSQL 数据库)

  1.结构化数据:列是固定的,值也不能瞎填写;(mysql表,列是固定的,列有类型的)
  2.非结构化数据:列是不固定的,内容随便填写;
  3.半结构数据:木有硬性的规定,写文档也会注意格式,如果格式不对,也不报错
  4.ETL(Extract抽取-Transform转换-Load加载 ):数据清洗,就是把非结构化数  据变成结构化数据;

核心包括三部分:

1.Rowkey:键
2.列族,列:值
3.时间戳:版本
4.按照rowkey字典(ASCII)顺序存储,基于rowkey的高效检索,同时继承hdfs的吞吐能力;

hbase和mysql的区别

Hbasemysql
namespace数据库
列族(一群列)列是固定的
记录记录

二、hbase的配置流程
1.data下创建hbase文件在这里插入图片描述
2.将压缩包传入hbase

3.tar -zxvf hbase 将压缩包解压,并删除安装包

4.进入conf目录中打开hbase-env.sh 添加javahome 路径
whereis javac 可以帮你找到jdk路径
在这里插入图片描述

7.修改conf目录下的 hbase-site.xml文件
并修改rootdir data文件存放路径

<?xml version="1.0"?>
	<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
	<configuration>
		<!-- hadoop的数据存储位置 -->
		<property>
			<name>hbase.rootdir</name>
			<!-- 
				file:///:本地文件
				http://http协议
			-->
			<value>file:///data/hbase/data</value>
		</property>
		<!-- 
			zookeeper的目录
			hbase必须得有一个zookeepr;
			hbase自带了一个zookeeper
		 -->
		<property>
			<name>hbase.zookeeper.property.dataDir</name>
			<value>/data/hbase/zookeeper</value>
		</property>
		<!-- 
			hbase自带的一个安全机制
		-->
		<property>
			<name>hbase.unsafe.stream.capability.enforce</name>
			<value>false</value>
		</property>
	</configuration>

8.启动服务器
bin/start-hbase.sh

9.启动客户端
bin/hbase shell

10.访问网页
http://node7-3:16010/master-status

11.退出HBASE外壳
quit 这样会停止界面,但是hbase还是在后台运行

12.关闭服务
bin/stop-hbase.sh stop

三、hbase的相关操作

namespace:命名空间
1.帮助命令: help

	help 'create_namespace'

2.创建一个命名空间

	create_namespace 'mydata'

3.列出所有的namespace

	list_namespace 

4.描述namespace

	describe_namespace 'mydata'

5.删除namespace

	drop_namespace 'mydata'

6.查看状态:status

三、表操作

1.创建表 :create

	create '	mydata	:	psn1  ', 'cf'
	 	     (命名空间下) (表名字) (列族)
	 	create 'psn1','cf'

2.查询表 :List

	list  ' namespace : .*'  查看namespace下面所有的表
	list 'mydata : .*'		
	list_namespace_table 'mydata'   查看mydata下所有的表

3.禁用表 :disable

	disable 'mydata:psn1'

4.删除表 :drop 要先禁用表后再删除表

		drop 'mydata:psn1' 

四、记录的crud(增删改查)

1.增加,放入数据 :put

	put 'mydata:psn1','key01','cf','tes t'
	put 'mydata:psn1','key01','cf:name', 'zhangsan'
	put 'mydata:psn1','key01','cf:age','48'
		这些数据的键是一样的所以算是一条记录
		有几个键就有几条记录

2.修改: 需要键一样,列族和列都要一样

	原来:put 'mydata:psn1','key01','cf:name','zhangsan '
    修改时:put 'mydata:psn1','key01','cf:name','fufulinlin'

 	删除:delet
	  		delete 'mydata:psn1','key01','cf'
	将mydata下的psn1这个表里的 key01的数据全部删除
	  		deleteall 'mydata:psn1','key01'

3.查 询 :scan

	scan 'mydata:psn1'
	scan 'mydata:psn1',{STARTROW => 'key02' , LIMIT => 2}
					(这个输入的是键)	          (限制)

4.禁用 :disable

	disable 'mydata:psn1'

5.删除 :drop 要先禁用表后再删除表

	drop 'mydata:psn1' 

6.获取一条记录 get

Get 表名 ,,取出键对应的所有列
	get 'mydata:psn1','key01'
取其中一个列的属性
	get 'mydata:psn1','key01',{COLUMNS=>'cf:name'}
								()

7.截断表 truncate

	truncate 'mydata:psn1'

8.溢写操作

flush 'mydata:psn1'
			执行后会溢写在磁盘中,溢写会自动进行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值