第一個"國產"Apache頂級項目——Kylin,瞭解一下!

寫在前面: 博主是一名軟件工程系大數據應用開發專業大二的學生,暱稱來源於《愛麗絲夢遊仙境》中的Alice和自己的暱稱。作爲一名互聯網小白,寫博客一方面是爲了記錄自己的學習歷程,一方面是希望能夠幫助到很多和自己一樣處於起步階段的萌新。由於水平有限,博客中難免會有一些錯誤,有紕漏之處懇請各位大佬不吝賜教!個人小站:http://alices.ibilibili.xyz/ , 博客主頁:https://alice.blog.csdn.net/
儘管當前水平可能不及各位大佬,但我還是希望自己能夠做得更好,因爲一天的生活就是一生的縮影。我希望在最美的年華,做最好的自己

        說到Apache頂級開源項目,大家首先會想到什麼???
        不熟悉Apache軟件基金會的朋友也不用擔心,大家可以去Apache官網,下拉到最下邊的頁面,查看Apache有哪些開源項目。

在這裏插入圖片描述
        相信各位朋友在項目清單中肯定會看到不少熟悉的身影,JavaEEHTTP,FTP,Hadoop,SQL,Maven,Tomcat,Kafka,Hive…這些幾乎我們天天都在打交道的朋友,竟然都是Apache頂級項目的一員。

        也許你會有些遺憾,這些頂級項目都是由外國友人所貢獻的。但認真看了本篇博客標題的朋友都應該清楚,接下來,我要爲大家介紹的是正如題目所述,第一個由國人開發的Apache頂級項目——Kylin

在這裏插入圖片描述


Kylin簡介

Kylin的誕生背景

  • Kylin是中國團隊研發的,是第一個真正由中國人自己主導、從零開始、自主研發、併成爲Apache頂級開源項目

  • Hive的性能比較慢,支持SQL靈活查詢,特別慢

  • HBase的性能快,原生不支持SQL(phoenix:可以寫sql語句來查詢hbase!!
    )

  • Kylin是將先將數據進行預處理,將預處理的結果放在HBase中,效率很高!

Kylin的應用場景

Kylin 典型的應用場景如下:

  • 用戶數據存在於Hadoop HDFS中,利用Hive將HDFS文件數據以關係數據方式存取,數據量巨大,在500G以上
  • 每天有數G甚至數十G的數據增量導入
  • 有10個以內較爲固定的分析維度

        Kylin 的核心思想是利用空間換時間,在數據 ETL 導入 OLAP 引擎時提前計算各維度的聚合結果並持久化保存

聯機事務處理OLTP聯機分析處理OLAP
OLTP是傳統的關係型數據庫的主要應用,主要是基本的、日常的事務處理,例如銀行交易。OLAP是數據倉庫系統的主要應用,支持複雜的分析操作,側重決策支持,並且提供直觀易懂的查詢結果。
OLAP聯機分析處理的用戶是企業中的專業分析人員及管理決策人員,他們在分析業務經營的數據時,從不同的角度來審視業務的衡量指標是一種很自然的思考模式。例如分析銷售數據,可能會綜合時間週期、產品類別、分銷渠道、地理分佈、客戶羣類等多種因素來考量。

使用Kylin的公司

在這裏插入圖片描述
既然都看到這麼多大公司選擇了Kylin,讓我們接下來看看爲什麼要使用Kylin?

爲什麼要使用Kylin

        Kylin 是一個 Hadoop 生態圈下的 MOLAP 系統,是 ebay 大數據部門從2014 年開始研發的支持 TB 到 PB 級別數據量的分佈式 Olap 分析引擎。其特點包括:

  • 可擴展的超快的 OLAP 引擎

  • 提供 ANSI-SQL 接口

  • 交互式查詢能力

  • MOLAP Cube 的概念

  • 與 BI 工具可無縫整合

Kylin的總體架構

Kylin 依賴於 Hadoop、Hive、Zookeeper 和 Hbase
在這裏插入圖片描述

Kylin安裝

依賴環境

從上面的架構中我們就可以看出,Kylin對於環境的依賴比較高

軟件 版本
Apache hbase-1.1.1-bin.tar.gz 1.1.1
spark-2.2.0-bin-2.6.0-cdh5.14.0.tgz 2.2.0-bin-cdh5.14.0
apache-kylin-2.6.3-bin-hbase1x.tar.gz 2.6.3

集羣規劃

在這裏插入圖片描述
注意:

  • kylin-2.6.3-bin-hbase1x所依賴的hbase爲1.1.1版本
  • 要求hbase的hbase.zookeeper.quorum值必須只能是host1,host2,…。不允許出現帶端口號的情況,例如:host1:2181,…

安裝HBase1.1.1

        因爲我們之前用的hbase版本是hbase-1.2.0-cdh5.14的版本,所以在安裝kylin之前,我們需要下安裝hbase 1.1.1版本

<1>下載hbase 1.1.1版本

這裏我已經下載好了,需要的朋友可以後臺私信我
在這裏插入圖片描述

<2>上傳到一臺服務器,解壓縮

tar -xvzf hbase-1.1.1-bin.tar.gz -C ../servers/

<3>修改hbase-env.sh

添加JAVA_HOME環境變量

