数据仓库十多年前开始出现在企业中,其承诺相当诱人:将关键数据集中在容易发现的统一站点,这样所有的商业人士就可根据具体的事实分析作出决策,而不是在信息不充分的条件下凭直觉作出决策。现在,数据仓库仍是实力雄厚的公司的奢侈品,这些公司具有足够的资金、员工以及耐心来购买、安装和维护数据仓库。
  而开源,这种破坏性的力量完全颠覆了数据仓库和其它许多市场。开源交付的特许软件成本很低或者根本无需成本,即使对再小的公司也开放性能;而且对网络社区开放代码和功能,只要社区能保证解决方案切实满足主要标准,解决方案在部署时变得更加直接、灵活,不再花里胡哨。

数据仓库的开源方案
  现在,开源的革命已经渗入数据仓库领域。不仅有工具和技术可在实施数据仓库时构建模块,同时数据仓库本身也已成为开源。下面是支持数据仓库的开源方案。
  第一,数据库系统。成功部署数据仓库时,开源构建模块(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级的数据。否则,维护费用可能上升到专有数据仓库的水平。
  第六,权衡过渡成本。如果逐项比较,开源数据仓库可能比专有数据仓库便宜许多,不过仍然需要衡量过渡成本和培训成本,因为开源数据库尚属首次供应。
  随着开源的兴起,数据仓库解决方案可以应用到从未享受其便捷之处的绿色环境中。