您现在的位置:e-works > 百味书屋 > 书籍列表 > 商业智能深入浅出——Cognos,Informatica技术与应用 > 数据仓库系统组成部分介绍

第三章 商业智能数据仓库的理论知识

第五节 数据仓库系统组成部分介绍

    数据仓库系统的组成部分有:针对数据源的分析、数据的迁移、数据的存储结构、元数据管理等。

    其中数据仓库系统的数据源分析是开启商业智能项目的第一道大门,也是最基本的一步。业务系统的源数据通常来自企业的内部信息和外部信息。所谓内部信息,是指来自企业的生产数据和历史归档数据。而企业的生产数据有可能来自于不同的业务系统,如何将这些业务数据进行标准化,转换成数据仓库可以存储的数据,从而保证数据仓库中数据的一致性,这是数据源分析最重要的一步。归档历史数据一般是指将大量的、不常用的历史数据以在线的方式或者以离线的方式存储在数据库中或者磁带机中,这些历史数据有可能会成为数据仓库系统分析未来趋势和探究根本原因的宝贵财富。外部信息一般包括企业的法律法规、该行业的市场信息和该企业竞争对手的信息,例如该企业竞争对手的市场占有率信息。企业内部信息和外部信息如图3-12所示。

    数据的迁移部分主要包括数据的抽取、转换和加载3个部分。

    数据仓库的存储与管理:存储与管理是数据仓库的核心工作。因为数据仓库特有的组织管理方式区别于传统的数据库管理,它是按照主题的形式对业务源数据进行抽取、转换、加载和集成的。在数据仓库中,存储了大量的历史数据,将这些宝贵的历史数据转换成可以分析的、稳定的数据是数据仓库的根本任务和目的。

 企业内部信息和外部信息

图3-12  企业内部信息和外部信息

    元数据的管理主要包括技术元数据和业务元数据的管理。

    下面对此进行详细的说明。

    3.5.1  数据源分析

    数据源是数据仓库系统所有信息的源头,主要是操作型业务应用系统存放的数据集合。数据源分析是指对业务数据源中的原始数据进行分析,得到数据的范围、格式,以及其更新方式、更新频率、质量等方面的信息。商业智能系统本身就是一个数据分析的系统,对数据源的分析是开启商业智能项目大门的过程,数据仓库系统需要支持多种数据源格式,为了确定抽取方式,需要对数据源进行详细的分析。

    在分析的过程中,需要确定业务源数据中哪些数据需要被抽取。为了确定合适的抽取方式,需要在抽取之前对数据源进行分析,分析的范围一般包括数据的格式、数据的范围、更新的方式、数据质量的好坏。在分析的过程中,应该尽可能获取分析的结果,形成数据源分析报告,在仔细研究分析报告后,再选择合适的抽取、加载方式。

    在分析时,应该抛弃实际的应用系统,在逻辑上重新确定目标表中需要哪些业务数据,然后再根据业务系统的实现方式,分析业务源数据的存储格式、更新频率、更新方式和数据质量。

    可以得出这样的结论:所谓数据源分析,就是对源数据进行分析和总结,得出源数据的范围、格式、更新方式、更新频率和质量好坏的过程。

    数据源分析的过程分为范围分析、格式分析、更新方式分析、质量分析4个方面,如图3-13所示。

  数据源分析过程

