您的位置:首页 > 其它

数据仓库构建步骤(上)

2007-04-12 11:34 465 查看
  数据仓库是面向主题的、集成的、不可更新的、随时间的变化而不断变化的,这些特点决定了数据仓库的系统设计不能采用同开发传统的OLTP数据库一样的设计方法。

  数据仓库系统的原始需求不明确,且不断变化与增加,开发者最初不能确切了解到用户的明确而详细的需求,用户所能提供的无非是需求的大的方向以及部分需求,更不能较准确地预见到以后的需求。因此,采用原型法来进行数据仓库的开发是比较合适的,因为原型法的思想是从构建系统的简单的基本框架着手,不断丰富与完善整个系统。但是,数据仓库的设计开发又不同于一般意义上的原型法,数据仓库的设计是数据驱动的。这是因为数据仓库是在现存数据库系统基础上进行开发,它着眼于有效地抽取、综合、集成和挖掘已有数据库的数据资源,服务于企业高层领导管理决策分析的需要。但需要说明的是,数据仓库系统开发是一个经过不断循环、反馈而使系统不断增长与完善的过程,这也是原型法区别于系统生命周期法的主要特点。因此,在数据仓库的开发的整个过程中,自始至终要求决策人员和开发者的共同参与和密切协作,要求保持灵活的头脑,不做或尽量少做无效工作或重复工作。

数据仓库的设计大体上可以分为以下几个步骤:
l 概念模型设计;
l 技术准备工作;
l 逻辑模型设计;
l 物理模型设计;
l 数据仓库生成;
l 数据仓库运行与维护。

  下面我们六个主要设计步骤为主线,介绍在各个设计步骤中设计的基本内容。

第一节 概念模型设计

进行概念模型设计所要完成的工作是:
<1>界定系统边界
<2>确定主要的主题域及其内容

  概念模型设计的成果是,在原有的数据库的基础上建立了一个较为稳固的概念模型。因为数据仓库是对原有数据库系统中的数据进行集成和重组而形成的数据集合,所以数据仓库的概念模型设计,首先要对原有数据库系统加以分析理解,看在原有的数据库系统中“有什么”、“怎样组织的”和“如何分布的”等,然后再来考虑应当如何建立数据仓库系统的概念模型。一方面,通过原有的数据库的设计文档以及在数据字典中的数据库关系模式,可以对企业现有的数据库中的内容有一个完整而清晰的认识;另一方面,数据仓库的概念模型是面向企业全局建立的,它为集成来自各个面向应用的数据库的数据提供了统一的概念视图。

  概念模型的设计是在较高的抽象层次上的设计,因此建立概念模型时不用考虑具体技术条件的限制。

1. 界定系统的边界

数据仓库是面向决策分析的数据库,我们无法在数据仓库设计的最初就得到详细而明确的需求,但是一些基本的方向性的需求还是摆在了设计人员的面前:

l 要做的决策类型有哪些?
l 决策者感兴趣的是什么问题?
l 这些问题需要什么样的信息?
l 要得到这些信息需要包含原有数据库系统的哪些部分的数据?

这样,我们可以划定一个当前的大致的系统边界,集中精力进行最需要的部分的开发。因而,从某种意义上讲,界定系统边界的工作也可以看作是数据仓库系统设计的需求分析,因为它将决策者的数据分析的需求用系统边界的定义形式反映出来。

2. 确定主要的主题域

在这一步中,要确定系统所包含的主题域,然后对每个主题域的内容进行较明确的描述,描述的内容包括:

l 主题域的公共码键;
l 主题域之间的联系;
l 充分代表主题的属性组。

第二节 技术准备工作

这一阶段的工作包括:技术评估,技术环境准备。
这一阶段的成果是:技术评估报告、软硬件配置方案、系统(软、硬件)总体设计方案。管理数据仓库的技术要求与管理操作型环境中的数据与处理的技术要求区别很大,两者所考虑的方面也不同。我们之所以在一般情况下总是将分析型数据与操作型数据分离开来,将分析型数据单独集中存放,也就是用数据仓库来存放,技术要求上的差异是一个重要原因。

