中國人的kylin

2022-08-21 18:42:16 字數 1858 閱讀 4699

度量我們就是從不同的維度來審查度量值,以便我們分析找出其中的變化規律。

對於我們的sql查詢,group by的屬性通常就是我們考量的維度,所計算出來的比如sum、min、max更欄位就是我們需要的度量。

示例講解

商品類別就是維度,sum(sales)就是度量,也就是我們從商品類別的角度來看,各種商品類別的銷售額分別是多少。

當然我們也可以進行多維度查詢。

cuboid

簡單來說,乙個cubo就是許多按維度聚合的物化檢視的集合。

示例cubo segment

雪花模型

區別定追查找:多數情況下四隊使用者的操作坐車實時反映,hive等查詢引擎很難滿足實時查詢,一般只能對資料庫中的資料進行提前計算,然後將結果存入mysql等關係型資料庫,最後提供給使用者進行查詢。

apache kylin採用「預計算」的模式,使用者只需要提前定義好查詢維度,kylin將幫助我們進行計算,並將結果儲存到hbase中,為海量資料的查詢和分析提供亞秒級返回,是一種典型的空間換時間的解決方案。

kylin不僅很好的解決了海量資料快速查詢的問題,也避免了手動開發和維護提前計算程式帶來的一系列麻煩。

四、kylin的技術架構

kylin架構圖講解

提供乙個標準的sql介面使用者可以從上方查詢系統傳送sql進行查詢分析。kylin提供了各種rest api、jdbc/odbc介面。無論從哪個介面進入,sql最終都會來到rest服務層,再轉交給查詢引擎進行處理。這裡需要注意的是,sql語句是基於資料來源的關係模型書寫的,而不是cube。

kylin在設計時刻意對查詢使用者遮蔽了cube的概念,分析師只需要理解簡單的關係模型就可以使用kylin,沒有額外的學習門檻,傳統的sql應用也很容易遷移。查詢引擎解析sql,生成基於關係表的邏輯執行計畫,然後將其轉譯為基於cube的物理執行計畫,最後查詢預計算生成的cube並產生結果。整個過程不會訪問原始資料源。

架構圖左側為資料**,訊息佇列、hive等拿到資料之後,通過kylin處理,將hbase作為儲存介質,滿足一定的實時性要求(hbase中的每行記錄的rowkey由dimension組成,measure會儲存在column family中。為了減小儲存代價,這裡會對dimension和measure進行編碼。查詢階段,利用hbase列儲存的特性就可以保證kylin有良好的快速響應和高併發。kylin在中間作為媒介,提供rest api使用以及jdbc介面供bi軟體做報表的支撐(拓展軟體:tableau,superset)。

總結例項講解

兩個維度,共有四種維度組合

圖右邊講解

00000010

+000000011

+10總結

前提是安裝好kylin所依賴的hadoop、hive、hbase、zookeeper。

修改環境變數後,重新連線xshell,不要使用source /etc/profile命令

$hbase_home/conf/hbase-env.sh

將hdfs上面的/hbase目錄刪除掉

將zookeeper上的/hbase節點刪除掉

配置kylin相關變數

載入配置檔案

kylin 會自動從環境中讀取 hadoop 配置(core-site.xml),hive 配置(hive-site.xml)和 hbase 配置(hbase-site.xml)

修改kylin.properties配置檔案(單節點時這一步可以忽略掉

)kylin啟動

yarn-siite.xml

啟動hbase

啟動hive

啟動kylin

訪問建立project->建立model->建立cube->build。

使用庫建立表

源資料

好吃的中國人

晚上在做關於遊戲中的寵物的專題,稿子是別人寫的,我得把補齊,順便填充和求證一些資料性的東西。結果在搜尋聖伯納犬的資料的時候,發現了這樣乙個帖子 乙隻聖伯納犬的選擇 我慶幸自己的遭遇,我在這裡得到的是英雄的待遇,而在東方,我的同類卻被他們所服務的物件送上餐桌。明天我就要退休,我不願面對東方人,是的,這...

網咖 中國人的國恥

網咖,中國人的國恥 慢慢的大家對網咖產生的仇視.這確實有原因的,我也曾經為小弟弟小妹妹迷上上網而發愁.但是想想國家定什麼十八以下不能上網咖就有些可怕了.我學習上網和電腦的時候正好十歲.後來有了網咖,我就去網咖,那時也不過十幾歲.如果沒有當時的網咖,也許也不會有今天的我.我相信大家跟我也是一樣的,否則...

FriendFeed上的中國人

friendfeed上的中國人 friendfeed 剛推出後,很快引爆流行,出現了大量的部落格 報道。對我來說,friendfeed 似乎沒有什麼用處。至少目前這個階段是這樣的。當然,沒用處,但並不等於不好玩。我的玩法是這樣的 1 登入 2 開啟everyone標籤 3 檢視有中文字元的部落格 4...