而開源,這種破壞性的力量完全顛覆了數據倉庫和其它許多市場。開源交付的特許軟件成本很低或者根本無需成本,即使對再小的公司也開放性能;而且對網絡社區開放代碼和功能,只要社區能保證解決方案切實滿足主要標準,解決方案在部署時變得更加直接、靈活,不再花裏胡哨。
數據倉庫的開源方案
現在,開源的革命已經滲入數據倉庫領域。不僅有工具和技術可在實施數據倉庫時構建模塊,同時數據倉庫本身也已成爲開源。下面是支持數據倉庫的開源方案。
第一,數據庫系統。成功部署數據倉庫時,開源構建模塊(building blocks)的數量取得了巨大增長,這表明採用開源數據倉庫的時機已經成熟。例如,Gartner公司的報告指出:近幾年,開源DBMS引擎已顯著增長。Gartner還發現,47%的受調查公司已經採用開源數據倉庫,19%的公司正考慮在12個月內採用開源數據倉庫。
在許多情況下,開源數據倉庫正得到廣泛採用的市場正是大型數據庫供應商長期忽略的市場。但是,如果公司以活躍的商業數據庫實施項目爲主導,那麼公司內部也會存在開源數據倉庫。一項針對獨立Oracle用戶組(IOUG)226個成員的研究表明,超過三分之一(35%)的站點也擁有開源數據庫,如運行MySQL。
第二,ETL工具。與開源數據庫同時出現的還有ETL、開源分析/商業智能工具,這些工具在企業中逐步得到應用。Gartner估計,大約11%的受調查公司正在使用開源ETL工具,16%的公司正考慮在未來幾個月內採用這類工具。開源ETL工具包括Pentaho公司的KETL、Talend、Clover.ETL以及Octopus等。
第三,商業智能。在商業智能和分析工具領域,Gartner指出,9%的受調查公司已經採用開源BI解決方案,18%的公司正考慮在未來12個月內採用開源方案。目前,市場中存在許多開源BI或分析程序,以Pentaho和JasperSoft等供應商爲主導。同時,Ventana Research對500家公司的調查結果證實:BI受到廣泛關注,並且這種趨勢在繼續增長;對開源商業智能感興趣的公司中有21%已部署開源程序。顯然,仍有許多公司聲稱他們未來沒有此類項目,因爲他們不會考慮開源商業智能。
使用如此廣泛、客戶如此滿意,並且擁有開源數據庫和開源分析工具,開源數據倉庫在此時興起也就不足爲奇了。之前,供應商根據開源數據庫(如MySQL、 PostgreSQL和Ingres)生產數據倉庫專有產品;現在,供應商開始引入全面的開源數據倉庫解決方案及其伴隨社區。
最近發佈的產品ICE (Infobright Community Edition)及其在www.infobright.org的伴隨社區就是一個很好的例子。論壇帖子表明社區用戶在不斷增加,其中一些用戶對數據庫非常瞭解,但是對數據倉庫相對陌生。MySQL擴展了數據庫市場,ICE等開源產品亦如此,因爲數據卷快速增長,分析需求也不斷增加。
開源數據倉庫的優勢
開源數據倉庫可以解決當前諸多問題,而且足跡較少、運作的管理資源較少。開源模型運用到數據倉庫的優勢爲:
第一,開源數據倉庫在前期耗費較少,維護和支持費也較少。目前,市場中的開源軟件產品通常比相應的特許產品更加便宜。另外,開發人員和IT管理人員可以下載開源產品的源代碼,也可以定製產品或修改產品,從而進一步簡化操作。
第二,開源數據倉庫採用的技術很容易在市場中獲得。因此,公司如果具備現有數據庫或數據倉庫的專業知識,在實施新的開源數據庫工程時,就不必進一步研究。
第三,開源數據倉庫大大促進了標準化。開源代碼透明、支持社區,因此,一些重要的標準就可獲得各種版本和實施方式的一致性支持。專有形式不能也不會在這些設置中獲得支持。
第四,開源數據倉庫相當靈活。開源許可方式使得企業能夠將解決方案擴展給無數用戶,而不像專有軟件包那樣:按用戶或處理器收取費用。公司只需花費很少甚至無需花費就可添加用戶或者擴展工程。另外,終端用戶公司不必擔心被某個供應商的強制升級路徑鎖定,相反可以選擇系統的新版本。
第五,開源數據倉庫能從網絡社區效應中獲利。開源解決方案利用開發人員和創新人員的社區促進發展。將新代碼和新特性貢獻給社區,不斷爲終端用戶提供各種可用的新方案。網絡社區的方法也可應用到數據倉庫——開創新領域,將能很好地適應環境,因爲有許多系統和數據種類需要集成到數據倉庫中。單個供應商提供的解決方案很難解決所有的集成問題。另外,公司可以依靠社區快速修復bug或安全缺陷,通常只需花費幾天時間,而不必等待幾個星期甚至幾個月,直到供應商再次提供安全補丁或服務補丁。
第六,開源數據倉庫可以逐步實施。對於一項大型工程,切忌好大喜功。數據管理人員即使需要實施全新功能,也不必向預算委員會尋求資金支付公司昨天所需的性能。工程可以從小做起,在成功實施的基礎上逐步完成。這也可以緩解“承諾過多”的問題——在確定數據倉庫項目的最佳資金時,“承諾過多”是不得已而爲之。開源數據倉庫無需大量啓動資金,而是首先瞄準最迫切的商業問題,隨着收效增長而增加資金人投入。
實施開源數據倉庫的建議
如果中小企業需要管理和觀察大型數據卷,但是缺乏實施和支持大型專有數據庫所需的資金或資源,那麼開源數據倉庫就非常合適。另外,開源數據倉庫提供專門針對大型企業的某些部門或業務單元的解決方案,一旦產生商業問題,就可快速解決可以部署的解決方案。以下建議可以幫你最大程度地實施開源數據倉庫。
第一,開源和專有數據倉庫需要共存。開源數據倉庫將會增加,但是不會取代專有數據倉庫。如前所述,調查中有超過三分之一的Oracle的公司採用MySQL等開源數據庫。通常,這些數據倉庫能夠很好地滿足策略需求,補充許多專有數據庫無法快速或有效滿足的新需求。
第二,尋找產品背後大型的活躍社區。不管是開源數據倉庫還是專有數據倉庫,都是非常複雜的工程,因爲需要涉及企業中所有的數據。充分互動的社區是必不可少的資料來源。
第三,終端用戶應該無法見到開源數據倉庫。操作型數據倉庫的數據與生產數據密切相關,是市場中增長最快的數據倉庫。數據倉庫的數據需要與前端用戶實時合作,但是幾乎無需終端用戶的輸入。在許多情況下,這些“普遍的BI”用戶沒有技術背景,操作應該儘可能簡單。相比之下,數據倉庫的主要使用人員——分析人員或“超級用戶”——在過去擅長構建大量的查詢方式。開源數據倉庫應該只需少量調整,就能支持普遍的BI用戶。
第四,開源數據倉庫應該一如既往地支持開源標準。之前市場中的“開源”數據倉庫都是根據開源數據庫,開發專有接口,與開源的本意背道而馳。開源數據倉庫應該與相關的開源環境兼容。
第五,尋找快速的部署方式和簡便的使用方法。尋找這樣的開源數據倉庫工具和平臺:具有數據壓縮功能,擁有較少的硬件和軟件足跡,只需較少的服務器和存儲空間就可支持TB級的數據。否則,維護費用可能上升到專有數據倉庫的水平。
第六,權衡過渡成本。如果逐項比較,開源數據倉庫可能比專有數據倉庫便宜許多,不過仍然需要衡量過渡成本和培訓成本,因爲開源數據庫尚屬首次供應。
隨着開源的興起,數據倉庫解決方案可以應用到從未享受其便捷之處的綠色環境中。