如前所說,mondrian是olap的核心引擎,負責從關聯式資料庫中計算、快取資料,響應來自表現層的使用ms家 mdx語法的查詢。具體表現形式呢,就是乙個jar,隨tomcat啟動。
看完那個foodmart的sample之後, 該自己動手了。
首先第一步是設計olap的資料庫結構。
因為和業務資料庫相比,olap需要冗餘一些資料達到更快的查詢。
設計前可以先參拜一下那本經典的《完全維度設計指南》,中文版的幾下就能翻個大概。
其實說白了就是去除與報表無關的列,把訂單、訂單明細兩個表合併成乙個銷售事實表,把產品,產品分類兩個表合併成乙個產品維表這幾個動作。
設計完之後,應該會有幾個裝有統計資料和維表外來鍵的事實表,和幾個用於分類,排序,過濾的維表。
第二步是把業務資料庫裡的資料導過來。
有不少etl的工具,弄出一大堆對映檔案,轉換類來。不過我還是喜歡直接寫sql快捷,可能我面對的不是一天乙個g的資料庫吧。
第三步是把剛才設計的資料庫結構定義成schema
schema元模型包括 維度(dimensions)、層次(hierarchies)、級別(levels)、和成員(members)等。mondrian要根據它來從關聯式資料庫中聚合資料響應mdx語法的查詢。
在這一步之前記得先裝乙個中文版的sql server2000,裡面的help檔案有詳細的解釋。
另外jprovit有乙個子專案,是這個schema的eclipse plug-in。即使不用這個plug-in,有了它的dtd,在其他xml編輯器裡也能避免拼寫錯誤引起的冤枉時間。
用sample中的foodmart.xml做藍本,兩下就能copy paste出自己的schema來。
最後,注意oracle的列名必須全大寫。
設計和實現OLAP解決方案
第一講簡介 首先,啥叫資料倉儲?資料倉儲就是資料的倉庫!用外文說叫data warehouse,簡稱dw。是不是哐當倒下一片啊,要不咱換個專業點的說法?資料倉儲是乙個面向主題的 整合的 相對穩定的 反映歷史變化的 包含商業資訊的資料集合,用於支援管理決策。看得懂不?諒你也不懂。算了,別叫這真了。等你...
OLAP了解與OLAP引擎
一 olap的基本概念 二 olap的基本內容 1 變數 度量 變數是資料度量的指標,是資料的實際意義,即描述資料 是什麼 像示例中的人數。2 維度 維度是描述與業務主題相關的一組屬性,單個屬性或屬性集合可以構成乙個維。如示例中的學歷 民族 性別等都是維度。3 維的層次 乙個維往往可以具有多個層次,...
OLAP技術介紹
olap on line analytical processing 聯機分析處理,這一概念是由關係型資料庫之父e.f.codd於1993年提出的。20世紀60年代末codd提出關係型資料模型以後,關係型資料庫與oltp on line transaction processing 得到了快速的發展...