Dwh 简明教程

Data Warehousing - Delivery Process

数据仓库绝不是一成不变的;它会随着业务的扩展而不断发展。随着业务发展,其需求不断变化,因此必须设计一个数据仓库来应对这些变化。因此,数据仓库系统需要具有灵活性。

理想情况下,应该有一个交付流程来交付数据仓库。然而,数据仓库项目通常会受到各种问题的困扰,使得按照瀑布方法要求的严格有序的方式完成任务和交付成果变得困难。大多数时候,需求并没有被完全理解。只有在收集并研究所有需求后,才能完成架构、设计和构建组件。

Delivery Method

交付方法是为交付数据仓库而采用的联合应用程序开发方法的一种变体。我们对数据仓库交付流程进行了分阶段,以最大程度降低风险。我们将在此处讨论的方法并没有缩短整体交付时间表,而是确保在开发过程中逐步交付业务收益。

Note - 交付流程被分解成各个阶段以降低项目和交付风险。

下图解释了交付过程中的各个阶段 -

delivery method

IT Strategy

数据仓库是战略性投资,需要一个业务流程来创收。IT 战略是获得和保留项目资金所必需的。

Business Case

商业案例的目的是估算企业在使用数据仓库时应考虑的收益。这些收益可能无法量化,但预计的收益需要明确表述。如果某个数据仓库没有明确的商业案例,那么该数据仓库在交付过程中的某个阶段可能会存在信誉问题。因此,在数据仓库项目中,我们需要了解投资的商业案例。

Education and Prototyping

在确定解决方案之前,各种组织会尝试数据分析概念,并自学数据仓库的价值。通过原型展示来满足这一目标。它有助于了解数据仓库的可行性和收益。小规模的原型展示活动可以促进教育过程的发挥,只要满足以下条件:

  1. 原型展示满足既定的技术目标。

  2. 在展示可行性概念后,可以不再采用该原型展示。

  3. 该活动涉及数据仓库的现有数据内容的一小部分。

  4. 活动时标没有必要。

以下几点对于产生早期版本并满足收益至关重要:

  1. 识别一个能够不断发展的架构。

  2. 重点在于业务需求和技术蓝图阶段。

  3. 将第一构建阶段的范围限制在满足业务需求的最低限度。

  4. 了解数据仓库的短期和中期需求。

Business Requirements

为提供高质量的交付成果,我们应确保了解整体需求。如果我们了解了短期和中期的业务需求,那么就能够设计一个解决方案来满足短期需求。随后可以将短期解决方案扩展至一个完整的解决方案。

此阶段确定以下方面:

  1. 应用于数据的业务规则。

  2. 数据仓库中信息所需的逻辑模型。

  3. 即时需求的查询配置文件。

  4. 提供该数据的源系统。

Technical Blueprint

此阶段需要交付一个满足长期需求的整体架构。该阶段还会交付应在短期内实施以实现业务收益的组成部分。蓝图需要识别以下内容:

  1. The overall system architecture.

  2. The data retention policy.

  3. 备份和恢复策略。

  4. 服务器和数据市集架构。

  5. 硬件和基础设施的容量计划。

  6. 数据库设计的组件。

Building the Version

在此阶段,生成第一个生产可交付成果。此生产可交付成果是数据仓库中最小的组成部分。这个最小组成部分增加了业务效益。

History Load

这是将所需的剩余历史记录加载到数据仓库中的阶段。在此阶段,我们不会添加新实体,但可能会创建其他物理表来存储增加的数据量。

让我们举个例子。假设构建版本阶段已交付了一个包括两个月历史记录的零售销售分析数据仓库。此信息将允许用户仅分析最近的趋势并解决短期问题。在这种情况下,用户无法识别每年的季节性趋势。为了帮助他这样做,可以从归档中加载过去两年的销售历史记录。现在,40GB 数据已扩展到 400GB。

Note − 备份和恢复过程可能会变得很复杂,因此建议在单独的阶段中执行此活动。

Ad hoc Query

在此阶段,我们配置一个用于操作数据仓库的临时查询工具。这些工具可以生成数据库查询。

Note − 建议在对数据库进行大幅修改时不要使用这些访问工具。

Automation

在此阶段,操作管理过程已完全自动化。这些内容包括:

  1. 将数据转换为适合分析的格式。

  2. 监视查询概要文件并确定适当的汇总以维持系统性能。

  3. 从不同的源系统中提取和加载数据。

  4. 从数据仓库中的预定义定义中生成汇总。

  5. 备份、恢复和存档数据。

Extending Scope

在此阶段,数据仓库已扩展以满足新的业务需求。范围可以通过两种方式扩展:

  1. 通过将其他数据加载到数据仓库中。

  2. 引入新的数据处理中心,同时使用现有的信息。

Note − 由于此阶段将涉及相当的工作量和复杂性,因此应单独执行。

Requirements Evolution

从交付流程的角度来看,需求总是可以更改的。它们不是一成不变的。交付流程必须支持这一点,并允许这些更改反映在系统中。

通过围绕业务流程内的数据使用来设计数据仓库,而不是围绕现有查询的数据需求来解决此问题。

该体系结构旨在随着业务需求而改变和增长,该流程作为一个伪应用程序开发流程运行,其中新需求不断输入到开发活动中,并生成部分可交付成果。这些部分可交付成果反馈给用户,然后重新加工,以确保整个系统不断更新,以满足业务需求。