维度建模——数据仓库初步

分类目录:商业智能《维度建模》总目录

本文是《维度建模》后续文章的基础。我们首先从宏观层面上考察数据仓库和商业智能(Data Warehousing and Business Intelligence,DW/BI)系统。DW/BI系统首先应该仔细考虑的问题是业务需求。《维度建模》系列文章将紧紧抓住业务需求这一要点,逐步深入探讨逻辑设计、物理设计以及采用有关技术和工具的决策等问题。

本文将详细考察数据仓库及商业智能的主要目标,辨析DW/BI管理者与杂志出版商各自责任中存在的不可思议的相似之处。

基于此背景,我们将探索维度建模核心概念并建立基本词汇表。在此基础上,本文将讨论 Kimball DW/BI结构的主要组成部分,并与其他不同的结构方法进行比较,无论读者倾向于使用何种结构,这些讨论对维度建模都有非常重要的意义。下一篇文章将总结针对维度建模的诸多错误理解,并解释为什么在处理DW/BI项目时,既需要从数据库管理员的角度,也需要从商业分析师的角度考虑问题。

数据获取与数据分析的区别

对所有组织来说,信息都是其最重要的财富之一。信息几乎总是用作两个目的:操作型记录的保存和分析型决策的制定。简单来说,操作型系统保存数据,而DW/BI系统使用数据。

操作型系统的用户确保组织能正常运转。操作型系统获取订单、签订新客户、监视操作型活动的状态、记录问题及用户的抱怨。对操作型系统进行优化的目的是使其能够更快地处理事务。操作型系统一般一次处理一个事务记录。它们按部就班,以可预测的方式完成同样的操作型任务,可预测地执行组织的业务过程。鉴于这种执行特点,操作型系统通常不必维护历史数据,只需修改数据以反映最新的状态。

另一方面,DW/BI系统的用户研究分析企业的运转,并对其性能进行评估。DW/BI系统计算新订单的数量,并与过去一周的订单进行比较,找寻签订新客户的原因,了解客户在抱怨什么。这些信息用于分析并判断操作型过程是否处于正确的工作状态。尽管也需要详细的数据来支持始终处于变化状态的问题,但DW/BI系统一般不会一次只处理一个事务。对DW/BI系统进行优化的目的是高性能地完成用户的查询,而回答用户的查询通常需要搜索成千上万条事务,并将查询结果放入一个查询集合中。为应对更复杂的问题,DW/BI系统的用户通常要求保存历史环境,用于精确地评估组织在一段时间内的性能。目前,DW/BI系统与操作型系统有不同的需求、不同的客户、不同的结构以及不同的应用场景的观点已经为大众所接受。遗憾的是,我们仍会发现认为DW/BI系统
是存储于不同硬件平台上的操作型系统的记录的拷贝这样的错误观点。尽管在这样的环境中,出于性能的考虑,将操作型系统和分析型系统进行了隔离,但并未仔细考虑这两类系统之间天然存在的其他差异。商业用户感觉不到由这些虚假数据仓库提供的可用性和性能。这些冒名顶替者对DW/BI系统造成了伤害,因为它们没有考虑DW/BI系统用户与操作型户在需求方面存在巨大的差异。

数据仓库与商业智能的目标

在开始深入研究维度建模的细节前,关注数据仓库与商业智能的基本目标是非常有益的。这些目标可通过深入到任何组织的工作场所中,倾听业务管理的问题而建立起来:

  • 我们收集了海量的数据,但无法对其访问
  • 我们需要以各种方式方便地对数据进行切片及切块
  • 业务人员需要方便地获得数据
  • 将最重要的事情展示
  • 会议自始至终争论的是谁的数字正确,而不是制定决策
  • 我们希望人们能够使用信息来支持更多的基于事实的决策制定

