《大數(shù)據(jù)環(huán)境下的多維分析技術(shù)--動(dòng)態(tài)立方體的性能調(diào)優(yōu)(四)》要點(diǎn):
本文介紹了大數(shù)據(jù)環(huán)境下的多維分析技術(shù)--動(dòng)態(tài)立方體的性能調(diào)優(yōu)(四),希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
通過前期的文章,我們知道,通過IBM Cognos的Dynamic Cubes(動(dòng)態(tài)立方體,下同)技術(shù)可以實(shí)現(xiàn)TB級(jí)的多維分析.為了提升查詢性能,動(dòng)態(tài)立方體可以利用聚合感知能力,實(shí)現(xiàn)對(duì)聚合數(shù)據(jù)集的自動(dòng)路由,從而實(shí)現(xiàn)對(duì)于復(fù)雜多維分析應(yīng)用的性能提升.在Dynamic Cubes里,聚合數(shù)據(jù)集包含內(nèi)存內(nèi)部聚合與數(shù)據(jù)庫內(nèi)部聚合兩種.本期文章我們來看看動(dòng)態(tài)立方體如何使用數(shù)據(jù)庫內(nèi)部聚合來進(jìn)行性能調(diào)優(yōu).
數(shù)據(jù)庫內(nèi)部聚合(Database aggregates)
對(duì)于關(guān)系數(shù)據(jù)庫里的那些超大規(guī)模的多維數(shù)據(jù)集(由事實(shí)表與維表構(gòu)成),為了提高特定的多維分析的查詢性能,可以創(chuàng)建一些聚合表來存儲(chǔ)高層匯總數(shù)據(jù).在設(shè)計(jì)Dynamic Cube模型時(shí),將數(shù)據(jù)庫內(nèi)部聚合指定到對(duì)應(yīng)的聚合表,即可保證在查詢這些維度和指標(biāo)時(shí),優(yōu)先使用聚合表的數(shù)據(jù),而不是直接到最細(xì)粒度的維表與事實(shí)內(nèi)外去查詢.這類聚合表,我們稱之為數(shù)據(jù)庫內(nèi)部聚合.
要想使用數(shù)據(jù)庫內(nèi)部聚合.首先,由DBA或者數(shù)據(jù)庫設(shè)計(jì)人員創(chuàng)建若干張聚合表.例如對(duì)于多維模型gosldw_sales(test),我們創(chuàng)建了一張聚合表AGGR_TIME_PROD_OM_FACT.如下圖所示.
這張表里面包括了多維模型使用時(shí)可能經(jīng)常用到的部分維度與度量,它并不是最細(xì)粒度的數(shù)據(jù)集.示例中,時(shí)間維度只到了季度層次,產(chǎn)品維度只到了產(chǎn)品類型層次.然后可以通過ETL辦法,定期將底層多維模型數(shù)據(jù)集的數(shù)據(jù)匯總后插入到該聚合表中.以下SQL語句示例供參考(只表現(xiàn)數(shù)據(jù)處理邏輯,物理性能參數(shù)應(yīng)由DBA負(fù)責(zé)確定):
然后,在Cube designer里將此聚合表放到動(dòng)態(tài)立方體的模型設(shè)計(jì)當(dāng)中,如下圖所示.
最后,在發(fā)布此Dynamic Cube后,就可以使用到該數(shù)據(jù)庫內(nèi)部聚合來加速多維分析性能了.
數(shù)據(jù)庫內(nèi)部聚合建議
也許您現(xiàn)在會(huì)提出一個(gè)問題,既然數(shù)據(jù)庫內(nèi)部聚合能夠提高多維分析查詢性能,那我如何確定聚合表應(yīng)該選擇哪些維度、哪些指標(biāo)來創(chuàng)建呢?這個(gè)問題Cognos已經(jīng)幫您考慮到了.在我們前期的文章《大數(shù)據(jù)環(huán)境下的多維分析技術(shù)-動(dòng)態(tài)立方體(Dynamic Cubes)的性能調(diào)優(yōu)(二)》中提到,通過Dynamic Query Analyzer(簡(jiǎn)稱DQA,下同)工具可以對(duì)動(dòng)態(tài)立方體的查詢性能進(jìn)行評(píng)估并得到優(yōu)化建議.這些優(yōu)化建議里就包含對(duì)數(shù)據(jù)庫內(nèi)部聚合的優(yōu)化建議.
在啟動(dòng)對(duì)應(yīng)的動(dòng)態(tài)立方體的工作負(fù)載記錄后,運(yùn)行DQA工具,可以分析出用戶對(duì)于該動(dòng)態(tài)立方體的查詢偏好,從而得到數(shù)據(jù)庫內(nèi)部聚合的設(shè)計(jì)思路.如下圖所示.DQA得出的建議有25條,每條建議都有說明從哪些維度查詢哪些指標(biāo),以及占用的數(shù)據(jù)空間大小.
通過下圖中的詳細(xì)查詢甚至可以得到對(duì)應(yīng)聚合表的數(shù)據(jù)來源和建表腳本.
數(shù)據(jù)庫內(nèi)部聚合的性能監(jiān)控
Cognos服務(wù)器還提供了對(duì)數(shù)據(jù)庫內(nèi)部聚合的監(jiān)控功能.它通過一些特定的分析指標(biāo)來持續(xù)分析動(dòng)態(tài)立方體里數(shù)據(jù)庫內(nèi)部聚合的性能情況,來提示系統(tǒng)管理員如何持續(xù)優(yōu)化數(shù)據(jù)庫內(nèi)部聚合的設(shè)計(jì).通過Cognos administration界面可以查看到數(shù)據(jù)庫內(nèi)部聚合的性能情況,如下圖所示.
由上圖可以看出,我們的數(shù)據(jù)庫內(nèi)部聚合命中率為0,說明設(shè)計(jì)不合理.對(duì)于數(shù)據(jù)庫內(nèi)部聚合的設(shè)計(jì),我們有以下最佳實(shí)踐建議:
詳情請(qǐng)咨詢?cè)诰€客服!
慧都控件|提供軟件技術(shù)整體辦理方案
云集全球三千余款優(yōu)秀控件、軟件產(chǎn)物,提供行業(yè)領(lǐng)先的咨詢、培訓(xùn)與開發(fā)服務(wù) 企業(yè)QQ:800018081|電話:023-66090381
維易PHP培訓(xùn)學(xué)院每天發(fā)布《大數(shù)據(jù)環(huán)境下的多維分析技術(shù)--動(dòng)態(tài)立方體的性能調(diào)優(yōu)(四)》等實(shí)戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/8687.html