1. 程式人生 > 實用技巧 >Hbase 搭建與入門

Hbase 搭建與入門

目錄


[資料】(https://github.com/jast90/awesome-learning/issues/1))

Hbase 使用場景和成功案例

  • Hbase是一種資料庫:Hadoop分散式資料庫

  • HBase 應用場景
    -1、使用者畫像
    比如大型的視訊網站,電商平臺產生的使用者點選行為、瀏覽行為等等儲存在HBase中為後續的智慧推薦做資料支撐。
    2、訊息/訂單儲存
    這個場景主要應用在電商平臺,因為HBase提供了一個低延時、高併發的訪問能力
    3、物件儲存
    這裡的物件儲存實際是中等物件儲存,是對HDFS儲存檔案的一個緩衝過度,因為如果我們大量的1M或2M這種小檔案直接儲存在HDFS上,會對NAMENODE造成元資料維護的壓力,所以在HBase中可以很好的做過度合併後在持久化到HDFS上。HBase提供了中等對現象的儲存能力,中等物件的大小範圍在100k至10M之間。
    4、時序資料
    這裡的時序資料是指隨著時間而變化的資料,比如速度的展示,天氣、溫度、風速、車流量等等
    5、Cube分析(KyLin)
    通過KyLin將Hive或kafka中的資料,來構建Cube,這些Cube會儲存在HBase中,以供其他的應用或其他的系統做實時查詢或實時展示。
    6、Feeds流
    這個場景主要是應用在抖音、或其他小視訊系統中,可以把Feeds流理解為一種內容聚合器,它可以幫助使用者實時的獲取最新的訂閱源內容。

HBASE 搭建(三個節點都裝)

hbase 安裝包

# 上傳至node01並解壓
cd /export/softwares
tar -zxvf hbase-2.1.0-bin.tar.gz -C ../servers/
cd ../servers/
# 刪除官方幫助文件(減少分發時間)
rm -rf docs/
# 修改配置檔案

cd /export/servers/hbase-2.1.0/conf

# hbase-site.sh
- 顯示行號
: set nu
- 28
export JAVA_HOME=/export/servers/jdk1.8.0_261
- 125 去掉註釋(表示禁止使用HBase自帶的Zookeeper)
export HBASE_MANAGES_ZK=false

# hbase-site.xml

<configuration>
<!-- 指定HBase資料在HDFS上的儲存路徑 -->
	<property>
	  <name>hbase.rootdir</name>
	  <value>hdfs://node01:8020/hbase</value>
	</property>
<!-- 設定hbase模式為叢集模式 -->
	<property>
	  <name>hbase.cluster.distributed</name>
	  <value>true</value>
	</property>
<!-- Master繫結的埠,包括backup-master -->
	<property>
	  <name>hbase.master.port</name>
	  <value>16000</value>
	</property>
<!-- 指定HBase資料在HDFS上的儲存路徑 -->
	<property>
	  <name>hbase.zookeeper.quorum</name>
	  <value>node01:2181,node02:2181,node03:2181</value>
	</property>
<!-- 設定ZK資料存放目錄 -->
	<property>
	  <name>hbase.zookeeper.property.dataDir</name>
	  <value>/export/servers/zookeeper-3.4.9/zkdatas</value>
	</property>
<!-- 屬性為所有新建的列指定一個全域性的預設的最大版本數 -->
	<property>
	  <name>hbase.column.max.version</name>
	  <value>3</value>
	</property>
</configuration>
# 修改第三個配置檔案 regionservers
cd /export/servers/hbase-2.1.0/conf
 vim regionservers
改為:
node01
node02
node03
# 建立 backup-masters配置檔案,實現 HMaster 的高可用
cd /export/servers/hbase-2.1.0/conf
vim backup-masters
寫入
node02
# 軟體包分發
scp -r hbase-2.1.0/ node02:$PWD
scp -r hbase-2.1.0/ node03:$PWD
# 三臺機器建立軟連線(拷貝原檔案,並隨著原檔案的變動而變動)
ln -s /export/servers/hadoop-2.7.5/etc/hadoop/core-site.xml /export/servers/hbase-2.1.0/conf/core-site.xml
ln -s /export/servers/hadoop-2.7.5/etc/hadoop/hdfs-site.xml /export/servers/hbase-2.1.0/conf/hdfs-site.xml
# home環境變數配置
vim /etc/profile

export HBASE_HOME=/export/servers/hbase-2.1.0
export PATH=:$HBASE_HOME/bin:$PATH

source /etc/profile
# hbase 叢集啟動

cd /export/servers/hbase-2.1.0/bin
start-hbase.sh

頁面訪問
http://node01:16010/master-status

![](https://img2020.cnblogs.com/blog/1044397/202008/1044397-20200803122437486-987339975.png)

#