数据仓库的设计与开发

标签: 数据仓库 设计 开发 | 发表时间:2013-12-23 14:48 | 作者:handawei
出处:http://www.iteye.com

 

     数据仓库系统的设计与开发

 

建立数据仓库的步骤

 

1)       收集和分析业务需求

 

  用户需求,管理人员需求。

 

2)       建立数据模型和数据仓库的物理设计

 

  概念模型,逻辑模型,物理模型

 

3)       定义数据源

 

数据源面向应用,不是面向主题,而且数据源之间存在多个不一致的情况,所以必须在已有的系统中定义记录系统(内容正确,在多个数据源间起决定作用的操作型数据源)

 

4)       选择数据仓库技术和平台

 

5)       从操作型数据库中抽取,清洗及转换数据到数据仓库。

 

6)       选择访问和报表工具,选择数据库连接软件,选择数据分析和数据展示软件。

 

7)       更新数据仓库。

 

数据仓库的生命周期

 

 

数据仓库建立思维模式

 

1)       自顶向下

 

把oltp数据通过etl汇集到数据仓库中,然后在复制到数据集市中

 

2)       自底向上

 

把oltp数据构建到数据集市中,然后通过复制的方式提升到数据仓库中。这种模式构建数据集市的工作相对简单,易成功。这种模式也是实现快速数据传送的原型。

 

数据仓库的设计步骤

 

 

分析组织的业务状况及数据源结构

 

公司的概况,公司主营业务,主要产品,多少工人。

 

分析几个主业务,主题业务流程:原材料采购、生产和销售环节等主要流程。

 

对数据源结构的分析与理解:表设计为几个模块、主要业务表、静态表。分为:个人客户关系,产品数据,原材料数据。

 

组织需求调研,收集分析需求

 

采用数据加用户需求的方式。

 

1)  从上层行政官员可以得到许多惊奇的有关业务操作及其希望从该组织得到的内容。以及数据仓库项目或有关业务的行政职员。有些共性的问题:

 

成绩怎样得来,怎样确定成败。

 

分析过程的时间

 

信息分发的形式

 

怎样弥补信息的空缺

 

分析数据需要哪一级的详细程度

 

业务目标

 

当前信息源和日常报表需求

 

主题域

 

2)  用户需求调研的分析

 

度量指标

 

维度

 

信息包图法设计数据仓库的概念模型

 

五个组成部分:名称,度量,维度,层次,类别。

 

确定主题和元数据。

 

建模:超立方体及信息包图发。

 

超立方体步骤:

 

1)  要抓住的业务过程

 

2)  要捕获的度量值

 

3)  确定数据的粒度

 

无直观,且不能超出三维。

 

信息宝图法:用二维表反映多维特性,并提供了可视化表示。

 

三重要对象:度量(指标),维度,类别。

 

eg:

 

1)  获取各个业务部门对业务员数据的多维特性的分析结果,各个部门对销售额主题,它的维度包含:时间,区域,产品和客户。

 

2)  对每个维度进行分析,确定维度与类别之间的传递和映射关系,如:时间维有年,季,月和日等级别。而区域分为国家,省州,城市

 

3)  确定用户需要的度量指标体系,这里以销售情况作为事实依据确定的销售的相关指标包括实际销售额,计划销售额和计划完成率。

 

有了以上的分析,就可以画出销售分析的信息包图,以销售分析为主题,归纳事实和指标,归纳维度和层次,确定数据的粒度和类别。

 

 

 

维度—>

信息包图法:销售分析

类别

|

V

时间维

区域维

产品维

客户维

广告维

年度(5)

国家(10)

产品类别(500)

年龄分组(7)

广告费分组(5)

季度(20)

省州(100)

产品名称(9000)

收入分组(8)

 

月(60)

城市(500)

 

信用组(2)

 

日(1800)

销售点(8000)

 

 

 

            度量指标:实际销售额,计划销售额,计划完成率

 

 

 

设计概念模型:

 

信息包图法确定了数据仓库的主题和大部分元数据。

 

主题:就是在较高的层次上将业务数据进行综合,归类和分析利用的一个抽象概念。每个主题对应一个分析领域,如前面的销售分析就是一个分析领域,也称为一个应用的主题。

 