基于我们的经验,上述的关注仍然普遍存在,它们构成了DW/BI系统的基本需求。下面将上述引用的业务管理话题转换为业务需求:

  • DW/BI系统要能方便地存取信息:DW/BI系统的内容必须是易于理解的。对业务用户来说,数据需要有直观性。直观性不能仅针对开发人员。数据结构与标识必须符合业务用户的思维过程和词汇。业务用户能以各种形式分割和合并分析数据。访问数据的商业智能工具和应用要简单易用,同时能够在较短的时间内速将查询结果返回给用户。可以将上述这些需求描述为:简单、快捷
  • DW/BI系统必须以一致的形式展现信息:DW/BI系统的数据必须是可信的。精心组织不同来源的数据,实现数据清洗,确保质量,只有在数据真正适合用户的需要时发布。一致性也意味着表示DW/BI系统内容的公共标识和定义,可在不同数据源共用。如果两个关于性能度量的参数具有同样的名称,则它们一定是指同一个事情(同名同意性)。反之,如果两个度量参数被用于表示不同的事情,则它们应该具有不同的标记(异意异名性)。
  • DW/BI系统必须能够适应变化:用户需求、业务环境、数据及技术都容易产生变化。设计DW/BI系统时要考虑使其能够方便地处理无法避免的变化,以便在变化发生时仍能处理现有的数据和应用。当业务问题发生变化或新数据增加到数据仓库中时,已经存在的数据和应用不应该被改变或破坏。最后,如果必须修改DW/BI系统中的描述性数据,要能以适当的方式描述变化,并使这些变化对用户来说是DW/BI系统必须能够及时展现信息。由于DW/BI系统主要用于操作型决策,原始数据需要在几小时、几分钟或几秒钟内被转换成可用的信息。当没有多少时间用于清洗或验证数据时,DW/BI团队和业务用户需要对发布数据意味着什么有现实的期望。
  • DW/BI系统必须成为保护信息财富的安全堡垒:保存在数据仓库中的信息是组织的信息化财富。至少,数据仓库可能会包含有关将何种商品以什么样的价格卖给何种客户的信息,如果将这样的信息发送给错误的人,将给组织带来伤害。DW/BI必须能有效控制对组织中机密信息的访问DW/BI系统必须成为提高决策制定能力的权威和可信的基础。数据仓库需要正确的信息以支持决策制定。DW/BI系统最重要的输出是基于分析证据所产生的决策,这些决策体现了数据仓库的影响和价值。早期用于表示DW/BI系统的称谓—决策支持系统,仍可作为开展系统设计的最好描述。
  • DW/BI系统成功的标志是业务群体接受DW/BI系统:是否使用最佳组合产品或平台来构建体面的解决方案其实并不重要。如果业务群体不能接受DW/BI环境并积极使用它,就难言成功。对操作型系统来说,用户无法对其加以选择,只能使用新系统,而对DW/BI系统来说,与操作型系统不同的是,它是可选的。只有当DW/BI系统真正成为用于构建可付诸实现的信息的“简单快捷”的资源时,用户才会接受它。

尽管上述列表中的每一项都很重要,但我们认为最后两项至关重要。遗憾的是,通常这两项是最容易被忽略的。数据仓库和商业智能的成功需要更多的专业设计师、技术员、建模人员、数据库管理员。作为初涉DW/BI领域的人,一方面具有较好的信息技术基础,另一方面,对业务用户并不了解。我们必须两方面兼顾,为适应DW/BI的独特需求,修改那些经过检验的技能。显然,需要一整套的技能,这些技能既包括数据库管理的技能,也包括商业分析师的技能,才能更好地适应DW/BI的商业盛筵。

对于一个DW/BI管理者,他们需要:

  • 理解业务用户
    • 理解他们的工作责任、目标和任务
    • 确定商业用户在制定哪些决策时需要DW/BI系统的帮助
    • 识别出那些制定出高效率、高影响的决策的“最佳”用户
    • 发现潜在的新用户,并让他们意识到DW/BI系统能够给他们带来什么能力。
  • 对业务用户发布高质量、相关的、可访问的信息和分析
    • 选择最健壮的、可操作的数据放入DW/BI系统中,从组织机构的各种数据源中仔细选择
    • 简化用户接口和应用,采用模板驱动方式,与用户的认知过程轮廓匹配
    • 确保数据精确、可信,使其标识在整个企业具有一致性
    • 不间断地监控数据和分析的准确性
    • 适应用户不断变化的思维方式、需求和业务优先级,及新数据源的可用性
  • 维护DW/BI环境
    • 采用DW/BI系统制定的成功的业务决策,验证人员配置及要投入的开支
    • 定期对DW/BI系统进行更新
    • 保持业务用户的信任
    • 保持业务用户、执行赞助商和IT管理层满意度

你可能感兴趣的:(维度建模)