1. 技术评估

  进行技术评估,就是确定数据仓库的各项性能指标。一般情况下,需要在这一步里确定的性能指标包括:

l 管理大数据量数据的能力;
l 进行灵活数据存取的能力;
l 根据数据模型重组数据的能力;
l 透明的数据发送和接收能力;
l 周期性成批装载数据的能力;
l 可设定完成时间的作业管理能力。

2. 技术环境准备

  一旦数据仓库的体系化结构的模型大体建好后,下一步的工作就是确定我们应该怎样来装配这个体系化结构模型,主要是确定对软硬件配置的要求;我们主要考虑相关的问题:

l 预期在数据仓库上分析处理的数据量有多大?
l 如何减少或减轻竞争性存取程序的冲突?
l 数据仓库的数据量有多大?
l 进出数据仓库的数据通信量有多大?等等。

  根据这些考虑,我们就可以确定各项软硬件的配备要求,并且在这一步工作结束时各项技术准备工作应已就绪,可以装载数据了。这些配备有:

l 直接存取设备(DASD);
l 网络;
l 管理直接存取设备(DASD)的操作系统;
l 进出数据仓库的界面(主要是数据查询和分析工具);

  管理数据仓库的软件,目前即选用数据库管理系统及有关的选件,购买的DBMS产品不能满足管理数据仓库需要的,还应考虑自己或软件集成商开发有关模块等等。
第三节 逻辑模型设计
在这一步里进行的工作主要有:

l 分析主题域,确定当前要装载的主题;
l 确定粒度层次划分;
l 确定数据分割策略;
l 关系模式定义;
l 记录系统定义

  逻辑模型设计的成果是,对每个当前要装载的主题的逻辑实现进行定义,并将相关内容记录在数据仓库的元数据中,包括:

l 适当的粒度划分;
l 合理的数据分割策略;
l 适当的表划分;
l 定义合适的数据来源等。

1. 分析主题域

  在概念模型设计中,我们确定了几个基本的主题域,但是,数据仓库的设计方法是一个逐步求精的过程,在进行设计时,一般是一次一个主题或一次若干个主题地逐步完成的。所以,我们必须对概念模型设计步骤中确定的几个基本主题域进行分析,并选择首先要实施的主题域。选择第一个主题域所要考虑的是它要足够大,以便使得该主题域能建设成为一个可应用的系统;它还要足够小,以便于开发和较快地实施。如果所选择的主题域很大并且很复杂,我们甚至可以针对它的一个有意义的子集来进行开发。在每一次的反馈过程中,都要进行主题域的分析。

2. 粒度层次划分

  数据仓库逻辑设计中要解决的一个重要问题是决定数据仓库的粒度划分层次,粒度层次划分适当与否直接影响到数据仓库中的数据量和所适合的查询类型。确定数据仓库的粒度划分,可以使用在粒度划分一节中介绍的方法,通过估算数据行数和所需的DASD数,来确定是采用单一粒度还是多重粒度,以及粒度划分的层次。

3. 确定数据分割策略

  在这一步里,要选择适当的数据分割的标准,一般要考虑以下几方面因素:数据量(而非记录行数)、数据分析处理的实际情况、简单易行以及粒度划分策略等。数据量的大小是决定是否进行数据分割和如何分割的主要因素;数据分析处理的要求是选择数据分割标准的一个主要依据,因为数据分割是跟数据分析处理的对象紧密联系的;我们还要考虑到所选择的数据分割标准应是自然的、易于实施的:同时也要考虑数据分割的标准与粒度划分层次是适应的。

4. 关系模式定义

  数据仓库的每个主题都是由多个表来实现的,这些表之间依靠主题的公共码键联系在一起,形成一个完整的主题。在概念模型设计时,我们就确定了数据仓库的基本主题,并对每个主题的公共码键、基本内容等做了描述在这一步里,我们将要对选定的当前实施的主题进行模式划分,形成多个表,并确定各个表的关系模式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  步骤 数据仓库 构建