hbase简介
什么是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)没有很好的备份机制
3)数据达到一定数量开始缓慢,很大的话基本无法支撑
HBASE优势
1)线性扩展,随着数据量增多可以通过节点扩展进行支撑
2)数据存储在hdfs上,备份机制健全
3)通过zookeeper协调查找数据,访问速度块。
hbase集群中的角色
1、一个或者多个主节点,HMaster
2、多个从节点,HRegionServer
hbase的安装
hbase对hadoop的依赖关系
4.1. Hadoop 这块介绍了对应关系
hbase的分布式搭建官方地址
hbase的安装
准备条件:
1、hadoop已经安装
2、zookeeper已经安装
3、三台机器,m1、m2、m3
安装步骤
1、上传,因为本地安装的hadoop是2.7.3,因此选择的hbase安装包为hbase-1.3.0-bin .tar
2、解压
tar -zxvf hbase-1.3.0-bin.tar.gz -C apps/
3、重命名
mv hbase-1.3.0/ hbase
4、修改环境变量,添加hbase的bin目录到/etc/profile中
5、修改配置文件
修改hbase-env.sh,设置不使用自己的zookeeper和修改JAVA_HOME
export JAVA_HOME=/usr/jdk1.7.0_79 export HBASE_MANAGES_ZK=false
修改hbase-site.xml,添加如下内容
hbase.rootdir hdfs://m1:9000/hbase hbase.cluster.distributed true hbase.zookeeper.quorum m1:2181,m2:2181,m3:2181
拷贝hadoop core-site.xml,hdfs-site.xml到hbase的conf目录下
cp hadoop-2.7.3/etc/hadoop/{core-site.xml,hdfs-site.xml} hbase-1.2.3/conf/
修改regionservers添加RegionServer的地址
m2m3
### 如果需要多个HMaster节点,则需要在conf目录下新建backup-masters文件,该文件中的内容为master节点的地址
6、分发到其他机器
scp -r hbase/ m2:$PWDscp -r hbase/ m3:$PWD
7、启动
首先启动zookeeper
./zkServer.sh start./zkServer.sh status
然后启动hdfs
start-dfs.sh
最后master节点启动hbase
#ntpdate time.windows.com 同步时间
start-hbase.sh
8、测试
查看hbase相关信息,访问下面的地址
http://m1:16010/