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)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM