初識mondrian
本來想用mysql作為數(shù)據(jù)源,可FoodMartCreateData.sql導(dǎo)入mysql會出錯,不知這個
SQL適合哪種數(shù)據(jù)庫。只好用odbc連接那個access文件,總算安裝成功了,呵呵。
不知為何用mondrian這個名字,也許跟tomcat和catalina一樣吧。
Mondrian, 蒙得里安·皮特1872-1944荷蘭畫家,作品以交錯的三原色為基色的垂直
線條和平面為特點,他的著作包括 新造型主義(1920年),對抽象藝術(shù)的發(fā)展曾經(jīng)產(chǎn)
生很深影響。(金山詞霸)
Mondrian是一個用Java寫成的OLAP(在線分析性處理)引擎。它用MDX語言實現(xiàn)查詢
,從關(guān)系數(shù)據(jù)庫(RDBMS)中讀取數(shù)據(jù)。然后經(jīng)過Java API用多維的方式對結(jié)果進行展示。
Mondrian面向ROLAP包含4層:表示層、計算層、聚集層、存儲層。
● 表示層:指最終呈現(xiàn)在用戶顯示器上的以及與用戶之間的交互,有許多方法來展現(xiàn)多維數(shù)據(jù),
包括數(shù)據(jù)透視表、餅、柱、線狀圖。
● 計算層:分析、驗證、執(zhí)行MDX查詢。
● 聚集層:一個聚集指內(nèi)存中一組計算值(cell),這些值通過維列來限制。計算層發(fā)送單元請求,
如果請求不在緩存中,或者不能通過旋轉(zhuǎn)聚集導(dǎo)出的話,那么聚集層向存儲層發(fā)送請求。聚合層
是一個數(shù)據(jù)緩沖層,從數(shù)據(jù)庫來的單元數(shù)據(jù),聚合后提供給計算層。聚合層的主要作用是提高系
統(tǒng)的性能。
● 存儲層:提供聚集單元數(shù)據(jù)和維表的成員。包括三種需要存儲的數(shù)據(jù),分別是事實數(shù)據(jù)、聚集和維。
OLAP客戶端
JPivot是JSP風(fēng)格的標(biāo)簽庫,用來支持OLAP表,使用戶可以執(zhí)行典型的OLAP操作,如切片、切塊、
上鉆、下鉆等。JPivot使用Mondrian服務(wù)器,分析結(jié)果可以導(dǎo)出為Excel或PDF文件格式。