幾款BI相關的開源工具-ETL-OLAP相關
我們都知道“瞎子摸象”的故事。不同的瞎子對大象的認識不同,因為他們只認識了自己摸到的地方。而企業如果要避免重犯這樣的錯誤,那就離不開商務智能(BI)。專家認為,BI對于企業的重要性就像聰明才智對于個人的重要性。歐美企業的經驗也證明,企業避免無知和一知半解危險的有效手段就是商務智能。商務智能旨在充分利用企業在日常經營過程中收集的大量數據和資料,并將它們轉化為信息和知識來免除各種無知狀態和瞎猜行為。
支持BI的開源工具數量眾多,但是大多數的工具都是偏重某方面的。例如,CloverETL偏重ETL,JPivot偏重多維分析展現,Mondrian是OLAP服務器。而Bee、Pentaho和SpagoBI等項目則針對商務智能問題提供了完整的解決方案。
ETL 工具
ETL開源工具主要包括CloverETL和Octupus等。
(1)CloverETL是一個Java的ETL框架,用來轉換結構化的數據,支持多種字符集之間的轉換(如ASCII、UTF-8和ISO-8859-1等);支持JDBC,同時支持dBase和FoxPro數據文件;支持基于XML的轉換描述。
(2)Octupus是一個基于Java的ETL工具,它也支持JDBC數據源和基于XML的轉換定義。Octupus提供通用的方法進行數據轉換,用戶可以通過實現轉換接口或者使用Jscript代碼來定義轉換流程。
OLAP服務器
(1)Lemur主要面向HOLAP,雖然采用C++編寫,但是可以被其他語言的程序所調用。Lemur支持基本的操作,如切片、切塊和旋轉等基本操作。
(2)Mondrian面向ROLAP包含4層:表示層、計算層、聚集層、存儲層。
● 表示層:指最終呈現在用戶顯示器上的以及與用戶之間的交互,有許多方法來展現多維數據,包括數據透視表、餅、柱、線狀圖。
● 計算層:分析、驗證、執行MDX查詢。
● 聚集層:一個聚集指內存中一組計算值(cell),這些值通過維列來限制。計算層發送單元請求,如果請求不在緩存中,或者不能通過旋轉聚集導出的話,那么聚集層向存儲層發送請求。聚合層是一個數據緩沖層,從數據庫來的單元數據,聚合后提供給計算層。聚合層的主要作用是提高系統的性能。
● 存儲層:提供聚集單元數據和維表的成員。包括三種需要存儲的數據,分別是事實數據、聚集和維。
OLAP客戶端
JPivot是JSP風格的標簽庫,用來支持OLAP表,使用戶可以執行典型的OLAP操作,如切片、切塊、上鉆、下鉆等。JPivot使用Mondrian服務器,分析結果可以導出為Excel或PDF文件格式。
數據庫管理系統
主要的開源工具包括MonetDB、MySQL、MaxDB和PostgreSQL等。這些數據庫都被設計用來支持BI環境。MySQL、MaxDB和PostgreSQL均支持單向的數據復制。BizGres項目的目的在于使PostgreSQL成為數據倉庫和 BI的開源標準。BizGres為BI環境構建專用的完整數據庫平臺。
完整的BI開源解決方案
1.Pentaho 公司的Pentaho BI 平臺
它是一個以流程為中心的、面向解決方案的框架,具有商務智能組件。BI 平臺是以流程為中心的,其中樞控制器是一個工作流引擎。工作流引擎使用流程定義來定義在 BI 平臺上執行的商務智能流程。流程可以很容易被定制,也可以添加新的流程。BI 平臺包含組件和報表,用以分析這些流程的性能。BI 平臺是面向解決方案的,平臺的操作是定義在流程定義和指定每個活動的 action 文檔里。這些流程和操作共同定義了一個商務智能問題的解決方案。這個 BI 解決方案可以很容易地集成到平臺外部的商業流程。一個解決方案的定義可以包含任意數量的流程和操作。
BI平臺包括一個 BI 框架、BI 組件、一個 BI 工作臺和桌面收件箱。BI 工作臺是一套設計和管理工具,集成到Eclipse環境。這些工具允許商業分析人員或開發人員創建報表、儀表盤、分析模型、商業規則和 BI 流程。Pentaho BI 平臺構建于服務器、引擎和組件的基礎之上,包括J2EE 服務器、安全與權限控制、portal、工作流、規則引擎、圖表、協作、內容管理、數據集成、多維分析和系統建模等功能。這些組件的大部分是基于標準的,可使用其他產品替換之。
2.ObjectWeb
該項目近日發布了SpagoBi 1.8版本。SpagoBi 是一款基于Mondrain+JProvit的BI方案,能夠通過OpenLaszlo產生實時報表,為商務智能項目提供了一個完整開源的解決方案,它涵蓋了一個BI系統所有方面的功能,包括:數據挖掘、查詢、分析、報告、Dashboard儀表板等等。SpagoBI使用核心系統與功能模塊集成的架構,這樣在確保平臺穩定性與協調性的基礎上又保證了系統具有很強的擴展能力。用戶無需使用SpagoBI的所有模塊,而是可以只利用其中的一些模塊。
SpagoBI使用了許多已有的開源軟件,如Spago和Spagosi等。因此,SpagoBI集成了 Spago的特征和技術特點,使用它們管理商務智能對象,如報表、OLAP分析、儀表盤、記分卡以及數據挖掘模型等。SpagoBI支持BI系統的監控管理,包括商務智能對象的控制、校驗、認證和分配流程。SpagoBI采用Portalet技術將所有的BI對象發布到終端用戶,因此BI對象就可以集成到為特定的企業需求而已經選擇好的Portal系統中去。
3.Bee項目
該項目是一套支持商務智能項目實施的工具套件,包括ETL工具和OLAP 服務器。Bee的ETL工具使用基于Perl的BEI,通過界面描述流程,以XML形式進行存儲。用戶必須對轉換過程進行編碼。Bee的ROLAP 服務器保證多通SQL 生成和強有力的高速緩存管理(使用MySQL數據庫管理系統)。ROLAP服務器通過SOAP應用接口提供豐富的客戶應用。Web Portal作為主要的用戶接口,通過Web瀏覽器進行報表設計、展示和管理控制,分析結果可以以Excel、PDF、PNG、PowerPoint、 text和XML等多種形式導出。
Bee項目的特點在于:
● 簡單快捷的數據訪問;
● 支持預先定義報表和實時查詢;
● 通過拖拽方式輕松實現報表定制;
● 完整報表的輕松控制;
● 以表和圖進行高質量的數據展示。