本篇內容主要講解“如何在kylin平臺上創(chuàng)建一個多維分析項目”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何在kylin平臺上創(chuàng)建一個多維分析項目”吧!
創(chuàng)新互聯(lián)始終致力于在企業(yè)網站建設領域發(fā)展。秉承“創(chuàng)新、求實、誠信、拼搏”的企業(yè)精神,致力為企業(yè)提供全面的網絡宣傳與技術應用整體策劃方案,為企業(yè)提供包括“網站建設、響應式網站、手機網站建設、微信網站建設、成都小程序開發(fā)、商城網站建設、平臺網站建設秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
進入kylin操作界面,如果沒有project可以創(chuàng)建,kylin里面可以創(chuàng)建多個project,有效的把各種業(yè)務數(shù)據(jù)分析隔離開來。如圖:
如下,填寫project name,description可以不填
然后submit 提交,project創(chuàng)建成功。
點擊DataSource選項卡->Load Hive Table
填寫hive表名,前面加上庫名
然后點擊sync,導入數(shù)據(jù)源成功,可以看到如下信息:
3.創(chuàng)建model
添加model name然后 next
選擇剛才添加到數(shù)據(jù)源中的事實表,如果有Lookup Table也可添加,然后next
選擇需要的維度
選擇需要的指標
相關設置
partition date colume表示分區(qū)字段,選擇hive表中按時間分區(qū)的字段。然后從date format中選擇不同的時間格式。最下面的filter可以添加where條件對數(shù)據(jù)源中的數(shù)據(jù)做過濾。
至此,model創(chuàng)建完成。
下面進入關鍵環(huán)節(jié)創(chuàng)建cube。
類似于創(chuàng)建model,創(chuàng)建cube。選擇之前創(chuàng)建好的model,并填入cube name。notification email list是選填項,表示報警接收人郵件地址,多個郵件地址以逗號隔開。
然后next。選擇dimession,有兩種方式:一是手動添加dimession,二是使用自動生成,我們這里使用自動生成,然后勾選需要的字段。
然后next,選擇指標
count(1)是系統(tǒng)默認自帶的,不要刪除。
點擊+號添加需要的指標,需要填入名稱,選擇表達式。這里選擇的是sum。我們要針對disp加和求pv,在param value里面選擇disp列。
需要注意的是kylin中hive表中每一列字段的類型要求比較嚴格。dimession字段需要為String,用來加和的指標字段須為bigint或者decimal
添加了所有需要的指標后,點擊next
設置merge時間。Kylin每次build會生成一張hbase表,merge操作會把多天數(shù)據(jù)合并成一張新的hbase表。可加快查詢。
設置partition Start Date,即數(shù)據(jù)源開始時間,默認為1970-01-01.點擊Next.
Mandatory Dimensions:每次查詢均會使用的維度可添加在此。比如某些情況下的partition column.
Hierarchy Dimensions:維度列中彼此間存在層級關系的列,比如“國家-省份-市-縣”
Joint Dimensions:每次查詢會同時使用或不使用的維度組合。
Aggregation Group:在不同的查詢中,兩組維度組合之間不會產生交叉,可選擇此選項,比如所有的cube維度有 [ a,b,c,d,e,f ] 6個,每次查詢中只會同時查與 [ a,b,c ] 相關的信息(比如[a],[a,c]等)而不會查詢 [ d,e,f ],或者相反,則可選擇此選項。
以上選擇均可減少build過程中的數(shù)據(jù)量,是加快build與query速度的優(yōu)化點之一。
接下來基本上就是next,然后保存,如果沒有報錯,則證明cube創(chuàng)建成功,如下圖
最常用的就是build操作,它會根據(jù)我們創(chuàng)建的cube進行數(shù)據(jù)的預計算。
選擇構建的終止時間,然后提交,之后可以在monitor中看到cube構建的狀態(tài)。
其他操作說明:
Drop:丟棄現(xiàn)有cube,條件:無Pending, Running, Error 狀態(tài)的job.
Edit:編輯現(xiàn)有cube,條件:cube需處于disable狀態(tài)。
Refresh:重建某已有時間段數(shù)據(jù),針對于已build時間段的源數(shù)據(jù)發(fā)生了改變的情況。
Merge:手動觸發(fā)merge操作。
Enable:使擁有至少一個有效segment的cube從disable變?yōu)閑nable狀態(tài)。
Purge:清空所有該cube的數(shù)據(jù)。
Clone:克隆一個新的cube,可設置新的名字,其他相關配置與原cube相同。
Disable:使一個處于ready狀態(tài)的cube變?yōu)镈isable狀態(tài),查詢不會從disable的cube中獲取數(shù)據(jù)。
數(shù)據(jù)預計算完成后就可以進行查詢了,查詢過程中也可以驗證cube創(chuàng)建的是否有問題。有兩種查詢方式:一種是通過kylin的web界面,一種是使用kylin提供的rest api。下面分別介紹。
(1)web查詢。進入insight,輸入sql語句,等待查詢結果,和一般的數(shù)據(jù)庫客戶端類似。
(2)rest api。舉例如下:
假如需要查詢的sql語句為:“select sum(disp) as pv from t_table group by td,bd”
kylin賬戶的賬號密碼為:“kylinid:passwd”,對其進行base64加密。secret=echo -n “kylin_id:password” | base64
使用的project為:my_kylin_project
接口地址為:http://localhost:7070/kylin/api/query
則請求為:
curl -X POST -H "Authorization:Basic ${secret}" -H "Content-Type:application/json" -d '{ "sq
到此,相信大家對“如何在kylin平臺上創(chuàng)建一個多維分析項目”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!