构造数据仓库
- 明确需求
- 用户的主观分析需求
- 选择工具
- 数据抽取(Data Extract)工具
- 数据清洗(Data Cleaning)工具
- 元数据(Metadata)管理工具
- 数据分析工具(Look for patterns)
- 数据挖掘工具(Look for hidden patterns)
- 数据展现工具
- 构建数据仓库
操作型处理
- 也叫事务处理,是指对数据库的日常联机访问操作,通常是对一个或一组记录的查询和修改,主要是为企业的特定应用服务的,所以也叫联机事务处理
- On-Line Transaction Processing(OLTP)
- 通常仅仅是对一个或一组记录的查询或修改
- 查询简单,但执行频率高
- 人们关心的是处理的响应时间、数据的安全性和完整性等指标
分析型处理
- 也叫做信息型处理,主要用于企业管理人员的决策分析,为制订企业的未来经营管理计划提供辅助决策信息
- 需要对大量的事务型数据进行统计、归纳和分析
- 需要访问大量的历史数据
- 执行频率和对响应时间的要求都不高
- 典型的分析型处理
- 决策支持系统(DSS——Decision Support System)
事务处理环境不适宜DSS应用的原因*
- 事务处理和分析处理的性能特性不同
- 用户每次操作处理的时间段,存取数据量小,但操作频率高,并发程度大
- 每次分析可能需要连续运行很长的时间,存取数据量大,但很少做这样的分析处理,也没有并发执行的要求
- 数据集成问题
- 事务处理一般只需要与本业务部门有关的当前细节数据
- 分析处理的数据可能来自多种不同的数据源
- 对于需要集成数据的DSS应用来说,在应用程序中对事务处理环境中的这些纷繁复杂的数据进行集成,将带来下述问题:
- 大大加重程序员的负担
- 重复计算
- 极低的分析处理效率
- 数据的动态集成问题
- 集成数据必须以一定的周期进行刷新(即采用动态集成策略),但传统的事务处理并不具备动态集成的能力
- 历史数据问题
- 事务处理一般只需要当前数据
- 分析处理更看重历史数据
- 数据的综合问题
- 事务处理需要的是当前的细节性操作数据
- 分析处理需要的往往是大量的总结性分析型数据,而非数据库中的细节性操作型数据
- 在分析前往往需要对细节数据进行不同程度的综合,传统的事务处理不具备这种综合能力
- 数据的访问问题
- 事务处理对于需要修改的数据必须实时“更新”数据库
- 分析处理不需要实时的“更新”操作,但需要定时刷新
数据仓库
定义
数据仓库就是一个面向主题的、集成的、不可更新的、随时间不断变化的数据集合,用于支持经营管理过程中的决策制定
四个特征
- 面向主题
- 主题是较高层次上将企业信息系统中的数据综合、归类并进行分析利用的抽象。在逻辑意义上,是对企业中某一宏观分析领域涉及的分析对象
- 面向主题是指数据仓库内的信息是按主题进行组织的,为按主题进行决策的过程提供信息
- 如果按照面向主题的方式进行数据组织,首先一共抽取主题,即按照管理人员的分析要求来确定主题,而与每个主题相关的数据又与有关的事务处理所需的数据不尽相同
- 集成
- 数据仓库中的数据是为分析服务的,而分析需要多种广泛的不同数据源以便进行比较、鉴别,因此数据仓库中的数据必须从多个数据源中获取,这些数包括多种类型数据库、文件系统以及Internet网上数据等,它们通过数据集成而形成数据仓库中的数据
- 非易失(稳定的)
- 数据仓库中的数据是经过抽取而形成的分析型数据,不具有原始性,**主要供企业决策分析之用,执行的主要是“查询操作,一般情况下不执行“更新”操作。同时,一个稳定的数据环境也有利于数据分析操作和决策的制订
- 时变的(随时间不断变化)
- 数据仓库内的信息并不只是关于企业当时或某一时点的信息,而是系统记录了企业从过去某一时点到目前的各个阶段的信息,通过这些信息可以对企业的发展历程和未来趋势作出定量分析和预测
- 因此数据仓库中的数据通常带有时间属性,同时必须以一定时间段为单位进行统一更新
关键技术
- 数据的ETL(抽取、转换、装载)
- 存储和管理
- 数据的访问和表现
数据抽取
数据仓库中的数据来源于数据源,将数据源中数据通过网络进行抽取,并经加工、转换、综合后形成数据库中的数据,这就是数据仓库的数据抽取
数据刷新
- 经过抽取进入数据仓库的数据,在经过一段时间后要重新修正,修改那些过时的数据,保存那些不变的数据,此种动作被称为数据仓库的刷新
- 数据刷新的过程与抽取类似,但刷新的数据量往往小于抽取的数据量。由于仅需要对修改过的数据进行刷新,因而其实现难度与复杂性要大于数据抽取
一般数据刷新的方法包括
-
时间戳
- 适用情况:若数据库中的记录有时间属性,则可根据OLTP数据库中的数据有无更新,以及在执行更新操作时数据的修改时间标志来实现数据仓库中数据的动态刷新
- 缺点:大多数数据库系统中的数据并不含有时间属性
-
DELTA文件
- 适用情况:有些OLTP数据库的应用程序在工作过程中会形成一些DELTA文件以记录