一、HBase概述 |
1.1HBase起源
HBase是Apache Hadoop的数据库,能够对大型数据提供随机、实时的读写访问。HBase的目标是存储并处理大型的数据。HBase是一个开源的,分布式的,多版本的,面向列的存储模型,它存储的是松散型数据。HBase是bigtable的开源山寨版本.
1.2HBase在Hadoop生态体系中的位置
上图描述了Hadoop生态系统中的各层系统。其中,HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和失效转移(FailOver)机制。
1.3HBase与HDFS对比
*HDFS适合批处理场景
- 1、不支持数据随机查找
- 2、不适合增量数据处理
- 3、不支持数据更新
*HBase支持场景
- 1、支持数据随机查找
- 2、适合增量数据处理
- 3、支持数据更新
两者都具有良好的容错性和扩展性,都可以扩展到成百上千个节点;
二、HBase安装 |
2.1单机模式
1、下载解压
tar -zvxf hbase-1.21-security.tar.gz
2、设置系统环境变量
export HBASE_HOME=/usr/local/hbase
export PATH=$HBASE_HOME/bin:$PATH
修改后重新生效:source /etc/profile
3、设置Hbase环境
(1)、进入hbase/conf目录下,修改hbase-env.sh文件
export JAVA_HOME=/usr/local/jdk
export HBASE_MANAGES_ZK=true #告诉HBase使用它自己的zookeeper实例,分布式模式下需要设置为false
(2)、进入hbase/conf目录下,修改conf/hbase-site.xml文件
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///usr/hbase</value> //设置Hbase数据存储目录,本地文件目录
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/usr/hbase/data/zookeeper</value> //设置zookeeper数据存储目录
</property>
</configuration>
4、启动,验证Hbase
使用 start-hbase.sh 启动 HBase.
使用 jps 命令可以看到 HMaster进程正在运行
还可以通过访问HBase的Web接口查看:http://hadoop1:60010
HBase运行在HDFS之上,使用HBase之前务必启动HDFS服务
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///usr/hbase</value> //设置Hbase数据存储目录,本地文件目录
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/usr/hbase/data/zookeeper</value> //设置zookeeper数据存储目录
</property>
</configuration>
4、启动,验证Hbase
使用 start-hbase.sh 启动 HBase.
使用 jps 命令可以看到 HMaster进程正在运行
还可以通过访问HBase的Web接口查看:http://hadoop1:60010
HBase运行在HDFS之上,使用HBase之前务必启动HDFS服务
2.2伪分布模式
参考:1、HBase官方的文档
2、https://my.oschina.net/jackieyeah/blog/712019
2.3完全分布模式
参考:1、HBase官方的文档
2、https://my.oschina.net/jackieyeah/blog/712083