图3-13  数据源分析过程

    1)范围分析是指分析数据的范围。用户需要确定数据仓库系统需要数据源中的哪些原始数据。例如,在某电力行业的销售电量分析主题中,所有的数据均来自某管理信息系统,由此可以确定,这个销售电量分析主题的数据源都来自该管理信息系统,可能是与这个管理系统中的客户相关的数据,或者与电量相关的数据。而与财务数据或用户欠费相关的业务数据不相关。

    2)格式分析是指对原始数据在数据库中的物理存储方式进行分析。内容包括在数据库中的存储类型、存储长度、数据精度等指标。

    3)更新方式分析是指对原始数据在应用系统中的更新方式、更新频率、更新内容进行分析判断。内容包括原始数据何时更新、更新方式、具体更新哪些内容等。例如,在某销售电量主题分析中,需要考虑用户的抄表数据和电量数据,一般都是每月增量更新的,而用户的档案信息也有可能进行更新,用户的欠费信息也随着用户的缴费行为而随时发生相应的变化。

    4)质量分析是指分析业务源数据的质量。主要分析数据完整性、数据准确性、数据一致性等内容。一般步骤包括:设计数据质量定义文档,内容包括数据质量验收的依据,数据质量等级的划分,数据质量检查的流程等内容;再根据数据质量定义文档进行数据质量检查,最终形成质量报告;根据数据质量报告进行深入分析,将分析结果提交给相关人员,协助设计人员完成数据清洗规则的制定。通常,质量分析是数据源分析中最重要、工作量最多的部分。

    总结:除以上所述的对数据源进行分析外,还需要对各项指标数据的确切含义,统计口径等信息进行明确的界定,以避免产生二义性。例如,在销售电量主题分析中,需要明确销售电量的确切含义,是否包含线损电量、变损电量等。

    3.5.2  数据迁移

    数据迁移是商业智能的重点,可以归纳为如下3点。

    (1)数据抽取

    数据抽取前需要清楚以下内容:数据源来自于哪几个业务系统,各个业务系统的数据库管理系统分别是什么,是否存在手工录入的情况。

    在确定数据抽取方式时,根据不同情况,不同业务源数据的抽取方式可能不相同。在对数据抽取方式进行设计时,首先根据数据抽取的范围,估算出每次抽取的数据量;然后再从实际的业务系统数据库服务器当前的运行情况,ETL服务器与业务系统数据库服务器之间的网络连接情况,客户对数据实时性的要求等方面考虑,选择最合适的抽取方式。

    数据抽取可以有两种方式:直接抽取方式、间接抽取方式。

    在进行数据抽取时,先明确每个数据表采用何种数据抽取方式。直接抽取方式是指数据抽取过程中直接从业务源数据库到目标库,中间没有经历过任何过渡。但是直接抽取方式必须确定业务系统数据库为ETL过程提供的数据库用户名、授权给该用户访问的表名称,对该用户授权的方式、数据抽取时相关的安全措施等内容。间接抽取方式是指采用文件交换的方式进行数据抽取,需要考虑网络连接、数据库的分布等客观因素。在文件交换的过程中,需要确定文件交换的位置、文件的格式、对文件完整性的检查、文件传输的方式、文件是否传输完毕的标记、文件重新传递的标记等内容。间接抽取方式也称做异步ETL方式。

    (2)数据转换

    数据转换的含义是将业务系统内的各种源数据,通过自定义的转换脚本或者其他一些计算方法,将源数据转换成符合数据仓库要求的数据。转换过程包含了对数据不一致性的转换,数据粒度的转换和满足一些计算指标的转换。

    如果转换的目标表是针对数据集市中的表,那么当每一个字段确定好转换规则后,需要对同一表中的所有字段进行综合,以SQL语句的方式记录下来。这期间包含了将业务系统数据按照数据仓库粒度进行聚合的过程。对于比较复杂的转换规则,无法在一个SQL语句中完整地表现一个表所有字段的,可以拆分为多个SQL语句。

    在这一步,需要形成转换规则文档。内容包括数据集市中的所有字段如何关联到业务系统中的各个字段,以及每个字段的运算转换函数及参数,转换的方法,还包括每个表的SQL转换语句等内容。

    (3)数据装载

    数据经过转换、清洗后,需要装载到目标数据库中。数据装载的方式有多种:全表对比方式、时间戳方式、日志表的方式、全表删除后再插入的方式。这部分内容在后续章节中有详细的介绍,在此不再赘述。

    3.5.3  选择数据的存储结构

    数据库管理系统一般都提供多种存储结构。所谓数据的存储结构,是指数据的逻辑结构在计算机系统中的表示。

    设计人员根据实际的需求选择合适的数据存储结构,不同的存储结构有不同的实现方式,各有各的特点。对设计人员来说,考虑的主要因素包括以下3个方面:存储的时间、存储空间的利用率和数据维护的成本。

    一般在ODS数据存储结构说明书中,需要详细说明这些数据采用的存储结构,以及采用该存储结构的原因。

    3.5.4  元数据

    元数据主要包括技术元数据与业务元数据。

    (1)技术元数据

    技术元数据是存储关于商业智能系统技术细节的数据,是用于开发和管理商业智能系统使用的数据。它主要包括以下信息:商业智能系统结构的描述,包括对数据源、数据转换、抽取过程、数据加载策略以及对目标数据库的定义等内容;还包括数据仓库使用的模式、视图、维度、层次结构、类别和属性的定义,以及立方体的存储模式等信息。

    总之,技术元数据提供给系统管理人员和数据仓库开发人员使用,管理人员需要了解操作环境到商业智能环境的映射关系(即ETL数据抽取的映射关系),数据的刷新规则,数据的安全性,数据库优化和任务调度等内容。数据仓库开发人员需要了解度量值和维度定义的算法。在实际商业智能开发过程中,业务元数据和技术元数据是相互关联的,对元数据的深刻理解是数据仓库应用和维护的基础。

    (2)业务元数据

    业务元数据从业务角度描述了商业智能系统中的数据,是介于使用者和真实系统之间的语义层,使得不懂计算机技术的业务人员也能够“理解”商业智能系统中的数据。业务元数据使用业务名称、定义、描述等信息表示数据仓库中的各种属性和概念。业务元数据主要包括以下信息:用户的业务术语和它们表达的数据模型信息、对象名称及其属性,数据的来源信息和数据访问的规则信息,商业智能系统提供的各种分析方法以及报表展示的信息。业务元数据使数据仓库管理人员和用户更好地理解和使用数据仓库,用户通过查看业务元数据可以清晰地理解各指标的含义,指标的计算方法等信息。

    元数据的作用包括:便于商业智能系统的集成和可重用,保证数据仓库的数据质量和可维护性,帮助业务人员和技术人员更好地理解当前业务和系统数据,提高商业智能系统的管理效率。

    这部分内容在后续章节中有详细的介绍,在此不再赘述。

    总结:房地产业对我国经济的贡献是不可估量的。一是可以解决大批的农民工就业问题;二是为地方财政带来了客观的收益。数据仓库系统的组成部分与房地产的建设过程非常相似。建筑行业的人都知道,大楼的建设是很复杂的,包括钢筋、水泥、保温材料、下水道、燃气管道、防水层等一系列的原材料(数据仓库中称为源数据),经供货公司从全国各地运送到建筑工地,由建筑工人按照建筑设计师的图样手工搭建,配合大型搅拌机、起重机等外部设备的灌浇过程,最终建设完成。数据仓库与房地产业的关联图如图3-14所示。

  数据仓库与房地产业的关联图

图3-14  数据仓库与房地产业的关联图