?

基于Cube的數據展現結構的研究

2011-07-25 06:49孫四明董碧丹
計算機工程與設計 2011年9期
關鍵詞:多角度數據源可視化

陳 磊, 孫四明, 董碧丹

(中國航天工程咨詢中心,北京100048)

0 引 言

很多較早進行信息化的大型國企在十余年的信息化過程中,積累了大量的數據,這些數據對指導企業發展有著巨大的價值。只有更深層次地分析這些數據,才能更好地發掘其中的價值。目前的數據庫系統可以高效地實現數據的錄入、查詢、統計等功能,但還缺乏發現數據中存在的關系和規則,及挖掘數據背后隱藏的知識的手段,還不能根據現有的數據預測未來的發展趨勢。隨著數據規模的不斷增加,傳統的簡單統計和人工分析方法已經不能滿足現在業務的需求[1]。因此,管理應用領域迫切要求發展一種新的技術,從而能夠從海量數據中抽取出模式,找出數據變化的規律和數據之間的相互依存關系,使人們能夠從宏觀的角度來審視數據,充分發掘數據的潛力,為管理層決策提供有力的支持[2]。

在這種情況下,如果需要將數據轉換為知識,主要需要聯機分析處理(OLAP)和前端展現兩項功能。其中OLAP是基于數據庫最重要的多維分析工具,可以使用戶輕松而高效的分析大量復雜數據,迅速做出正確的判斷[2]。用于OLAP前端展現的數據可視化技術也被稱為OLAP可視化技術,致力于將盡可能多的信息貼切展現出來,便于管理者和決策者迅速獲得信息中蘊藏的知識,如趨勢、分布、密度等要素[3]。它主要研究內容包括以下3個方面:OLAP數據展現模式的用戶親和性和交互性研究,通過OLAP數據展現進行數據模式發現的研究和OLAP可視化布局編程語言的研究[4]。

國內現有的OLAP可視化工具存在不完善的地方:首先是指標選取有冗余。展示界面上內容過多,增加了用戶及時準確獲取所關心內容的難度。其次,圖形的交互性不夠強。用戶大多被局限在眼前所看到的內容之上,難以深入了解數據所隱含的信息。最后,圖形展現體系設計不夠合理。用戶在使用數據展現工具的時候很難發現數據所包含的趨勢。本文對OLAP可視化進行了總結,基于分解樹提出一套新的OLAP可視化架構,完成基于上述架構的工具開發。

1 OLAP可視化概述

OLAP可視化是將商業智能(BI)技術與信息可視化及可視化分析領域的成果進行綜合的產物[5]。傳統的 OLAP前端工具,以支持報告和分析為目的,只用到對數據表達展現的數據可視化方案。但在OLAP可視化中,可視化與交互式查詢的互動是關鍵。進一步分析可以發現,OLAP可視化包括以下應用范圍:從各個角度處理大量數據或者多維數據集中的數據,抽取信息,修正假設,尋找趨勢,揭示存在的模式,獲得更深入的理解和發現新的知識。相比一些傳統上的分析過程的操作,例如鉆取、上卷、切片、透視和排序,OLAP可視化支持更多的交互式數據操作技術,例如縮放和展開,過濾,擦洗和折疊等等[6]。

根據 OLAP可視化所用到的技術和應用領域,可以將OLAP可視化定義如下:運用一系列新技術,通過與含有大量數據的多維數據集之間的交互,將多維數據集形象化的展現在用戶面前的新一代終端用戶工具。該工具為用戶指定、重定義和操作所關注的數據子集提供了必要的交互設計[7]。

2 基于分解樹的新OLAP可視化結構的實現

2.1 系統模型概述

ProClarity[8]首先提出并實現了層次鉆取可視化方法分解樹。在實際應用中,分解樹將內容聚合到點以及它的子點上,這樣就可以順著維度通過點來進行鉆取[9]。隨后,ReportPortal報表(2009年)[10]中提出了圖形分解樹,包括條形圖樹和餅圖樹。MansmannandScholl(2007年)[11]提出了被稱為增強分解樹一系列的多層級可視化方法。在這種方法中,可視化層次通過對一個具體維度聚合的分解來完成。ProClarity中的分解樹在數據展現和模式發現中效率較低[12]。而ReportPortal報表(2009年)中實現的圖形分解樹則將圖形限制在深度鉆取過程中,具有很強的局限性。Mansmann and Scholl(2007年)所提出的增強分解樹雖然解決了不同多維立方體之間的交互問題,但是在度量的分解觀察中并沒有很大的突破[13]。

