HBase配置及使用

1.Why

1.1.为什么要学习hbase

Web框架图
Model2
在这里插入图片描述

  • 开发的顺序:从下到上
  • 读别人代码的时候是从上到下
  • 总结(共性)

所有的项目,数据都存储到了数据库中 数据库只认sql语句(crud)
用户会在网页上进行:点击,双击,右击,滑动此效果;会被jsp(Servlet)(java)翻译成sql语句,发送给数据库

Cud:是对数据库进行更改操作,R:对数据库进行查询操作;一张的crud:最常用的是R(查询);而每一次发送查询,都会发送一条sql语句;数据库见到sql语句就会执行;同样的查询会发送多条sql语句;如果发现sql语句执行的结果是一样的,直接只查询一次数据库;把查询的数据放到一个地儿(内存);下次查询的时候直接查询内存,这样会超级快;对于数据库来说减轻了压力;如果数据库里面的记录发生了修改,请顺手把缓存也更新一次3

  • 缓存的条件

表里面的记录超级多;
表里面的记录不经常修改
命中率:得经常访问

  • 缓存的分类:

Jvm的集合:map;缺点:jvm(tomcat)要是重启了咋办
早期的Memcache:它是一个独立的软件,使用的时候当成map使用;缺点:电脑重启咋办
Redis:把数据放到内存中,会定时的把数据放到磁盘中; Web项目映射到大数据项目中

  • Web项目映射到大数据项目中
web项目大数据
磁盘Hdfs
Dbhive
缓存(Redis)Hbase

2.介绍

官网:http://hbase.apache.org/

  • 谷歌的三篇论文

Gfs===>hadoop的hdfs
Mapreduce—>hadoop的mapReduce
bigTable—>Hbase

在这里插入图片描述
下载:http://hbase.apache.org/downloads.html
在这里插入图片描述上图解析:
Bin:可执行文件
Conf:配置文件
Docs:帮助文档
Hbase-webapps:web界面
Lib:jar包
README.txt:帮助文档

3.配置单机版本
  • 将下载好的HBase压缩包拉到虚拟机上
    #解压目录
    tar -xzvf hbase-2.2.2-bin.tar.gz
    #重新命名
    mv hbase-2.2.2/ hbase
    #删除docs目录
    rm -rf docs/(此目录是帮助文档,可删可不删)
  • 修改hbase下的 conf hbase-env.sh配置文件
    配置JAVE_HOME路径
    在这里插入图片描述如何查看java安装的目录?
    在这里插入图片描述- 修改hbase下的 conf hbase-site.xml配置文件
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
	<property>
		<name>hbase.rootdir</name>
		<!--
			file://表示的是本地目录
			hdfs://表示的是hdfs的目录;
			hdfs://namenode.example.org:8020/hbase
		 -->
		<value>file:///data/hbase/data</value>
	</property>
	<property>
		<name>hbase.zookeeper.property.dataDir</name>
		<!-- zookeeper的目录:data目录 -->
		<value>/data/hbase/zookeeper_data</value>
	</property>
	<property>
		<name>hbase.unsafe.stream.capability.enforce</name>
		<value>false</value>
		<description>
			检查兼容性,如果设置为false,数据有可能丢失(这是一个警告)
		  Controls whether HBase will check for stream capabilities (hflush/hsync).

		  Disable this if you intend to run on LocalFileSystem, denoted by a rootdir
		  with the 'file://' scheme, but be mindful of the NOTE below.

		  WARNING: Setting this to false blinds you to potential data loss and
		  inconsistent system state in the event of process and/or node failures. If
		  HBase is complaining of an inability to use hsync or hflush it's most
		  likely not a false positive.
		</description>
	</property>
</configuration>
  • 启动hbase
bin/start-hbase.sh

如果启动报错,去查看日志
在这里插入图片描述
网页访问 :http://主机名:16010
在这里插入图片描述

  • 停止
bin/stop-hbase.sh
  • 启动客户端
bin/hbase shell
  • 帮助文档
  • 查看所有的命令 :Help
    在这里插入图片描述
    查看指定命令的用法
    help ‘create_namespace’
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20191213201404439.png

创建一张表
create ‘表名’,’列族’(column family)

创建指定namespace目录下面的表;所有的表名左边要加上namespace,如果不加,默认是default
在这里插入图片描述创建namespace
在这里插入图片描述
查看表结构
list 表名

在这里插入图片描述插入数据
put 表名,键(主键),列的名字,值
put ‘test’,‘01’,‘cf:name’,‘zhangsan’
put ‘test’,‘01’,‘cf:age’,‘18’
在这里插入图片描述 查询
查询所有记录
scan 表名

在这里插入图片描述根据主键查询
查询所有记录(这里相当于mysql里的 select * from test where id = 01;)
在这里插入图片描述删除表(删除表一定要先停用表,不然无法删除)

停用表:disable 表名
drop ‘表名’
在这里插入图片描述退出客户端:quit, exit

数据库mysqlHbase
数据库Namespace
记录记录
列族下面才有列
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值