目錄
測試數據表結構介紹
1、(事實表)dw_sales
列名 |
列類型 |
說明 |
id |
string |
訂單id |
date1 |
string |
訂單日期 |
channelid |
string |
訂單渠道(商場、京東、天貓) |
productid |
string |
產品id |
regionid |
string |
區域名稱 |
amount |
int |
商品下單數量 |
price |
double |
商品金額 |
2、(維度表_渠道方式)dim_channel
列名 |
列類型 |
說明 |
channelid |
string |
渠道id |
channelname |
string |
渠道名稱 |
3、(維度表_產品名稱)dim_product
列名 |
列類型 |
說明 |
productid |
string |
產品id |
productname |
string |
產品名稱 |
4、(維度表_區域)dim_region
列名 |
類類型 |
說明 |
regionid |
string |
區域id |
regionname |
string |
區域名稱 |
導入測試數據
準備一些測試表、測試數據。
- Hive中創建表
- 將數據從本地文件導入到Hive
操作步驟
1、使用 beeline 連接Hive
!connect jdbc:hive2://node1:10000
2、創建並切換到 itcast_dw 數據庫
create database itcast_kylin_dw;
use itcast_kylin_dw;
3、找到資料中的hive.sql文件,執行sql、創建測試表
-- 查看錶是否創建成功
show tables;
4、在home目錄創建~/dat_file 文件夾,並將測試數據文件上傳到該文件夾中
mkdir ~/dat_file
導入數據到表中
5、執行一條SQL語句,確認數據是否已經成功導入
select * from dw_sales;
按照日期統計訂單總額/總數量(Hive方式)
編寫SQL語句
select date1, sum(price) as total_money, sum(amount) as total_amount from dw_sales group by date1,channelid
按照日期統計訂單總額/總數量(Kylin方式)
使用kylin對數據進行預計算流程
要使用Kylin進行OLAP分析,需要按照以下方式來進行。
1、創建項目(Project)
2、創建數據源(DataSource)
- 指定有哪些數據需要進行數據分析
3、創建模型(Model)
- 指定具體要對哪個事實表、那些維度進行數據分析
設置 Model 的參數
選擇 事實表
事實表的特徵:表裏沒有存放實際的內容,他是一堆主鍵的集合,這些ID分別能對應到維度表中的一條記錄。
( Kylin 大多數爲 星型 模型 )
選擇維度表
維度 : 表示要對數據進行分析時所用的一個量,比如你要分析產品銷售情況, 你可以選擇按類別進行分析,或按區域分析。這樣的按..分析就構成一個維度。上圖中的用戶表、商家表、時間表這些都屬於維度表。這些表都有一個唯一的主鍵,然後在表中存放了詳細的數據信息。
選擇 事實表中 所有的 有可能用到的 維度
選擇 所需要 查看的 指標 / 度量 所需要的字段
右下角 出現 Success 表示 Model 創建成功
4、創建立方體(Cube)
- 指定對哪個數據模型執行數據預處理,生成不同維度的數據
選擇 Model 和 設置 Cube名稱 其他先不配置 直接 下一步
選擇 明確需要的 字段 維度
選擇 指標 或者 度量
選擇 計算方式
5、執行構建、等待構建完成
查看進度
小知識 : 如果這裏 有一處 報錯 或者 加載不成功
查看 集羣中 的 jps (Kylin 所需要的 是否 都正常運行中 )
啓動集羣
1、啓動zookeeper
zkstart-all.sh
2、啓動HDFS
啓動
start-all.sh
關閉
stop-all.sh
3、啓動YARN集羣
4、啓動HBase集羣
cd /export/servers/hbase-1.1.1/bin
啓動
start-hbase.sh
進入 Hbase shell 窗口
[root@node001 conf]# hbase shell
然後 list 查看 是否 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
7、啓動kylin
./kylin.sh start
6、再執行SQL查詢,獲取結果