為了解決集團型企業積累數據的維度和層次過多,數據結構復雜的問題。本文提出一種從兩個角度進行層次鉆取的技術:多角度增強分解樹。多角度增強分解樹從兩個方面對數據進行鉆取,一個是傳統的鉆取方式,可以通過對關注的內容進行鉆取分解,獲得更詳細的內容,這是對某一度量的維度聚合進行分解查看的過程;另外一個是多角度鉆取,這種方式的出發點是通過不同的角度來對比觀察數據,以便于模式的發現,這是一個針對某一度量的維度聚集過程。通過維度聚集,用戶可以從不同的角度觀察度量,在對比中更容易發現隱藏在其中的數據模型。

多角度增強分解樹技術,通過將鉆取和同層次維度聚集兩種技術進行融合,讓用戶在觀察數據的過程中做到線面結合,形成數據的網狀觀察能力,擴大了用戶的數據接觸面,提高了數據的利用效率。

2.2 系統的多角度增強分解樹應用模型

集團型企業數據庫存儲的海量數據有繁多的維度和較深的數據結構層次。為了使管理層能夠關注到更多的數據,讓數據發揮更大的作用,本文根據多角度增強分解樹設計出以下模型設計體系,如圖1所示。

圖1 原型系統在多角度增強分解樹模式下的應用

主設計模版用于設計展現管理層最關心的內容,使管理層可以從整體對企業現狀進行把握。模型為主設計模版的板塊設計了兩種不同的分解展現設計方式:如果希望展現某一板塊包含的細節數據,可以選擇鉆取展現設計模板來進行設計。如果希望得到某一板塊數據內容在不同維度組合中的對比,可以選擇多角度觀察設計模板進行設計。在展示方式上,系統采用透視圖、維度地圖、統計圖和儀表盤4種展示方式對數據進行展現。

2.3 系統結構設計

系統結構設計圖如圖2所示。

圖2 系統結構設計

為了實現上面提到的技術,本文建立了一個以 SSAS(Microsoft SQL server analysis services)為數據源的系統。原型系統共包含3層,第一層是界面層,面向用戶,為用戶提供模型設計和數據展現兩個功能;第二層為應用服務層,為第一層提供后臺功能支持,這一層按照需求劃分為多維結構獲取、模型訪問和多維數據獲取3個部分,保證界面層功能的實現;第三層為數據層,數據層包含兩個數據源,一個為多維數據集,用SSAS實現,是分析展現的基礎,另外一個是關系數據庫,用于存儲完成設計的模型。

2.3.1 數據層

如圖2所示,系統需要建立兩個不同的信息存儲結構:多維數據集和模型數據。多維數據集包括維度、事實表以及KPI等,這套數據用于為數據展現提供與數據源服務器的連接字符串。模型數據包括展現模型和各個分區圖表定義,這里各個分區的圖表定義包括圖表類型選擇、行、列和數據內容等。其中模型數據還應該分為3類,一類是KPI的數據和布局設置;還有一類是多角度查看時需要用到的模型設計;最后一類是鉆取時會用到的模型設計。

2.3.2 應用服務層

本層主要是為界面層提供后臺服務。

多維結構獲取,在程序初始化運行的時候,首先與選定的SSAS服務器進行連接,連接完成后提供SSAS服務器當前狀態下所有Cube名稱及詳細信息。

模型訪問,在展現層展現模型設計完成模型設計之后,負責將已完成的模型設計存儲到模型數據庫中。如果用戶需要修改模型或發出數據展現請求的時候,從數據庫中讀取已存儲的相應模型。

多維數據獲取,在用戶發出數據展現請求,模型已經完成讀取的時候,這部分服務負責將模型展現所需要的數據從SSAS中讀取出來,返回給數據展現模塊。