主题是根据分析需求确定的。如在一个生产企业中,对于材料的供应,在OLTP中我们关心的是怎样更方便和更快捷地进行材料供应的业务处理。而在分析处理时,我们更关心材料的不同采购渠道和材料供应是否及时,材料质量状况等。

 

主题域:主题的边界:如前面:供应商,商品,客户和仓库等主图。

 

 

 

利用星型图法设计数据仓库的逻辑模型

 

五个逻辑实体:详细信息逻辑实体,度量逻辑实体,维度逻辑实体,层次逻辑实体,类别逻辑实体。

 

其中度量指标实体,维度逻辑实体,类别逻辑实体分别对应信息包图中的三个主要部分。

 

创建星形图

 

 

对应建立的实例为:

 

 

确定主题的属性组

 

例:

 

主题名

公共建

属性组

商品

商品号

基本信息:商品号、商品名、类型和颜色等

采购信息:商品号、应商号、供应价、供应日期、供应量

库存信息:商品号、库房号、库存量、日期

销售

销售单号

基本信息:销售单号、销售地址等

销售信息:酷虎好、商品号、销售价、销售量、销售时间

客户

客户号

基本信息:客户号、客户名、性别、年龄、文化程度、住址、电话

经济信息:客户号、年收入、和家庭总收入

 

事实表及其特征

 

度量是客户发生事件或动作的事实记录,相当于业务表

 

特征:记录数据很多,因此事实表应当尽量减少一条记录的长度,避免事实表过大。

 

      事实表中除了度量变量外,其它字段都是维表或者是中间表的关键字(外键)

 

      事实表的维度很多,则事实表的字段数也会很多。

 

逻辑模型示例:

 

 

 

对应地理位置逻辑模型

 

 

对应销售员维逻辑模型

数据仓库的物理模型设计

 

五类表:事实表,详细信息表,维表,层次表,类别表。

 

需要考虑的因素有I/O存取时间,空间利用率,维护成本。

 

主要工作:

 

1)  定义数据标准,规范化数据仓库中的数据。

 

2)  选择数据库架构(关系数据库的星形模式、多维数据库的CUBE)及具体的数据库管理系统和版本。

 

3)  根据具体使用的数据库管理系统,将实体和实体特征物理化,具体包括如下内容:

 

  字段设计

 

  物理记录设计

 

  反响规范化

 

  分区

 

4)  数据容量和使用频率分析,以定义规模,确定数据容量、响应时间要求和更新频率等

 

5)  物理文件的设计。指针、文件组织、和簇文件

 

6)  索引的使用与选择

 

7)  RAID

 

物理存储结构设计原则

 

1)       不要把经常连接的几张表放在同一个存储设备上,这样可以利用存储设备的并行操作功能加快数据的查询速度。

 

2)       建议把整个组织共享的细节数据放在一个集中式服务器上,以提高这些共享数据的访问性。

 

3)       建议把数据库表和索引分放在不同的物理存储设备上,一般可以把索引放在高速的存储设备上,而将表存放在一般存储设备上,以加快数据的查询速度。

 

4)       建议在系统中使用廉价的沉余磁盘阵列。

 

数据仓库索引设计特殊性

 

按照索引使用的频率由高到低添加,知道某一索引加入后,使数据加载或重组表的时间过长时,就结束索引的添加。

 

存储优化与存储策略

 

1)  表的归并与簇文件

 

2)  反向规范,引入沉余

 

3)  表的物理分割

 

 

 





已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [数据仓库 设计 开发] 推荐:

数据仓库的设计与开发

- - 数据库 - ITeye博客
     数据仓库系统的设计与开发. 1)       收集和分析业务需求.   用户需求,管理人员需求. 2)       建立数据模型和数据仓库的物理设计.   概念模型,逻辑模型,物理模型. 3)       定义数据源. 数据源面向应用,不是面向主题,而且数据源之间存在多个不一致的情况,所以必须在已有的系统中定义记录系统(内容正确,在多个数据源间起决定作用的操作型数据源).

oracle数据仓库设计指南