export JAVA_HOME=/export/servers/jdk1.8.0_141/
export HBASE_MANAGES_ZK=false

<4>修改hbase-site.xml,添加以下配置

注意:

  • 修改HDFS NameNode節點名稱
  • 修改zookeeper服務器名稱
  • 修改zookeeper數據目錄位置
<configuration>
        <property>
                <name>hbase.rootdir</name>
                <value>hdfs://node1:8020/hbase_1.1.1</value>
        </property>

        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>

        <!-- 0.98後的新變動,之前版本沒有.port,默認端口爲60000 -->
        <property>
                <name>hbase.master.port</name>
                <value>16000</value>
        </property>
        <property>
              <name>hbase.zookeeper.property.clientPort</name>
              <value>2181</value>
      </property>
      <property>
              <name>hbase.master.info.port</name>
              <value>60010</value>
      </property>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>node1,node2,node3</value>
        </property>

        <property>
        	<name>hbase.zookeeper.property.dataDir</name>
         	<value>/export/servers/zookeeper-3.4.9/zkdatas</value>
        </property>
      <property>
                <name>hbase.thrift.support.proxyuser</name>
                <value>true</value>
      </property>
      <property>
                <name>hbase.regionserver.thrift.http</name>
                <value>true</value>
      </property>
</configuration>

<5>修改regionservers,添加其他的節點

node1

<6>在hbase conf目錄中創建core-site.xml和hdfs-site.xml軟連接

ln -s /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/core-site.xml $PWD/core-site.xml
ln -s /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/hdfs-site.xml $PWD/hdfs-site.xml

<7>配置HBase環境變量

# Apache HBase 1.1.1
export HBASE_HOME=/export/servers/hbase-1.1.1
export PATH=$HADOOP/sbin:$HADOOP/bin:$HBASE_HOME/bin:$PATH

刷新環境變量

source /etc/profile

<8>使用 zkCli 刪除之前的 hbase 節點

# 進入到 zkCli中
/export/servers/zookeeper-3.4.9/bin/zkCli.sh
# 執行刪除
rmr /hbase

啓動

  1. 啓動ZooKeeper
  2. 啓動HDFS
  3. 啓動HBase
bin/start-hbase.sh
  1. 進入hbase shell

        執行上述操作,執行list命令,如果能顯示以下內容,表示安裝成功。

hbase(main):002:0> list
TABLE                                                                                                                  
0 row(s) in 0.1380 seconds

=> []

ok,安裝完了Hbase1.1.1,接着我們開始安裝kylin

安裝kylin-2.6.3-bin-hbase1x

<1>解壓

tar -zxf /export/softwares/apache-kylin-2.6.3-bin-hbase1x.tar.gz -C /export/servers/

<2>增加kylin依賴組件的配置

/export/servers/apache-kylin-2.6.3-bin-hbase1x/conf
ln -s $HADOOP_HOME/etc/hadoop/hdfs-site.xml hdfs-site.xml
ln -s $HADOOP_HOME/etc/hadoop/core-site.xml core-site.xml
ln -s $HBASE_HOME/conf/hbase-site.xml hbase-site.xml
ln -s $HIVE_HOME/conf/hive-site.xml hive-site.xml
ln -s $SPARK_HOME/conf/spark-defaults.conf spark-defaults.conf

<3>配置kylin.sh

/export/servers/apache-kylin-2.6.3-bin-hbase1x/bin
vim kylin.sh

kylin.sh文件添加如下內容:

export HADOOP_HOME=/export/servers/hadoop-2.6.0-cdh5.14.0
export HIVE_HOME=/export/servers/hive-1.1.0-cdh5.14.0
export HBASE_HOME=/export/servers/hbase-1.1.1
export SPARK_HOME=/export/servers/spark-2.2.0-bin-2.6.0-cdh5.14.0

<4>配置conf/kylin.properties

將安裝kylin的節點的名稱換上,例如node01,總共是3處需要修改。
在這裏插入圖片描述

<5>初始化kylin在hdfs上的數據路徑

hadoop fs -mkdir -p /apps/kylin

<6>啓動集羣

1、啓動zookeeper
2、啓動HDFS
3、啓動YARN集羣
4、啓動HBase集羣
5、啓動 metastore

nohup hive --service metastore &

6、啓動 hiverserver2

nohup hive --service hiveserver2 &

7、啓動Yarn history server

mr-jobhistory-daemon.sh start historyserver

8、啓動spark history server【可選】

sbin/start-history-server.sh 

9、啓動kylin

./kylin.sh start

看到下面的效果圖,說明我們的kylin已經啓動成功了
在這裏插入圖片描述

10、登錄Kylin

到這裏,我們可以通過路徑http://node01:7070/kylin對我們的kylin的WEB界面進行訪問

默認的用戶名是ADMIN,密碼是KYLIN,注意都是大寫

然後就可以看到類似下面的界面效果圖~~
在這裏插入圖片描述


小結

        Kylin的簡介以及安裝部署的過程的內容到這裏就結束了。大家需要在對kylin有所瞭解的基礎上,搭建好kylin所需要的環境。

        如果以上過程中出現了任何的紕漏錯誤,煩請大佬們指正😅

        受益的朋友或對大數據技術感興趣的夥伴記得點贊關注支持一波🙏

        
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章