数据仓库的特性决定了数据仓库的设计不同于传统的数据库设计方法。数据仓库系统的原始需求通常不是很明确,并且需求仍在不断变化、增加,所以,数据仓库的建立是一个过程,从建立简单的基本框架着手,不断丰富和完善整个系统。这一过程将由以下几部分构成:需求分析、概念模型设计、逻辑模型设计、物理模型设计和数据仓库生成。
从整体的角度来看,数据仓库的实现方法主要有自顶向下法、自底向上法和联合方法。
在该方法中,首先应找出数据仓库解决方案所要满足的商业需求,把商业需求视为实现数据仓库的首要任务。数据仓库是一种功能而不是一种特征,数据仓库保存信息,并以外部工具易于显示和操作的方式组织这些信息。因此,如果不借助于可以利用这种功能的外部工具,最终用户就无法将这种功能嵌入数据仓库中。这样,就很难定出该功能的范围,除非用广义上的商业术语,如“数据仓库将包含有关客户、供应商、市场、产品的信息”。自顶向下方法的优点和缺点如表2-5所示。
表2-5 自顶向下方法的优缺点
规划和实现数据仓库的自顶向下方法一般用于以下情况:
(1)实现单位比较熟悉技术,并具有根据商业需求采用自顶向下方法开发应用程序的丰富经验。
(2)决策层(总经理、决策者、投资者)完全清楚数据仓库的预测目标。
(3)决策层(总经理、决策者、投资者)完全清楚数据仓库用作哪些机构的决策支持工具。
(4)决策层(总经理、决策者、投资者)完全清楚数据仓库已经是商业过程中的一个子过程。
如果技术是成熟的和众所周知的,或者必须解决的商业问题是显而易见的,那么自顶向下方法是很有用的。采用自顶向下方法可以将技术和商业目标有机地结合起来。
自底向上方法一般从实验和基于技术的原形入手。先选择一个特定的、众所周知的商业问题的子集,再为该子集制订方案。实现自底向上一般是比较快的。自底向上可以使一个单位在发展时用尽可能少的经费和时间,就可以在做出有效的投入之前评估技术的收益情况。在数据仓库领域,自底向上方法是快速实现数据集市、部门级数据仓库的有效手段。自底向上方法的优点和缺点如表2-6所示。
表2-6 自底向上方法的优缺点
规划和实现数据仓库的自底向上方法一般用于以下情况:
(1)企业还没有确实掌握数据仓库技术,希望进行技术评估来决定运行该技术的方式、地点和时间。
(2)企业希望了解实现和运行数据仓库所需要的各种费用情况。
(3)企业在对数据仓库进行投资选择。
自底向上方法对于希望从数据仓库投资中快速得到回报的用户是非常有效的。该方法可以使企业充分利用各种技术,无须冒很大风险。
在以上两种方法的联合方法中,企业在保持自底向上方法的快速实现和机遇应用的同时,还可以利用自顶向下方法的规划和决策性质。这种方法依赖于以下两个因素:
(1)自顶向下的结构、标准和设计小组,可以从一个项目向另外一个项目传递知识,也可以把战术决策变为战略决策。
(2)自底向上方法的项目小组,它直接负责在短期内实现一个集中的、部门级的商务解决方案。
联合方法具有以上两种方法的优点,但是难以作为一个项目来管理。该方法一般用于:
(1)实现企业拥有经验丰富的设计师,有能力建立、证明、应用和维护数据结构、技术结构及企业模型,可以很容易地从具体(运作系统中的元数据)转移到抽象。
(2)企业拥有固定的项目小组,完全清楚数据仓库技术应用的场所。他们可以清楚地看到当前的商务需求。
联合方法适合数据仓库技术的快速试运行,并且保留了建立长远的决策方案的机会。