- - 数据库 - ITeye博客
ODS(Operational Data Store)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据.     一般在带有ODS的系统体系结构中,ODS都设计为如下几个作用:. 1 )    在业务系统和数据仓库之间形成一个隔离层.

数据仓库的架构与设计

- - CSDN博客推荐文章
公司之前的数据都是直接传到Hdfs上进行操作,没有一个数据仓库,趁着最近空出几台服务器,搭了个简陋的数据仓库,这里记录一下数据仓库的一些知识. 数据仓库多维数据模型的设计. 数据仓库是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,用于对管理决策过程的支持. 这个定义的确官方,但是却指出了数据仓库的四个特点.

【漫谈数据仓库】 如何优雅地设计数据分层

- -
本文主要讲解数据仓库的一个重要环节:如何设计数据分层. 其它关于数据仓库的内容可参考之前的文章. 本文对数据分层的讨论适合下面一些场景,超过该范围场景or数据仓库经验丰富的大神就不必浪费时间看了. 数据建设刚起步,大部分的数据经过粗暴的数据接入后就直接对接业务. 数据建设发展到一定阶段,发现数据的使用杂乱无章,各种业务都是从原始数据直接计算而得.

数据仓库

- Ran - Linux@SOHU
翻译:马少兵、曾怀东、朱翊然、林业. 尽管服务器存储、处理能力得到有效的提高,以及服务器价格的降低,让人们能够负担起大量的服务器,但是商业软件应用和监控工具快速的增加,还是使得人们被大量的数据所困扰. 在数据仓库领域中的许多系统管理员、应用开发者,以及初级数据库管理员发现,他们正在处理“海量数据”-不管你准备与否-都会有好多不熟悉的术语,概念或工具.

漫谈数据仓库之拉链表(原理、设计以及在Hive中的实现)

- - IT瘾-bigdata
本文将会谈一谈在数据仓库中拉链表相关的内容,包括它的原理、设计、以及在我们大数据场景下的实现方式. 先分享一下拉链表的用途、什么是拉链表. 通过一些小的使用场景来对拉链表做近一步的阐释,以及拉链表和常用的切片表的区别. 举一个具体的应用场景,来设计并实现一份拉链表,最后并通过一些例子说明如何使用我们设计的这张表(因为现在Hive的大规模使用, 我们会以Hive场景下的设计为例).

数据仓库概念

- - 互联网 - ITeye博客
数据仓库:是一个数据库环境,它提供用户用于决策支持的当前和历史数据,这些数据在传统的数据库中不方便得到. 特点:面向主题,集成的,相对稳定的,反应历史变化的. 组成:数据仓库的数据库,数据抽取工具,元数据,访问工具,数据集市,数据仓库管理,信息发布系统. 数据挖掘:就是从大量数据中获取有效的,新颖的,潜在有用的,最终可理解的模式的过程.

大数据仓库-kudu

- - 数据库 - ITeye博客
数据仓库里面存储引擎是非常重要的,存储引擎的好坏,基本决定了整个数仓的基础. cloudera公司最近发布了一个kudu存储引擎. 按照cloudera的想法,kudu的出现是为了解决,hbase,parquet不能兼顾分析和更新的需求,所以需要一个新的存储引擎可以同时支持高吞吐的分析应用以及少量更新的应用.

[原]数据仓库元数据管理

- - oycn2010的专栏
元数据管理, 简单的做就是EXCEL结合版本管理等传统工具管理, 专业点就用专门的元数据管理工具;. 数据字典--> 数据知识库. 业务元数据,技术元数据,管理元数据. 参照:SAP元数据管理平台:按业务(角色)分类,按技术类型分类(特征,关键值,DSO,InfoCube),数据流程图. 按照传统的定义,元数据(Metadata)是关于数据的数据.

[原]数据仓库构建步骤

- - oycn2010的专栏
 即确定数据分析或前端展现的主题(例:某年某月某地区的啤酒销售情况). 主题要体现出某一方面的各分析角度(维度)和统计数值型数据(量度)之间的关系,确定主题时要综合考虑..  确定主题后,需要考虑分析的技术指标(例:年销售额等等). 它们一般为数据值型数据,其中有些度量值不可以汇总;些可以汇总起来,以便为分析者提供有用的信息.