数据仓库建设

  商务智能(Business Intelligence)用于支持制定业务决策的技能、流程、技术、应用和实践。核心是通过数据提取、整理、分析,最终通过分析结果制定有关策略、规划,帮助企业了解新的趋势、抓住新的市场机会、发现潜在的威胁,达到资源的合理配置,节约成本提高效益。数据仓库是商业智能的基础,它为OLAP、数据挖掘提供分析和决策支持。

一、      数据仓库概念

1.      数据仓库定义

是一个面向主题的、集成的、相对稳定的、反映有有历史变化的数据集合,用于支持管理决策。具有以下特点:

  1. l  详细交易及相关业务数据的集合
  2. l  包含必要的内部与外部信息
  3. l  来自于多个数据源、业务操作系统
  4. l  保存一定的时间周期
  5. l  按照企业内业务规则决定存储模型

2.      建设的必要性

  目前大多数信息系统由于建设时间、建设方、各阶段需求不同,会出现一系列问题:缺乏整体规则、信息缺乏完整性、缺乏统一的信息管理标准和规范、信息孤岛、不具备大容量的数据管理和分析能力。

3.      价值

  1. l  提高管理决策的科学性和管理效率
  2. l  信息的整合,可推动现在有信息管理体系的重构
  3. l  打通信息孤岛全局共享,降低数据获取的难度
  4. l  逐渐取代各类业务管理报表系统
  5. l  运用历史数据发现规律

二、      数据仓库建设

1.      业务需求定义

  梳理出所有业务过程,分析业务内容提取需求,对其相关的数据进行探查,并对各系统核心业务人员访谈,准确的了解业务需求情况,近期调研

2.      技术体系结构

生命周期图

 

数据仓库主题设计方案 数据仓库建设活动_数据仓库

 

技术架构图:

 

数据仓库主题设计方案 数据仓库建设活动_数据仓库_02

 

 

3.      数据仓库数据建模

  数据模型是抽象描述现实世界的一种方法,是通过抽象的实体及实体之间的联系来表示现实世界中事务的相互关系的一种映射,数据仓库模型是数据模型中针对特定的数据仓库应用系统的特定模型。数据仓库建模方法种类较多,常见的三种是范式建模、维度建模、实体建模,每种方法本质上都是从不同的角度解决业务中的问题。

  关于数据仓库建模单独用一篇来详细介绍,这儿仅对维度建模做基本的介绍,维度建模由数据仓库领域另一位大师Ralph Kimall所倡导,是数据仓库工程领域最流行的数仓建模经典。维度建模以分析决策的需求出发构建模型,构建的数据模型为分析需求服务,因此它重点解决用户如何更快速完成分析需求,同时还有较好的大规模复杂查询的响应性能。

1.       维度模型是什么

  维度建模将客观世界划分为度量和上下文。度量是由业务过程和支持它们的业务源系统来捕捉的,常常以数据值形式出现,将其称作“事实”,事实由大量上下文包围着,这些文本形式的上下文被直观地分割成多个独立的逻辑块,我们称其为“维”。维度描述了度量上下文的5W(who、what、when、where、why)信息,以及这些上下文是如何作用的。

  企业的每一个业务过程都可以用维度模型来描述,维度模型由一系列含有数值量度量的事实表组成,事实表中的数值则被一系列带有文本属性的维度表环绕。

2.      维度建模的基本要素

1)      事实表

事实表是存储业务活动或事件所产生的度量。

2)      维度表

维度是观察业务的角度,维度表记录这一角度的一系列属性集合。

3)      度量

度量是关于业务状况的数值。

3.      企业数据仓库总线

   列表示所有维度,行表示所有业务过程,如图:

数据仓库主题设计方案 数据仓库建设活动_数据仓库主题设计方案_03

 

4.      维度建模四步骤

1)      选择业务过程(比如:促销活动、评选活动、产品交易等)

2)      声明粒度(确定数据单位的综合程度)

3)      识别维度(粒度已经确定了一个基本的维度集合,根据需要再添加其他相关的维度)

4)      识别事实(选择适合业务过程的指标)

5.      深入理解维度

  1. l  代理关键字、退货维、缓慢变化维、角色扮演维、杂项维、、雪花型、桥接多值维、处理层次结构。
  2. l  可加型事实、半加型事实、状态事实
  3. l  三种事实表(三个基本粒度):事实事实表(低粒度)、周期快照事实表(粒度高)、周期累计事实表

三、      数仓管理

4.      数据质量

 

5.      数据转换加载(ETL过程)

数据抽取考虑使用Ketlle6.1源码来做,部署在MyEclipse中做一些外围的开发,核心数据处理工作由Kettle完成,对于特殊的需求,可以自定义开发。

6.      元数据管理

参见《元数据管理解决方案》

7.      安全及备份

利用数据仓库自带的备份功能。

四、      系统开发

物理数据库建设、ETL工具开发、数据抽取清洗作业开发、查询优化、出报表等[l1] 。

五、      应用开发

需求调研后补充。

六、      迭代优化

螺旋式上升,永无止境……