2.3.3 界面層

本層包含展現模型設計和數據展現兩部分內容。

展現模型設計部分,這部分用Cube結構信息完成展現模型的設計,并將設計結果存入模型數據庫。模型設計包括:KPI展現設計、鉆取展現設計和多角度觀察設計3個界面。每個界面中包含展現模型確定和各個分區圖表定義。各個分區圖表定義包括圖表類型的選擇、行、列和數據內容的確定,模型設計流程見圖3。

圖3 模型設計流程

針對本文所提出的模型,在系統設計的時候,將模型設計界面分為兩層三項。第一層是模型設計的KPI設計界面,用戶可以在這一層選定KPI以及展現的版式。這里的版式包含三分、四分或者自由組合等設計方法,這樣可以讓用戶按照自己的要求完成布局設計。針對每一個具體的KPI,用戶可以選擇鉆取設置或者多角度分解設置兩種鉆取展現方式分別進行設計,這兩種展現方式組成了模型設計的第二層。模型設計第一層和第二層的組合,在實際應用中進行擴展,就形成了一個完整的樹形結構。這種結構在維度的每一個顆粒度保證了用戶可以沿著單一維度通過鉆取獲取更多細節信息,或用多角度對比觀察這種維度聚集的觀察方式發現模式。

數據展現部分,該部分用于對設計好的模型進行展現。這部分展現需要用到從數據庫中讀取的,已完成設計存儲的模型。當模型被讀取之后,程序會根據模型信息從Cube中讀取相應的數據,并按照模型中確定好的展現設計進行圖形或圖表展現。

2.4 系統驗證

為了驗證系統所設計結構對多維數據展示的特性,本文以AdventureWorksDW為原始數據,組織了多維數據集AdventureWorksInternetSales作為本系統的數據源。AdventureWorks-DW 是一個自行車銷售商所積累的數據[14]。運用 Adventure-WorksDW制作的多維數據源數據結構圖如圖4所示。

圖4 Adventure Works Internet Sales數據結構

實驗完成模型設計及存儲后,可以通過模型展現看到如圖5、圖6的展示結果。

圖5展示了系統的第一層KPI,這一層主要給用戶一個總括性概念,讓用戶了解到目前企業的大概狀況。如果用戶對一個單獨的KPI感興趣,就可以選擇鉆取或者多角度觀察來了解具體內容。圖6上圖是對訂單量的鉆取展示,它按照模型設定的鉆取順序,按照國家、省和城市的鉆取層次進行鉆取。通過鉆取展現可以輕易的找出銷量好的省份和銷量不好的省份,便于輔助用戶的信息獲取過程。

圖5 KPI展示

當從各個方面對訂單量進行對比觀察時,進入多角度觀察展示界面。如圖6所示多角度展現對比觀察展現所示,可以明確的看出,擁有學士學位的人購買自行車明顯多于其它受教育程度的人。也可以看出,不同國家的男性和女性購買該經銷商自行車的訂單量幾乎一致等。分析師可以通過以上這兩個類似的展現得出的結論進行聯合分析,更準確把握目前市場的狀況。通過這些發現,Adventure Works可以及時的調整促銷策略。

圖6 鉆取展示的層次遞進和多角度對比觀察

3 結束語

本文主要完成了以下工作:根據對OLAP可視化技術的研究,找出了當前技術及現有工具所存在的問題,根據問題提出多角度增強分解樹的數據展現技術;實現了以上述OLAP可視化架構為基礎的商業智能數據展現工具;對所實現的系統進行驗證實驗,檢測系統性能,驗證了系統在模式發現中的作用。

本文的研究過程中,應用創新點主要表現在:針對集團型數據維度和層次復雜的問題,提出并實現了多角度增強分解樹技術。這是一種將度量鉆取與度量在不同維度上的展現對比相融合的技術。這種技術突破了傳統分解樹在數據展現和模式發現中的低效率,也突破了之后實現的圖形分解樹中無法對不同維度進行縱向比對的問題。為用戶觀察數據提供了更加便捷的途徑。本文研究過程中也發現,OLAP可視化研究現在依然是以各自理論為中心,并沒有形成真正的體系,仍處于理論建設的初級階段。OLAP可視化作為OLAP的一個研究分支,以合理展現OLAP數據集為成功標志[15]。

