Hbase教程(一) Hbase搭建

1 Hbase入门教程

HBase是一个分布式的、面向列的开源数据库,该技术来源于 FayChang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

 

HBase在Hadoop生态位置图1-1

 

1.1 Hbase概念术语

1、行键Row Key:主键是用来检索记录的主键,访问hbasetable中的行。

 

2、列族Column Family:Table在水平方向有一个或者多个ColumnFamily组成,一个ColumnFamily中可以由任意多个Column组成,即ColumnFamily支持动态扩展,无需预先定义Column的数量以及类型,所有Column均以二进制格式存储,用户需要自行进行类型转换。

3、列column:由Hbase中的列族ColumnFamily + 列的名称(cell)组成列。

4、单元格cell:HBase中通过row和columns确定的为一个存贮单元称为cell。

5、版本version:每个 cell都保存着同一份数据的多个版本。版本通过时间戳来索引。

 

6、Hbase数据结构图:

 

rowkey(行键)

product

 

food(列族)

 

name(列标识符)

price(列标识符)

name

price(列标识符)

rowkey001

ThinkPad E550
(cell基本单元格)

4199

orange

6.0

version(版本)

5.0

5.5

6.0

HBase数据结构图1-2

1.2 Hbase下载

Hbase是建立Hadoop基础上的数据库文件,因此Hbase是分布式的数据库。Hbase也提供了单机版的安装。

Hadoop和Hbase版本关系表:

版本

HBase-0.94.x

HBase-0.98.x

HBase-1.0.x

HBase-1.1.x

HBase-1.2.x

Hadoop-1.0.x

X

X

X

X

X

Hadoop-1.1.x

S

NT

X

X

X

Hadoop-0.23.x

S

X

X

X

X

Hadoop-2.0.x-alpha

NT

X

X

X

X

Hadoop-2.1.0-beta

NT

X

X

X

X

Hadoop-2.2.0

NT

S

NT

NT

X

Hadoop-2.3.x

NT

S

NT

NT

X

Hadoop-2.4.x

NT

S

S

S

S

Hadoop-2.5.x

NT

S

S

S

S

Hadoop-2.6.0

X

X

X

X

X

Hadoop-2.6.1+

NT

NT

NT

NT

S

Hadoop-2.7.0

X

X

X

X

X

Hadoop-2.7.1+

NT

NT

NT

NT

S

Hadoop和JDK版本关系表:

Hbase版本

JDK 6

JDK 7

JDK 8

1.2

Not Supported

yes

yes

1.1

Not Supported

yes

Not Supported

1

Not Supported

yes

Not Supported

0.98

yes

yes

Not Supported

0.94

yes

yes

N/A

-  S = supported and tested,支持

-  X = not supported,不支持

-  NT = not tested enough.可以运行但测试不充分

1.3 Hbase单机部署

《Hadoop教程(五)Hadoop分布式集群部署安装》安装的是Hadoop-2.7.1版本,在此需要下载Hbase-1.2.x版本:

下载地址:http://mirror.bit.edu.cn/apache/hbase/1.2.1/hbase-1.2.1-bin.tar.gz

1、配置本机hosts

      127.0.0.1 localhost

      127.0.0.1 hbase-domain hbase

2、下载hbase-1.2.1-bin.tar到目录位置:/usr/local/software/

执行命令:

mkdir /usr/local/software

cd /usr/local/software

wget http://mirror.bit.edu.cn/apache/hbase/1.2.1/hbase-1.2.1-bin.tar.gz

 

3、解压Hbase

执行命令:tar -zxvf hbase-1.2.1-bin.tar.gz

重命名:mv hbase-1.2.1  hbase_1.2.1

 

 

4、配置环境变量

export JAVA_HOME=/usr/local/software/jdk1.8.0_66

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export HBASE_HOME=/usr/local/software/hbase_1.2.1

export PATH=.:$JAVA_HOME/bin:$HBASE_HOME/bin:$PATH

 

5、修改hbase-env.sh配置文件

执行命令:

vi /usr/local/software/hbase_1.2.1/conf/hbase-env.sh

     修改内容:

         export JAVA_HOME=/usr/local/software/jdk1.8.0_66

 

6、修改hbase-site.xml配置文件

执行命令:vi/usr/local/software/hbase_1.2.1/conf/hbase-site.xml

[html] view plain copy
 
  1. <configuration>  
  2.      <property>  
  3.         <name>hbase.rootdir</name>  
  4.         <value>file:///home/hbase</value>  
  5.      </property>  
  6. </configuration>  

7、启动Hbase

执行命令:/usr/local/software/hbase_1.2.1/bin/start-hbase.sh

 

 

8、验证启动

执行命令:jps,查看运行的Hbase进程

1.4 学习Hbase推荐书籍:

1. 《Hbase权威指南》

2. 《Hbase实战》

3. 《Hbase企业应用开发实站》

4. 《Learning HBase(中文版)》

5. 《HBase管理指南》

 

 

                --以上为《Hbase教程(一) Hbase入门教程》,如有不当之处请指出,我后续逐步完善更正,大家共同提高。谢谢大家对我的关注。

                                                                                                                                                                                      ——厚积薄发(yuanxw)

原文地址:https://www.cnblogs.com/RENQIWEI1995/p/8776731.html