简介
什么是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作为对应。
Hbase的优点
- 线性扩展,随着数据量增多可以通过节点扩展进行支撑
- 数据存储在hdfs上,备份机制健全
- 通过zookeeper协调查找数据,访问速度快
HBase集群中的角色
- 一个或多个主节点:HMaster
- 多个从节点:HRegionServer
安装HBase(单机)
-
添加用户hbase
useradd hbase
passwd hbase -
配置sudo免密
在root用户下
vi /etc/sudoers
在
root ALL=(ALL) ALL
下面添加
hbase ALL=(ALL) ALL
注:修改完退出root用户,登录hbase用户 -
创建目录
mkdir /home/hbase/apps/ -
上传并解压安装包hbase-2.0.1-bin.tar.gz
tar -zxvf hbase-2.0.1-bin.tar.gz -C /home/hbase/apps/ -
配置环境变量
vi ~/.bash_profile
添加
export JAVA_HOME=/usr/local/jdk
export HBASE_HOME=/home/hbase/apps/hbase-2.0.1
export PATH=$PATH:$JAVA_HOME/bin:$HBASE_HOME/bin
更新配置
source ~/.bash_profile -
修改配置文件hbase-env.sh
vi /home/hbase/apps/hbase-2.0.1/conf/hbase-env.sh
在28行注释的JAVA_HOME下添加
export JAVA_HOME=/usr/local/jdk
export HBASE_MANAGES_ZK=true
export HBASE_LOG_DIR=/home/hbase/logs -
修改配置文件hbase-site.xml
vi /home