OLAP可視化未來的研究方向可以被區分為以下3個主要的主題:與數據倉庫管理系統的整合,形成從數據整理到數據展現全過程的監控。目前系統應用背景之下,前后端系統的整合一直是技術發展的趨勢之一??梢暬w數據立方體/數據倉庫主題的技術。目標是如何展現從整個和不同的數據源的展現。這個研究方向需要直接面對復雜的數據結構和巨量的數據,很難取得大的突破。而如果出現穩定的算法,將會帶動OLAP可視化領域的一次革命。多維數據庫的可視化查詢語言。作為增強用戶交互性的重要手段,可視化查詢語言一直是OLAP可視化領域一個研究重點。除去在抽象過程中所面臨的巨大挑戰,在技術性與實用性之間的均衡是在開發過程中必須考慮的問題。

[1]Shi Xiaoming.Research and implementation of visual analysis tool of OLAP based on web[D].Kunming University,2007:2-3.

[2]Cuzzocrea A,Sacc D,Serafino P.Semantics-aware advanced OLAP visualization of multidimensional data cubes[J].International Journal of Data Warehousing and Mining,2007,3(4):1-30.

[3]FEW S.Information dashboard design[M].Sebastopol,CA:O'Reilly,2006:120-121.

[4]Bernd Neumayr,Michael Schrefl.Hetero-homogeneous hierarchies in data warehouses[C].Proceedings of the Seventh Asia-Pacific Conference on Conceptual Modelling,2010:61-70.

[5]Collier A,Marini L,Minsker B.Dashboard visualization for diverse user communities[C].American Geophysical Union,Fall Meeting,2008:231-232.

[6]Hanrahan P,Stolte C,Mackinlay J.Visual analysis for everyone:understanding data exploration and visualization[Z].Tableau Software Inc,2007.

[7]Alfredo Cuzzocrea,Svetlana Mansmann.OLAP visualization:models,issues and techniques[M].2nd ed.Hershey,PA,USA:Encyclopedia of Data Warehousing and Mining,IGI Global,2009:1439-1446.

[8]Lucio Ieronutti,Maurizio Pighin.A novel visualisation and interaction technique for exploring multidimensional data[J].International Journal of Business Intelligence and Data Mining,2009,4(3-4):350-374.

[9]Ren Lei,Wang Weixin,Zhou Mingjun,et al.A model driven development method for interactive information visualization[J].Journal of Software,2008,19(8):1947?1964.

[10]ReportPortal 3.0,from XMLA consulting[EB/OL].http://www.reportportal.com,2010.

[11]Mansmann S,Scholl M H.Exploring OLAP aggregates with hierarchical visualization techniques[C].Proceedings of the 22nd AnnualACMSymposiumon Applied Computing,Multimedia&Visualization Track,2007:1067-1073.

[12]Techapichetvanich K,Datta A.Interactive visualization for OLAP[C].Proceedings of the International Conference on Computational Science and its Applications(Part III),2005:206-214.

[13]Cuzzocrea A,Saccà D,Serafino P.Semantics-aware advanced OLAP visualization of multidimensional data cubes[J].International Journal of Data Warehousing and Mining,2007,3(4):1-30.

[14]George Sporfford,Sivakumar Harinath.MDX solutions[M].Beijing:Tsinghua University Press,2008:325-326.

[15]Lucio Ieronutti,Maurizio Pighin.A novel visualisation and interaction technique for exploring multidimensional data[J].International Journal of Business Intelligence and Data Mining,2009,4(3-4):350-374.

猜你喜歡
多角度數據源可視化
基于CiteSpace的足三里穴研究可視化分析
思維可視化
一道三角函數問題的多角度思考
對一道三角函數題的多角度思考
一道數列題的多角度思考
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創新
多角度寫好讀后感
Web 大數據系統數據源選擇*
基于不同網絡數據源的期刊評價研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合