1.hbase简介
1.1 什么是hbase
HBASE是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBASE技术可在廉价PC Server上搭建起大规模结构化存储集群。
HBASE的目标是存储并处理大型的数据,更具体来说是仅需使用普通的硬件配置,就能够处理由成千上万的行和列所组成的大型数据。
HBASE是Google Bigtable的开源实现,但是也有很多不同之处。比如:Google Bigtable利用GFS作为其文件存储系统,HBASE利用Hadoop HDFS作为其文件存储系统;Google运行MAPREDUCE来处理Bigtable中的海量数据,HBASE同样利用Hadoop MapReduce来处理HBASE中的海量数据;Google Bigtable利用Chubby作为协同服务,HBASE利用Zookeeper作为对应。
1.2 与传统数据库的对比
1、传统数据库遇到的问题:
1)数据量很大的时候无法存储
2)没有很好的备份机制
3)数据达到一定数量开始缓慢,很大的话基本无法支撑
2、HBASE优势:
1)线性扩展,随着数据量增多可以通过节点扩展进行支撑
2)数据存储在hdfs上,备份机制健全
3)通过zookeeper协调查找数据,访问速度块。
1.3 hbase集群中的角色
1、一个或者多个主节点,Hmaster
2、多个从节点,HregionServer
2. habse安装
搭建方式是在hadoop集群的基础上搭建的:https://blog.csdn.net/weixin_38201936/article/details/85096496
现在提取mini1 、mini2、mini3三台虚拟机作为集群,mini1作为namenode 主节点 mini2、mini3作为datanode 从节点
| 节点 | 说明 | ip地址 |
| mini1 | 主节点 | 192.168.63.181 |
| mini2 | 从节点 | 192.168.63.182 |
| mini3 | 从节点 | 192.168.63.183 |
安装包: https://pan.baidu.com/s/1Te5nI3RVmg4oCOWvbhMmrQ 提取码: 5nny
2.1 解压:解压到根目录下 然后修改名字为hbase 如下图
tar –zxvf hbase-0.99.2-bin.tar.gz
mv hbase-0.99.2 hbase
2.2 改环境变量(每台机器都要执行)
su – root vi/etc/profile 添加内容:
export HBASE_HOME=/home/hadoop/hbase
export PATH=$PATH:$HBASE_HOME/bin
2.3 修改配置文件
在修改文件之前先将 hadoop文件下的 core-site.xml, hdfs-site.xml配置文件拷贝到hbase/conf/文件下
[[email protected] hadoop]$ cp core-site.xml hdfs-site.xml /home/hadoop/hbase/conf/
然后修改hbase/conf/文件下的 hbase-env.sh , hbase-site.xml, Regionservers 三个配置文件
1. 修改hbase-env.sh 文件
export JAVA_HOME=/usr/java/jdk1.8.0_191-i586 //jdk安装目录
export HBASE_CLASSPATH=/home/hadoop/hadoop-2.6.4/conf //hadoop配置文件的位置
export HBASE_LOG_DIR=${HBASE_HOME}/logs //日志文件
export HBASE_MANAGES_ZK=false //如果使用独立安装的zookeeper这个地方就是false
2 修改hbase-site.xml文件
<configuration>
<property>
<name>hbase.master</name> #hbasemaster的主机和端口
<value>mini1:60000</value>
</property>
<property>
<name>hbase.master.maxclockskew</name> #时间同步允许的时间差
<value>180000</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://mini1:9000/hbase</value>#hbase共享目录,持久化hbase数据
</property>
<property>
<name>hbase.cluster.distributed</name> #是否分布式运行,false即为单机
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>#zookeeper地址
<value>mini1,mini2,mini3</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>#zookeeper配置信息快照的位置
<value>/home/hadoop/zkdata</value>
</property>
</configuration>
3. 修改Regionservers文件 里面存放从节点的主机名
mini2
mini3
上面的修改完成后 将hbase 发送给mini2,mini3
scp -r hbase mini2:/home/hadoop/
scp -r hbase mini3:/home/hadoop/
配置完之后,可以启动检验一下是否配置成功
[[email protected] hbase]$ bin/start-hbase.sh
登录网页查看一下:http://master:60010/