数据仓库的数据模型

数据仓库的数据模型
数据仓库的数据模型

业务驱动

任何需求均来源于业务,业务决定了需求,需求分析的正确与否是关系到项目成败的关键所在,从任何角度都可以说项目是由业务驱动的所以数据仓库项目也是由业务所驱动的.

但是数据仓库不同于日常的信息系统开发,除了遵循其他系统开发的需求,分析,设计,测试等通常的软件声明周期之外;他还涉及到企业信息数据的集成,大容量数据的阶段处理和分层存储,数据仓库的模式选择等等,因此数据仓库的物理模型异常重要,这也是关系到数据仓库项目成败的关键.

数据仓库的结构总的来说是采用了三级数据模型的方式:

概念模型: 也就是业务模型,由企业决策者,商务领域知识专家和IT专家共同企业级地跨领域业务系统需求分析的结果.

逻辑模型:用来构建数据仓库的数据库逻辑模型。根据分析系统的实际需求决策构建数据库逻辑关系模型,定义数据库物体结构及其关系。他关联着数据仓库的逻辑模型和物理模型这两头.

物理模型:构建数据仓库的物理分布模型,主要包含数据仓库的软硬件配置,资源情况以及数据仓库模式。

如上图所示,在数据仓库项目中,物理模型设计和业务模型设计象两个轮子一样有力的支撑着数据仓库的实施,两者并行不悖,缺一不可.实际上,我有意的扩大了物理模型和业务模型的内涵和外延.在这里物理模型不仅仅是数据的存储,而且也包含了数据仓库项目实施的方法论,资源,以及软硬件选型等等;而业务模型不仅仅是主题模型的确立,也包含了企业的发展战略,行业模本等等.

一个优秀的项目必定会兼顾业务需求和行业的标准两个方面,业务需求即包括用户提出的实际需求,也要客观分析它隐含的更深层次的需求,但是往往用户的需求是不明确的,需要加以提炼甚至在商务知识专家引导下加以引导升华,和用户一起进行需求分析工作;不能满足用户的需求,项目也就失去原本的意义了.

物理模型就像大厦的基础架构,就是通用的业界标准,无论是一座摩天大厦也好,还是茅草房也好,在架构师的眼里,他只是一所建筑,地基->层层建筑->封顶,这样的工序一样也不能少,关系到住户的安全,房屋的建筑质量也必须得以保证,唯一的区别是建筑的材料,地基是采用钢筋水泥还是石头,墙壁采用木质还是钢筋水泥或是砖头;当然材料和建筑细节还是会有区别的,视用户给出的成本而定;还有不可忽视的一点是,数据仓库的数据从几百GB到几十TB不等,即使支撑这些数据的RDBMS无论有多么强大,仍不可避免的要考虑到数据库的物理设计.

接下来,将详细阐述数据仓库概念模型(业务模型),逻辑模型,物理模型的意义.

概念模型设计

进行概念模型设计所要完成的工作是:

界定系统边界

确定主要的主题域及其内容

确定主题域的关系

概念模型设计是,在原有的业务数据库的基础上建立了一个较为稳固的概念模型。因为数据仓库是对原有数据库系统中的数据进行集成和重组而形成的数据集合,所以数据仓库的概念模型设计,首先要对原有数据库系统加以分析理解,看在原有的数据库系统中“有什么”、“怎样组织的”和“如何分布的”等,然后再来考虑应当如何建立数据仓库系统的概念模型。一方面,通过原有的数据库的设计文档以及在数据字典中的数据库关系模式,可以对企业现有的数据库中的内容有一个完整而清晰的认识;另一方面,数据仓库的概念模型是面向企业全局建立的,它为集成来自各个面向应用的数据库的数据提供了统一的概念视图。

概念模型的设计是在较高的抽象层次上的设计,因此建立概念模型时不用考虑具体技术条件的限制。

1.界定系统的边界

数据仓库是面向决策分析的数据库,我们无法在数据仓库设计的最初就得到详细而明确的需求,但是一些基本的方向性的需求还是摆在了设计人员的面前:

. 要做的决策类型有哪些?

. 决策者感兴趣的是什么问题?

. 这些问题的需要什么样的信息?

. 要得到这些信息需要包含原有数据库系统的哪些部分的数据?

这样,我们可以划定一个当前的大致的系统边界,集中精力进行最需要的部分的开发。因而,从某种意义上讲,界定系统边界的工作也可以看作是数据仓库系统设计的需求分析,因为它将决策者的数据分析的需求用系统边界的定义形式反映出来。

2,确定主要的主题域

在这一步中,要确定所包含的主题域,然后对每个主题域的内容进行较明确数据仓库建模技术在XX行业中的应用的描述,描述的内容包括:

. 主题域的公共码键;

. 主题域之间的联系:

. 充分代表主题的属性组。

概念模型的构建通常是企业的shakeholder,商务领域知识专家和IT专家共同企业级地跨领域业务系统需求分析的结果.

通常企业决策者有自己的发展战略和规划, 他们会定期阅读由各部门经理上报的分析报告,他们也知道大致了解自己企业信息系统的功能, 但是未必清楚自己的每一个业务系统的每一个功能和每一部分数据,毕竟决策者不是信息专家,他们更关心的企业的经营业绩,资产负债,盈亏受益等等核心指标.

各个部门经理往往很了解自己部门的信息系统,在信息系统规划时优先考虑的是自己的利益,因此每个部门往往都在独立的构建自己的信息系统,无法或者不可能从企业总体角度和其他业务系统接轨,如ERP系统,MIS系统,CRM系统等等,这就造成了企业在发展企业信息系统时的不平衡,导致了所谓的孤岛效应,他们会阅读下属提供的分析报告,然后进行归纳整理,形成部门报表进行上报,但是最终结果却是每个部门都在上报自己的经营业绩,却始终缺乏一个一致的统一的数字.

普通用户更关注的是某一类与工作相关的报表,包括报表的数据准确性,报表的样式,图标格式这类的细节.

而IT部门负责企业IT系统的预算,采购,但是因为职能部门不同,无法深入了解各个信息系统的业务.

有这么一句话:如果你想实施某个企业信息系统,你必须能够具备担当这个企业副总的能力.这就要求项目负责人能够站在企业的战略高度考虑,同时具备很高的协调能力和管理能力;所以必须引入商务领域知识专家和IT专家的角色(就是通常所说的咨询顾问),这些人往往具备比较资深的行业背景,具备丰富的独立实施该行业信息系统建设的经验,了解该行业最先进和通用的标准和规范,同时在结合现有企业信息系统的基础上,以及融合企业发展战略的基础上,提出当前企业的业务模型,来帮助企业提高决策支持分析能力,但是这样的模型不能太超前,太超前则意味脱离了实际,不具备实际可操作性;当然更不能停留在于企业目前的信息建设水平上,否则就失去了意义.

逻辑模型设计

逻辑建模是数据仓库实施中的重要一环,因为它能直接反映出业务部门的需求,同时对系统的物理实施有着重要的指导作用。通过实体和关系勾勒出真个企业的数据蓝图。

在这一步里进行的工作主要有:

分析丰富主题域,确定当前要装载的主题;

确定粒度层次划分;

确定数据分割策略;

关系模式定义;

记录系统定义

逻辑模型设计的成果是,对每个当前要装载的主题的逻辑实现进行定义,并将相关内容记录在数据仓库的元数据中,包括:

适当的粒度划分;

合理的数据分割策略;

适当的表划分;

定义合适的数据来源等。

1.分析主题域

在概念模型设计中,我们确定了几个基本的主题域,但是,数据仓库的设计方法是一个逐步求精的过程,在进行设计时,一般是一次一个主题或一次若干个主题地逐步完成的。所以,我们必须对概念模型设计步骤中确定的几个基本主题域进行分析,一并选择首先要实施的主题域。选择第一个主题域所要考虑的是它要足够大,以便使得该主题域能建设成为一个可应用的系统;它还要足够小,以便于开发和较快地实施。如果所选择的主题域很大并且很复杂,我们甚至可以针对它的一个有意义的子集来进行开发。在每一次的反馈过程中,都要进行主题域的分析。具体的实施细节需要和AAA业务部门和信息中心沟通。

2.粒度层次划分

数据仓库逻辑设计中要解决的一个重要问题是决定数据仓库的粒度划分层次,粒度层次划分适当与否直接影响到数据仓库中的数据量和所适合的查询类型。由于主题数据库响应企业级业务OLTP需求,所以必须保存最细类度数据,同时根据业务部门的查询需求考虑确定多重粒度来提高复杂查询速度。

3.确定数据分割策略

在这一步里,要选择适当的数据分割的标准,一般要考虑以下几方面因素:数据量〔而非记录行数)、数据分析处理的实际情况、简单易行以及粒度划分策略等。数据量的大小是

决定是否进行数据分割和如何分割的主要因素;数据分析处理的要求是选择数据分割标准的一个主要依据,因为数据分割是跟数据分析处理的对象紧密联系的;我们还要考虑到所选择的数据分割标准应是自然的、易于实施的:同时也要考虑数据分割的标准与粒度划分层次是适应的。

4.关系模式定义

数据仓库的每个主题都是由多个表来实现的,这些表之间依靠主题的公共码键联系在一起,形成一个完整的主题。在概念模型设计时,我们就确定了数据仓库的基本主题,并对每个主题的公共码键、基本内容等做了描述在这一步里,我们将要对选定的当前实施的主题进行模式划分,形成多个表,并确定各个表的关系模式。

物理模型设计

这一步所做的工作是根据信息系统的容量,复杂度,项目资源以及数据仓库项目自身的软件生命周期确定数据仓库系统的软硬件配置,数据仓库分层设计模式,数据的存储结构,确定索引策略,确定数据存放位置,确定存储分配等等。这部分应该是由项目经理和数据仓库架构师共同实施的.

确定数据仓库实现的物理模型,要求设计人员必须做到以下几方面:

1. 确定项目资源

根据预算和业务需求,并参考以往的数据仓库项目经验,对该项目的成本周期和资源进行估算.

关于项目周期的估算,主要基于ETL函数功能点以及加权后的复杂度进行估算,因为ETL 过程占据了整个数据仓库项目的70%,;ETL过程主要是基于源<=>目的的原则进行处理的,而不同的功能点具有不同的复杂度,通过以往项目经验和专家评估,然后再根据软件生命周期的划分,可以有效的得知项目的整体周期.

关于人员的估算,主要取决于人员的工作经验,素养,对新技术的掌握能力,还要考虑到人员流动等方面的人员备份.

协作,每一个IT企业都应该具备一个丰富的技能和人力资源库,当项目资源遇到瓶颈的时候,就可以考虑需求协作.

2. 确定软硬件配置

数据仓库项目与其他业务系统不同,尤其需要对数据容量进行估算,这是因为数据仓库是历史的稳定的基于主题的集成的等等特性所决定的,他是对以往历史数据的集成,如果项目初期不加以考虑,很快就会造成灾难性的后果.

数据仓库的容量估算应该是可预见的,首先确定核心明细数据的存储年限,相关表的平均字段长度值*每年的记录数*(每年预计的增长),然后再加上20%的冗余,以及磁盘预留的20%的冗余,我们不难得到数据仓库的预计容量.

数据仓库的处理能力和容量息息相关,也和具体的关系数据库的性能息息相关,如何在Oracle,SQLServer,DB,Sybase甚至MySQL 之间寻找平衡,既要考虑实际的预算,也要视实际的需求而定.

关于硬件的配置,既需要发挥软件的功能,满足实际的处理要求,也要为将来的系统扩展保留一定的空间.

3. 数据仓库存储设计

数据仓库一般采用分层设计,即ODS层,数据仓库层,数据仓库聚合层数据集市等等;数

据仓库的分层是灵活的,没有固定的模式,一切视实际情况而定.

ODS层存放从原系统采集来的原始交易数据,只保存一定期限内的数据,同时ODS支持部分近实时性报表的展示.

数据仓库层保存经过清洗,转换和重新组织的历史业务数据,数据将保留较长时间(5~10年不等),满足系统最细粒度的查询需要.

数据仓库聚合层面向KPI指标计算和分析,支持汇总层面交易级的指标查询,提高汇总级的KPI数据展示速度和数据保存时间。保存较长的历史数据.

数据集市是基于部门或者某一类特定分析主题需要,从企业级数据仓库单独获取的一个数据的逻辑或者物理的子集.

4. 数据仓库模式

数据抽取策略

制定系统的主题数据库ETL抽取方案来满足主题数据库的业务处理,数据仓库系统分析及决策支持分析的需要,同时必须保证不能影响业务系统的性能

数据转换策略

数据转换是指对从业务系统中抽取的源数据根据主题数据库系统模型的要求,进行数据的转换、清洗、拆分等处理,保证来自不同系统、不同格式的数据的一致性和完整性,并按要求装入主题数据库

数据加载策略

从业务系统中抽取、转换后的数据加载到主题数据库系统中。

数据质量的检查

星型模型

数据通常采用星型模型存储。星型模型由维表与事实表构成,一般并非业务系统中的规范化的范式结构。在核心层中,针对即定的主题,通常会建立若干星型模型。

数据仓库模型的设计

2.5数据仓库模型的设计 数据仓库模型的设计大体上可以分为以下三个层面的设计151: .概念模型设计; .逻辑模型设计; .物理模型设计; 下面就从这三个层面分别介绍数据仓库模型的设计。 2.5.1概念模型设计 进行概念模型设计所要完成的工作是: <1>界定系统边界 <2>确定主要的主题域及其内容 概念模型设计的成果是,在原有的数据库的基础上建立了一个较为稳固的概念模型。因为数据仓库是对原有数据库系统中的数据进行集成和重组而形成的数据集合,所以数据仓库的概念模型设计,首先要对原有数据库系统加以分析理解,看在原有的数据库系统中“有什么”、“怎样组织的”和“如何分布的”等,然后再来考虑应当如何建立数据仓库系统的概念模型。一方面,通过原有的数据库的设计文档以及在数据字典中的数据库关系模式,可以对企业现有的数据库中的内容有一个完整而清晰的认识;另一方面,数据仓库的概念模型是面向企业全局建立的,它为集成来自各个面向应用的数据库的数据提供了统一的概念视图。 概念模型的设计是在较高的抽象层次上的设计,因此建立概念模型时不用考虑具体技术条件的限制。 1.界定系统的边界 数据仓库是面向决策分析的数据库,我们无法在数据仓库设计的最初就得到详细而明确的需求,但是一些基本的方向性的需求还是摆在了设计人员的面前: . 要做的决策类型有哪些? . 决策者感兴趣的是什么问题? . 这些问题需要什么样的信息? . 要得到这些信息需要包含原有数据库系统的哪些部分的数据? 这样,我们可以划定一个当前的大致的系统边界,集中精力进行最需要的部分的开发。因而,从某种意义上讲,界定系统边界的工作也可以看作是数据仓库系统设计的需求分析,因为它将决策者的数据分析的需求用系统边界的定义形式反映出来。 2,确定主要的主题域 在这一步中,要确定系统所包含的主题域,然后对每个主题域的内

数据仓库物理模型设计

数据仓库物理模型设计 数据仓库的物理模型就是数据仓库逻辑模型在物理系统中的实现模式。其中包括了逻辑模型中各种实体表的具体化,例如表的数据结构类型、索引策略、数据存放位置和数据存储分配等。在进行物理模型的设计实现时,所考虑的因素有:I/O存取时间、空间利用率及维护的代价。 为确定数据仓库的物理模型,设计人员必须做这样几方面工作:首先要全面了解所选用的数据库管理系统,特别是存储结构和存取方法;其次了解数据环境、数据的使用频率、使用方式、数据规模及响应时间要求等,这些都是对时间和空间效率进行平衡和优化的重要依据;最后还需要了解外部存储设备的特征。只有这样才能在数据的存储需求与外部存储设备条件两者之间获得平衡。 1 设计存储结构 在物理设计时,常常要按数据的重要性、使用频率及对反应时间的要求进行分类,并将不同类型的数据分别存储在不同的存储设备中。重要性高、经常存取并对反应时间要求高的数据存放在高速存储设备上;存取频率低或对存取响应时间要求低的数据则可以存放在低速存储设备上。另外,在设计时还要考虑数据在特定存储介质上的布局。在设计数据的布局时要注意遵循以下原则。 l 不要把经常需要连接的几张表放在同一存储设备上,这样可以利用存储设备的并行操作功能加快数据查询的速度。 l 如果几台服务器之间的连接会造成严重的网络业务量的问题,则要考虑服务器复制表格,因为不同服务器之间的数据连接会给网络带来沉重的数据传输负担。 l 考虑把整个企业共享的细节数据放在主机或其他集中式服务器上,提高这些共享数据的使用速度。 l 不要把表格和它们的索引放在同一设备上。一般可以将索引存放在高速存储设备上,而表格则存放在一般存储设备上,以加快数据的查询速度。 在对服务器进行处理时往往要进行大量的等待磁盘数据的工作,此时,可以在系统中使用RAID(Redundant Array of Inexpensive Disk,廉价冗余磁盘阵列)。 2 设计索引策略 数据仓库的数据量很大,因而需要对数据的存取路径进行仔细地设计和选择。由于数据仓库的数据一般很少更新,所以可以设计索引结构来提高数据存取效率。在数据仓库中,设计人员可以考虑对各个数据存储建立专用的索引和复杂的索引,以获取较高的存取效率,虽然建立它们需要付出一定的代价,但建立后一般不需要过多的维护。 数据仓库中的表通常要比联机事务处理系统(OLTP)中的表建立更多的索引,表中应用的最大索引数应与表格的规模成正比。数据仓库是个只读的环境,建立索引可以取得灵活性,对性能极为有利。但是表若有很多索引,那么数据加载时间就会延长,因此索引的建立需要进行综合的考虑。在建立索引时,可以按照索引使用的频率由高到低逐步添加,直到某一索引加入后,使数据加载或重组表的时间过长时,就结束索引的添加。 最初,一般都是按主关键字和大多数外部关键字建立索引,通常不要添加很多的其他索引。在表建立大量的索引后,对表进行分析等具体使用时,可能需要许多索引,这会导致表的维护时间也随之增加。如果从主关键字和外部关键字着手建立索引,并按照需要添加其他索引,就会避免首先建立大量的索引带来的后果。如果表格过大,而且需要另外增加索引,那么可以将表进行分割处理。如果一个表中所有用到的列都在索引文件中,就不必访问事实表,只要访问索引就可以达到访问数据的目的,以此来减少I/O操作。如果表太大,并且经常要对它进行长时间的扫描,那么就要考虑添加一张概括表以减少数据的扫描任务。 3 设计存储策略

数据仓库

哈尔滨工业大学华德应用技术学院实验报告 课程名称:数据仓库与数据挖掘 系别:计算机应用技术系 专业:软件工程 学号:1099111130 姓名:陈天任 学期:2012春季学期 实验成绩:

实验项目列表 序号实验名称成绩1SQL Server Integration Services 2SQL Server Analysis Services 3SQL Server Reporting Services 4 5 6 7 8 9 10 11 12 指导教师签字:

实验名称:实验一SQL Server Integration Services 实验时间:2012.4.17实验地点:S201 实验目的:熟悉数据仓库的ETL操作,熟悉SQL Server2005中SSIS的使用;熟练掌握平面文件、excel文件和sql server三者之间的数据转换; 实验步骤:启动SSMS,在sql server2005中新建一个数据库命名为dw。在dw数据库上单击鼠标右键,在弹出的快捷菜单中,选择“任务→导入数据”,设置表名字T2、选择文件源类型excel、选择文件地址、选择导入的数据库dw、设置字段名、设置字段类型。所有的设置完成点击“完成”.打开数据库,查看表,刷新,导入完成。 在Microsoft SQL Server2005中启动SQL Server Business Intelligence Development Studio,在文件菜单中选择“新建→项目”,在弹出的新建项目对话框中选择,填好名称和位置后,点击确定。(1)在Microsoft SQL Server2005的dw数据库中,新建user表,结构如下一图:新建系别表,结构如下二图: (2)控制流中添加数据流任务,数据流中添加 ,,。 (3)设置平面文件源,源文件text1,设置OLE DB,第四列“系别编号”参照新建的系别表中的“编号”,将test1中的前三列及系别表中的系别列导入到dw数据库中的user表中,建立三者的关系,点击文件点启动,等三个控件都变成绿色代表导入成功。 3.将AdventureWorks数据Production.TransactionHistoryArchive表里

数据仓库的开发设计过程

数据仓库之路 FAQ FAQ目录 一、与数据仓库有关的几个概念 (3) 1.1 目录 (3) 二、数据仓库产生的原因 (8) 三、数据仓库体系结构图 (11) 四、数据仓库设计 (12) 4.1 数据仓库的建模 (12) 4.2 数据仓库建模的十条戒律: (13) 五、数据仓库开发过程 (14) 5.1 数据模型的内容 (14) 5.2 数据模型转变到数据仓库 (14)

5.3 数据仓库开发成功的关键 (15) 六、数据仓库的数据采集 (16) 6.1 后台处理 (17) 6.2 中间处理 (17) 6.3 前台处理 (18) 6.4 数据仓库的技术体系结构 (18) 6.5 数据的有效性检查 (20) 6.6 清除和转换数据 (20) 6.7 简单变换 (22) 6.8 清洁和刷洗 (24) 6.9 集成 (25) 6.10 聚集和概括 (27) 6.11 移动数据 (27) 七、如何建立数据仓库 (30) 7.1 数据仓库设计 (31) 7.2 数据抽取模块 (32) 7.3 数据维护模块 (33)

一、与数据仓库有关的几个概念 1.1 目录 ?Datawarehouse ?Datamart ?OLAP ?ROLAP ?MOLAP ?ClientOLAP ?DSS ?ETL ?Adhocquery ?EIS ?BPR ?BI ?Datamining ?CRM ?MetaData Data warehouse 本世纪80年代中期,“数据仓库之父”William H.Inmon先生在其《建立数据仓库》一书中定义了数据仓库的概念,随后又给出了更为精确的定义:数据仓

数据仓库的数据模型

业务驱动 任何需求均来源于业务,业务决定了需求,需求分析的正确与否是关系到项目成败的关键所在,从任何角度都可以说项目是由业务驱动的所以数据仓库项目也是由业务所驱动的. 但是数据仓库不同于日常的信息系统开发,除了遵循其他系统开发的需求,分析,设计,测试等通常的软件声明周期之外;他还涉及到企业信息数据的集成,大容量数据的阶段处理和分层存储,数据仓库的模式选择等等,因此数据仓库的物理模型异常重要,这也是关系到数据仓库项目成败的关键. 数据仓库的结构总的来说是采用了三级数据模型的方式: 概念模型: 也就是业务模型,由企业决策者,商务领域知识专家和IT专家共同企业级地跨领域业务系统需求分析的结果. 逻辑模型:用来构建数据仓库的数据库逻辑模型。根据分析系统的实际需求决策构建数据库逻辑关系模型,定义数据库物体结构及其关系。他关联着数据仓库的逻辑模型和物理模型这两头. 物理模型:构建数据仓库的物理分布模型,主要包含数据仓库的软硬件配置,资源情况以及数据仓库模式。 如上图所示,在数据仓库项目中,物理模型设计和业务模型设计象两个轮子一样有力的支撑着数据仓库的实施,两者并行不悖,缺一不可.实际上,我有意的扩大了物理模型和业务模型的内涵和外延.在这里物理模型不仅仅是数据的存储,而且也包含了数据仓库项目实施的方法论,资源,以及软硬件选型等等;而业务模型不仅仅是主题模型的确立,也包含了企业的发展战略,行业模本等等. 一个优秀的项目必定会兼顾业务需求和行业的标准两个方面,业务需求即包括用户提出的实际需求,也要客观分析它隐含的更深层次的需求,但是往往用户的需求是不明确的,需要加以提炼甚至在商务知识专家引导下加以引导升华,和用户一起进行需求分析工作;不能满足用户的需求,项目也就失去原本的意义了. 物理模型就像大厦的基础架构,就是通用的业界标准,无论是一座摩天大厦也好,还是茅草房也好,在架构师的眼里,他只是一所建筑,地基->层层建筑->封顶,这样的工序一样也不能少,关系到住户的安全,房屋的建筑质量也必须得以保证,唯一的区别是建筑的材料,地基是采用钢筋水泥还是石头,墙壁采用木质还是钢筋水泥或是砖头;当然材料和建筑细节还是会有区别的,视用户给出的成本而定;还有不可忽视的一点是,数据仓库的数据从几百GB到几十TB不等,即使支撑这些数据的RDBMS无论有多么强大,仍不可避免的要考虑到数据库的物理设计. 接下来,将详细阐述数据仓库概念模型(业务模型),逻辑模型,物理模型的意义. 概念模型设计 进行概念模型设计所要完成的工作是: 界定系统边界 确定主要的主题域及其内容

数据仓库概念的简单理解

数据仓库概念的简单理解 一个典型的企业数据仓库系统通常包含数据源、数据存储与管理、OLAP服务器以及前端工具与应用四个部分。如下图所示: 数据源: 是数据仓库系统的基础,是整个系统的数据源泉。通常包括企业内部信息和外部信息。内部信息包括存放于企业操作型数据库中(通常存放在RDBMS中)的各种业务数据和办公自动化(OA)系统包含的各类文档数据。外部信息包括各类法律法规、市场信息、竞争对手的信息以及各类外部统计数据及各类文档等;数据的存储与管理: 是整个数据仓库系统的核心。在现有各业务系统的基础上,对数据进行抽取、清理,并有效集成,按照主题进行重新组织,最终确定数据仓库的物理存储结构,同时组织存储数据仓库元数据(具体包括数据仓库的数据字典、记录系统定义、数据转换规则、数据加载频率以及业务规则等信息)。按照数据的覆盖范围,数据仓库存储可以分为企业级数据仓库和部门级数据仓库(通常称为“数据集市”,Data Mart)。数据仓库的管理包括数据的安全、归档、备份、维护、恢复等工作。这些功能与目前的DBMS基本一致。 OLAP服务器: 对分析需要的数据按照多维数据模型进行再次重组,以支持用户多角度、多层次的分析,发现数据趋势。其具体实现可以分为:ROLAP、MOLAP和HOLAP。ROLAP 基本数据和聚合数据均存放在RDBMS之中;MOLAP基本数据和聚合数据均存放于多维数据库中;而HOLAP是ROLAP与MOLAP的综合,基本数据存放于RDBMS之中,聚合数据存放于多维数据库中。 前端工具与应用: 前端工具主要包括各种数据分析工具、报表工具、查询工具、数据挖掘工具以及各种基于数据仓库或数据集市开发的应用。其中数据分析工具主要针对OLAP服务器,报表工具、数据挖掘工具既针对数据仓库,同时也针对OLAP服务器。? 集线器与车轮状结构的企业级数据仓库 ?

数据仓库建模

背景介绍 熟悉社保行业的读者可以知道,目前我们国家的社保主要分为养老,失业,工伤,生育,医疗保险和劳动力市场这6 大块主要业务领域。在这6 大业务领域中,目前的状况养老和事业的系统已经基本完善,已经有一部分数据开始联网检测。而,对于工伤,生育,医疗和劳动力市场这一块业务,有些地方发展的比较成熟,而有些地方还不够成熟。 1.业务建模阶段 基于以上的背景介绍,我们在业务建模阶段,就很容易来划分相应的业务。因此,在业务建模阶段,我们基本上确定我们本次数据仓库建设的目标,建设的方法,以及长远规划等。如下图: 图8. 业务建模阶段 在这里,我们将整个业务很清楚地划分成了几个大的业务主线,例如:养老,失业,工伤,生育,医疗,劳动力等着几个大的部分,然后我们可以根据这些大的模块,在每个业务主线内,考虑具体的业务主线内需要分析的业务主题。 因此,业务建模阶段其实是一次和业务人员梳理业务的过程,在这个过程中,不仅能帮助我们技术人员更好的理解业务,另一方面,也能够发现业务流程中的一些不合理的环节,加以改善和改进。 同时,业务建模阶段的另一个重要工作就是确定我们数据建模的范围,例如:在某些数据准备不够充分的业务模块内,我们可以考虑先不建设相应的数据模型。等到条件充分成熟的情况下,我们可以再来考虑数据建模的问题。 2.领域概念建模阶段领域概念建模阶段是数据仓库数据建模的一个重要阶段,由于我们在业务建模阶段已经完全理清相应的业务范围和流程,因此,我们在这个领域概念建模阶段的最主要的工作就是进行概念的抽象,整个领域概念建模的工作层次如下图所示:

图9. 领域概念建模阶段 从上图我们可以清楚地看到,领域概念建模就是运用了实体建模法,从纷繁的业务表象背后通过实体建模法,抽象出实体,事件,说明等抽象的实体,从而找出业务表象后抽象实体间的相互的关联性,保证了我们数据仓库数据按照数据模型所能达到的一致性和关联性。 从图上看,我们可以把整个抽象过程分为四个层次,分别为: ?抽象方法层,整个数据模型的核心方法,领域概念建模的实体的划分通过这种抽象方法来实现。 ?领域概念层,这是我们整个数据模型的核心部分,因为不同程度的抽象方法,决定了我们领域概念的不同。例如:在这里,我们可以使用“参与方”这个概念,同时,你也可以把他分成三个概念:“个人”,“公司”,和“经办机构”这三个概念。而我们在构建自己的模型的时候,可以参考业务的状况以及我们自己模型的需要,选择抽象程度高的概念或者是抽象程度低的概念。相对来说,抽象程度高的概念,理解起来较为复杂,需要专业的建模专家才能理解,而抽象程度低的概念,较适合于一般业务人员的理解,使用起来比较方便。笔者在这里建议读者可以选用抽象概念较低的实体,以方便业务人员和技术人员之间的交流和沟通。 ?具体业务层,主要是解决具体的业务问题,从这张图我们可以看出,具体的业务层,其实只是领域概念模型中实体之间的一些不同组合而已。因此,完整的数据仓库的数据模型应该能够相应灵活多变的前端业务的需求,而其本身的模型架构具有很强的灵活性。这也是数据仓库模型所具备的功能之一。 ?业务主线层,这个层次主要划分大的业务领域,一般在业务建模阶段即已经完成这方面的划分。 我们一般通过这种大的业务主线来划分整个业务模型大的框架。 通过领域概念建模,数据仓库的模型已经被抽象成一个个的实体,模型的框架已经搭建完毕,下面的工作就是给这些框架注入有效的肌体。

数据仓库设计文档模板

数据仓库设计与实现 学号 128302106 姓名江晨婷 成绩 教师张丹平 二O一五年四月

数据仓库建设方案设计与实现 摘要:本文以博士学位调查为基础,创建方案,设计与实现数据仓库,通过对当前各种主流数据仓库软件在性能、价格等方面的对比,充分考虑统计业务、单位数量等实际情况,本系统决定采用SQL Server 2005数据仓库软件来构建综合信息分析系统的数据仓库。 关键词:数据仓库;联机分析;数据挖掘;博士学位 一、概述 数据仓库的设计一般从操作型数据开始,通常需要经过以下几个处理过程;数据仓库设计——数据抽取——数据管理。 1.数据仓库设计 根据决策主题设计数据仓库结构,一般采用星型和雪花模型设计其数据模型,在设计过程中应保证数据仓库的规范化和体系各元素的必要联系。 2.数据抽取 根据元数据库中的主题表定义、数据源定义、数据抽取规则定义对异地异构数据源进行清理、转换、对数据进行重新组织和加工,装载到数据仓库的目标库中。 3.数据管理 数据管理分为目标数据维护和元数据维护两方面。目标数据维护是根据元数据为所定义的更新频率、更新数据项等更新计划任务来刷新数据仓库,以反映数据源的变化,且对时间相关性进行处理。元数据是数据仓库的组成部分,元数据的质量决定整个数据仓库的质量。当数据源的运行环境、结构及目标数据的维护计划发生变化时,需要修改元数据。 二、博士学位授予信息年度数据统计分析 1.按主管部门统计 从主管部门的角度,分析在一个时间段(年)内,各主管部门所授予的博士学位信息统计。可回答如“2008,由某部门主管的,博士学位授予一共有多少,其平均学习年限是多少,脱产学习的有多少人?”等问题。具有表格和图形两种方式来展示分析结果。典型报表格式如表1所示

数据仓库建模与ETL实践技巧

一、数据仓库的架构 数据仓库(Data Warehouse DW)是为了便于多维分析和多角度展现而将数据按特定的模式进行存储所建立起来的关系型数据库,它的数据基于OLTP源系统。数据仓库中的数据是细节的、集成的、面向主题的,以OLAP系统的分析需求为目的。 数据仓库的架构模型包括了星型架构(图二:pic2.bmp)与雪花型架构(图三:pic3.bmp)两种模式。如图所示,星型架构的中间为事实表,四周为维度表,类似星星;而相比较而言,雪花型架构的中间为事实表,两边的维度表可以再有其关联子表,从而表达了清晰的维度层次关系。 从OLAP系统的分析需求和ETL的处理效率两方面来考虑:星型结构聚合快,分析效率高;而雪花型结构明确,便于与OLTP系统交互。因此,在实际项目中,我们将综合运用星型架构与雪花型架构来设计数据仓库。 那么,下面我们就来看一看,构建企业级数据仓库的流程。 二、构建企业级数据仓库五步法 (一)、确定主题 即确定数据分析或前端展现的主题。例如:我们希望分析某年某月某一地区的啤酒销售情况,这就是一个主题。主题要体现出某一方面的各分析角度(维度)和统计数值型数据(量度)之间的关系,确定主题时要综合考虑。 我们可以形象的将一个主题想象为一颗星星:统计数值型数据(量度)存在于星星中间的事实表;分析角度(维度)是星星的各个角;我们将通过维度的组合,来考察量度。那么,“某年某月某一地区的啤酒销售情况”这样一个主题,就要求我们通过时间和地区两个维度的组合,来考察销售情况这个量度。从而,不同的主题来源于数据仓库中的不同子集,我们可以称之为数据集市。数据集市体现了数据仓库某一方面的信息,多个数据集市构成了数据仓库。 (二)、确定量度 在确定了主题以后,我们将考虑要分析的技术指标,诸如年销售额之类。它们一般为数值型数据。我们或者将该数据汇总,或者将该数据取次数、独立次数或取最大最小值等,这样的数据称为量度。 量度是要统计的指标,必须事先选择恰当,基于不同的量度可以进行复杂关键性能指标(KPI)等的设计和计算。

数据仓库与数据挖掘课程设计报告书

目录 1. 绪论 (2) 1.1项目背景 (2) 1.2 提出问题 (2) 2 数据库仓库与数据集的概念介绍 (2) 2.1数据仓库 (2) 2.2数据集 (3) 3 数据仓库 (3) 3.1 数据仓库的设计 (3) 3.1.1数据仓库的概念模型设计 (3) 3.1.2数据仓库的逻辑模型设计 (3) 3.2 数据仓库的建立 (4) 3.2.1数据仓库数据集 (4) 3.2.2建立维表 (4) 4.数据挖掘操作 (5) 4.1数据预处理 (5) 4.1.1描述性数据汇总 (5) 4.2决策树 (5) 5、实验心得 (13) 6、大总结 (14)

1. 绪论 1.1项目背景 在现在大数据时代,各行各业需要对商品及相关关节的数据进行收集处理,尤其零售行业,于企业对产品的市场需求进行科学合理的分析,从而预测出将来的市场,制定出高效的决策,给企业带来经济收益。 1.2 提出问题 对于超市的商品的购买时期和购买数量的如何决定,才可以使销售量最大,不积压商品,不缺货,对不同时期季节和不同人群制定不同方案,使企业收益最大,通过数据挖掘对数据进行决策树分析,关联分析,顺序分析与决策分析等可以制定出最佳方案。 2 数据库仓库与数据集的概念介绍 2.1数据仓库 数据仓库是为企业所有级别的决策制定过程提供支持的所有类型数据的战略集合。它是单个数据存储,出于分析性报告和决策支持的目的而创建。为企业提供需要业务智能来指导业务流程改进和监视时间、成本、质量和控制。 数据仓库是决策系统支持(dss)和联机分析应用数据源的结构化数据环境。

数据仓库研究和解决从数据库中获取信息的问题。数据仓库的特征在于面向主题、集成性、稳定性和时变性。 2.2数据集 数据集是指一种由数据所组成的集合。Data set(或dataset)是一个数据的集合,通常以表格形式出现。每一列代表一个特定变量。每一行都对应于某一成员的数据集的问题。它列出的价值观为每一个变量,如身高和体重的一个物体或价值的随机数。每个数值被称为数据资料。对应于行数,该数据集的数据可能包括一个或多个成员。 3 数据仓库 3.1 数据仓库的设计 3.1.1数据仓库的概念模型设计 概念模型的设计是整个概念模型开发过程的三阶段。设计阶段依据概念模型分析以及分析过程中收集的任何数据,完成星型模型和雪花型模型的设计。如果仅依赖ERD,那只能对商品、销售、客户主题设计成如图所示的概念模型。这种模型适合于传统的数据库设计,但不适合于数据仓库的设计。 3.1.2数据仓库的逻辑模型设计 逻辑建模是数据仓库实施中的重要一环,因为它能直接反映出各个业务的需求,同时对系统的物理实施有着重要的指导作用,它的作用在于可以通过实体和关系勾勒出企业的数据蓝图,数据仓库的逻辑模型设计任务主要有:分析主题域,确定要装载到数据仓库的主题、确认粒度层次划分、确认数据分割策略、关系模式的定义和记录系统定义、确认数据抽取模型等。逻辑模型最终设计成果包

数据仓库的概念模型设计模型定义

完成概念模型的需求调查后,可以开始进行概念模型的定义。在概念模型的定义过程中需要确定系统的范围以及所涉及的对象。模型的设计先要明确所要构建的内容,设计模型的起点是所选择的主题域。数据仓库是面向决策进行分析的数据库,无法在数据仓库设计时就确定用户明确而详细的需求,只有一些基本的需求方向、基本的数据需求摆在设计着面前:要做的决策有哪些?决策者感兴趣的是什么问题?解决这些问题需要什么样的信息? 作为传统的业务处理系统的开发,在其开发分析中需要明确业务处理的具体功能,即系统的开发是基于功能驱动的,数据仓库开发人员在数据仓库形成与应用之前是不可能了解数据仓库的功能的。因此,无法采用功能驱动开发方法进行数据仓库的开发,但是,数据仓库的开发人员可以在数据仓库开发之前通过数据仓库的需求分析,了解数据仓库用户的大致需求,即在决策过程中需要什么信息。这样,就可以界定一个数据仓库的大致系统边界,集中精力进行主要部分的开发。因而,界定边界的工作也可看作是数据仓库系统设计的需求分析,因为它将决策者的数据分析的需求用系统边界的定义形式反映出来。 例如,以某个超市的数据仓库设计为例。由于超市的业务需求,已经建立了一些分散的数据库,分别处理各自的业务,各个数据库是按照各个部门的具体需求建立起来的,这样的组织是的数据各自为政、缺乏全局性,管理层想要在这些数据库的基础上得到一些全局报表,进行一些分析工作是比较困难的。因此,超市的管理层决定要在原有的数据库系统基础上建立一个数据仓库。为实现该数据仓库的概念模型的定义,首先需要分析用户的决策需求,其次,分析为实现这些决策分析,数据仓库应该提供哪些信息。 1、数据仓库用户的决策分析 从决定数据仓库的开发初衷来说,超市管理者最迫切的需求是能更准确地把握超市商品的销售情况和库存情况。 为制定一个较长期的营销策略,超市经营者目前所要进行的分析有:客户的购买趋势、商品供应市场的变化趋势,供应商和客户的信息用等级等情况。 2、支持决策的数据需求分析 管理决策者完成以上的决策分析,需要商品销售量、商品采购量、客户情况和供应商情况这样一些数据。 3、数据需求分析工具

数据仓库建模方法

每个行业有自己的模型,但是不同行业的数据模型,在数据建模的方法上,却都有着共通的基本特点。什么是数据模型 数据模型是抽象描述现实世界的一种工具和方法,是通过抽象的实体及实体之间联系的形式,来表示现实世界中事务的相互关系的一种映射。 在这里,数据模型表现的抽象的是实体和实体之间的关系,通过对实体和实体之间关系的定义和描述,来表达实际的业务中具体的业务关系。 数据仓库模型是数据模型中针对特定的数据仓库应用系统的一种特定的数据模型,一般的来说, 我们数据仓库模型分为几下几个层次。 图 2. 数据仓库模型 通过上面的图形,我们能够很容易的看出在整个数据仓库得建模过程中,我们需要经历一般四个过程: ?业务建模,生成业务模型,主要解决业务层面的分解和程序化。 ?领域建模,生成领域模型,主要是对业务模型进行抽象处理,生成领域概念模型。 ?逻辑建模,生成逻辑模型,主要是将领域模型的概念实体以及实体之间的关系进行数据库层次的逻辑化。 ?物理建模,生成物理模型,主要解决,逻辑模型针对不同关系型数据库的物理化以及性能等一些具体的技术问题。 因此,在整个数据仓库的模型的设计和架构中,既涉及到业务知识,也涉及到了具体的技术,我们既需要了解丰富的行业经验, 同时,也需要一定的信息技术来帮助我们实现我们的数据模型,最重要的是,我们还需要一个非常适用的方法论,来指导我们自己针对我们的业务进行抽象,处理,生成各个阶段的模型。 为什么需要数据模型 在数据仓库的建设中,我们一再强调需要数据模型,那么数据模型究竟为什么这么重要呢?首先我们需要了解整个数据仓库的建设的发展史。 数据仓库的发展大致经历了这样的三个过程: ?简单报表阶段:这个阶段,系统的主要目标是解决一些日常的工作中业务人员需要的报表,

数据仓库多维数据模型的设计说明

1、数据仓库基本概念 1.1、主题(Subject) 主题就是指我们所要分析的具体方面。例如:某年某月某地区某机型某款App的安装情况。主题有两个元素:一是各个分析角度(维度),如时间位置;二是要分析的具体量度,该量度一般通过数值体现,如App安装量。 1.2、维(Dimension) 维是用于从不同角度描述事物特征的,一般维都会有多层(Level:级别),每个Level 都会包含一些共有的或特有的属性(Attribute),可以用下图来展示下维的结构和组成:以时间维为例,时间维一般会包含年、季、月、日这几个Level,每个Level一般都会有ID、NAME、DESCRIPTION这几个公共属性,这几个公共属性不仅适用于时间维,也同样表现在其它各种不同类型的维。 1.3、分层(Hierarchy) OLAP需要基于有层级的自上而下的钻取,或者自下而上地聚合。所以我们一般会在维的基础上再次进行分层,维、分层、层级的关系如下图:

每一级之间可能是附属关系(如市属于省、省属于国家),也可能是顺序关系(如天周年),如下图所示: 1.4、量度 量度就是我们要分析的具体的技术指标,诸如年销售额之类。它们一般为数值型数据。我们或者将该数据汇总,或者将该数据取次数、独立次数或取最大最小值等,这样的数据称为量度。 1.5、粒度 数据的细分层度,例如按天分按小时分。 1.6、事实表和维表 事实表是用来记录分析的内容的全量信息的,包含了每个事件的具体要素,以及具体发

生的事情。事实表中存储数字型ID以及度量信息。 维表则是对事实表中事件的要素的描述信息,就是你观察该事务的角度,是从哪个角度去观察这个内容的。 事实表和维表通过ID相关联,如图所示: 1.7、星形/雪花形/事实星座 这三者就是数据仓库多维数据模型建模的模式 上图所示就是一个标准的星形模型。 雪花形就是在维度下面又细分出维度,这样切分是为了使表结构更加规范化。雪花模式可以减少冗余,但是减少的那点空间和事实表的容量相比实在是微不足道,而且多个表联结操作会降低性能,所以一般不用雪花模式设计数据仓库。 事实星座模式就是星形模式的集合,包含星形模式,也就包含多个事实表。

全面认识数据仓库

全面认识数据仓库 1.前言 随着我行信息科技工作进入后蓝图时代,后线分析系统注1建设的需求会越来越高,将在快速响应、高效实施、灵活应变、信息统一、全局分析、深度挖掘、监管有力、报送及时、降低成本等方面提出更多新的挑战。面对蓝图成功投产后新的产品体系,如何统一规划全辖数据资源、整合后线产品架构、预备各项技术预研可能是今后信息科技工作的一个重心。 数据仓库(DW)是各行业后线系统进展的一个重要方向,它在克服部门级应用的局限(数据分隔注2、重复存储、重复中间加工过程注3、维护工作繁琐、资源重复投入等)、满足全辖基础数据共享、提供全局分析视角和应用组件、支持快捷灵活和低成本的开发部署等方面有着不可替代的功能和地位。 数据仓库本身有着不同视角的概念解释,大可涵盖整个企业级应用架构,小可专注于单纯的数据建模与存储;数据仓库涉及重多相关技术,如ETL、数据模型设计、多维分析、数据挖掘等;数据仓库建设可能是一个复杂高难的全局性项目,正确的实施路径、策略、方法与有效的质量治理是项目成败的关键;另外,数据仓库系统实施后的治理与维护,也是保证各类后线应用系统长期顺利运行的重要因素。针对这些数据仓库相关的概念、技术、策略、方法等,可能并不是每个人都有比较全面的了解。因此有必要对这些做一个系统的介绍,使大伙儿对数据仓库有一个全面清晰的认识。

2.数据仓库入门介绍 ?应用需求背景 随着联机事务处理(OLTP)业务系统的深入应用,企业各类业务数据不断积存和丰富,越来越需要从大量数据中提取有价值的信息,以辅助决策和指导经营。治理信息系统(MIS)和早期的决策支持系统注4(DSS)要紧是基于传统的数据库技术和事务处理环境,这种系统结构随着业务系统建设规模的扩大、数据量的巨增和数据复杂度的提高,已无法满足综合分析型应用的需求,造成数据丰富而信息贫乏的困境。 首先,人们逐渐认识到,分析处理和事务处理具有极不相同的性质,事务处理通常是对数据库进行联机的查询和修改操作,每笔交易的响应时刻和数据的安全完整是关键;而分析型处理往往是对大规模历史数据的批量加工计算,数据的规范统一和整体时刻窗口是重要关注点。因此直接采纳传统数据库技术和使用事务处理环境来支持分析型系统是不合适和失败的。两类系统的特点比较见表-1:

数据仓库模型建设规范10

数据仓库模型建设规范 1.概述 数据仓库不同于日常的信息系统开发,除了遵循其他系统开发的需求、分析、设计、测试等通常的软件生命周期之外,它还涉及到企业信息数据的集成,大容量数据的阶段处理和分层存储,数据仓库的模式选择等等,因此数据仓库的模型设计异常重要,这也是关系到数据仓库项目成败的关键。 物理模型就像大厦的基础架构,就是通用的业界标准,无论是一座摩天大厦也好,还是茅草房也好,在架构师的眼里,他只是一所建筑,地基—层层建筑—封顶,这样的工序一样也不能少,关系到住户的安全,房屋的建筑质量也必须得以保证,唯一的区别是建筑的材料,地基是采用钢筋水泥还是石头,墙壁采用木质还是钢筋水泥或是砖头;当然材料和建筑细节还是会有区别的,视用户给出的成本而定;还有不可忽视的一点是,数据仓库的数据从几百GB到几十TB不等,即使支撑这些数据的RDBMS无论有多么强大,仍不可避免地要考虑数据库的物理设计。 数据仓库建模的设计目标是模型的稳定性、自适应性和可扩展性。为了做到这一点,必须坚持建模的相对独立性、业界先进性原则。 2.数聚模型架构 在数聚项目实施过程,我们一般将数据仓库系统的数据划分为如下图所示几个层次。

2.1.数据架构图

2.2.架构工作方法规范

2.3.准备层L0 2.3.1.主要数据结构 临时表:从数据源抽取,直接落地到临时表。临时表总是保存这次抽取的数据,不保留历史数据。也就是说,如果是全量抽取的话,就是源系统整个表的数据,如果 是增量抽取的话,就是自从上次修改后的数据。 接口表:从临时表,经过清洗、转换到达接口表。接口表保存历史数据,也就是说,如果是全量抽取的话,就是源系统整个表的数据,如果是增量抽取的话。 接口表里面也是源系统整个表的数据。 转换表:为了进行清洗和转换建立的中间辅助表。 2.3.2.命名规范 临时表:L0_TMP_源系统_具体业务或 L0_TMP_业务主题_具体业务(对单一源)举例:L0_TMP_POS_SALESORDER 接口表:L0_DCI_业务主题_具体业务表 举例:L0_DCI_SALES_SALESORDER 转换表:L0_MAP_具体业务表 举例:L0_MAP_SALES 2.3.3.开发工作 ●开发数据抽取接口,落地TMP区 ●开发数据清洗转换程序,落地DCI区,多源系统进行合并 ●开发数据装载程序,装载到L1层 2.4.原子层L1 2.4.1.主要数据结构 维度表:整个数据仓库一致的维度 代码表:维度属性,非维度代码等。 原子事实表:根据业务主题,形成原子事实表 汇总事实表:根据分析主题,业务主题形成合并或汇总的事实表。

数据仓库-数据建模过程

目录 一、数据仓库建模模式: (1) 1.自顶向下: (1) 2.自底向上: (1) 二、数据仓库设计重点步骤: (1) 1.概念模型设计(客观世界->主观世界) (1) 1)业务数据理解和需求分析; (1) 2)分析主题和元数据; (1) 2.逻辑模型设计(主观世界->关系模型) (3) 1)事实表及其度量和粒度确定; (3) 2)维度确定; (3) 3.物理模型设计(关系模型->存储模型) (5) 1)数据仓库的物理存储方式 (5) 三、cube展示 (5) 一、数据仓库建模模式: 1.自顶向下: 先通过ETL将数据汇集到数据仓库中,然后再通过数据复制的方式推进各个数据集 市; 2.自底向上: 先通过ETL将数据汇集到数据集市中,然后再数据复制的方式提升到数据仓库中; 二、数据仓库设计重点步骤: 1.概念模型设计(客观世界->主观世界) 1)业务数据理解和需求分析; 如:这次我主要针对营帐中的应收金额做简单的数据模型,主要分析应收金额, 从各个维度去分析和了解应收金额的情况; 2)分析主题和元数据; a)

转换为星型图为: b)主题和元数据 主题:分析应收金额 元数据:表格中分析出的的维度,类别层次以及度量都属于元元素 元数据:定义了数据仓库中的许多对象—--表,列,查询,规则以及数据仓库内部的数据转移;

2.逻辑模型设计(主观世界->关系模型) 1)事实表及其度量和粒度确定; 根据对应收的分析,分析出事实表(主键+外键+度量字段)和粒度 注:设计事实表时,尽量的使事实表尽可能的小,可以提高事实表的处理,备份以及查询的性能,可通过减少列的数量,降低列的大小等方式。 如果事实表的数据量过大,可以采用数据分割的方式,将数据按照一定的规 则分割,如可以按照时间按月来分割成多个部分,或者按年来分割,来降低数 据量。 度量值:应收金额 粒度:取的是精确到天。 事实表:FACT_RPT_AI 字段如下: SEQNO 序列号 CREATETIME 创建日期 AIMONTH 归属月 AI_NO 费用表外键 OPID 操作员表外键 ORGID 组织结构表外键 CUSTID 客户表外键 ACCTID 账户表外键 SERVICEACCOUNTID 用户表外键 PRODUCTID 产品表外键 STID 用户所属街道 SERVICEID 品牌 PACKAGEID 产品包 VALUE 应收金额 SETOFFAMOUNT 销账金额 2)维度确定; a)时间维度:日,月,年,建立相应的维度表(Dimtime),表结构如下: PKID 主键 the_day 日 the_month 月 he_year 年 b)区域维度:街道,区域,市, 相应的维度表(DimDISTRICT) ,表结构如下: STID 主键 STNAME 街道 T_STNAME 区域 c)组织机构维度:一级,二级,三级,四级(DimOrganization) ,表结构如下:

Oracle数据仓库设计指南

Oracle数据仓库设计指南 在一般的数据仓库应用系统中,根据系统体系结构的不同,数据仓库设计的内容和范围不尽相同,并且设计方法也不尽相同,下面的两幅图示分别表示带有ODS的数据仓库应用系统体系结构和不带ODS的数据仓库应用系统体系结构。本文将说明两个体系结构上的差异以及这种差异造成的设计方法的不同,并且重点介绍带有ODS的体系结构中数据仓库的设计方法。 在数据仓库的设计指导思想中,数据仓库的概念定义是非常重要的,数据仓库概念规定了数据仓库所具有的几个基本特性,这些特性也正是对数据仓库设计结果进行检验的重要依据。 根据Bill.Inmon的定义,“数据仓库是面向主题的、集成的、稳定的、随时间变化的,主要用于决策支持的数据库系统”。 ODS(Operational Data Store)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据。 一般在带有ODS的系统体系结构中,ODS都设计为如下几个作用: 1)在业务系统和数据仓库之间形成一个隔离层 一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同的地理位置、不同的数据库、不同的应用之中,从这些业务系统对数据进行抽取并不是一件容易的事。因此,ODS用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致,因此在抽取过程中极大降低了数据转化的复杂性,而主要关注数据抽取的接口、数据量大小、抽取方式等方面的问题。 2)转移一部分业务系统细节查询的功能 在数据仓库建立之前,大量的报表、分析是由业务系统直接支持的,在一些比较复杂的报表生成过程中,对业务系统的运行产生相当大的压力。ODS的数据从粒度、组织方式等各个方面都保持了与业务系统的一致,那么原来由业务系统产生的报表、细节数据的查询自然能够从ODS中进行,从而降低业务系统的查询压力。 3)完成数据仓库中不能完成的一些功能 一般来说,带有ODS的数据仓库体系结构中,DW层所存储的数据都是进行汇总过的数据,并不存储每笔交易产生的细节数据,但是在某些特殊的应用中,可能需要对交易细节数据进行查询,这时就需要把细节数据查询的功能转移到ODS来完成,而且ODS的数据模型按照面向主题的方式进行存储,可以方便地支持多维分析等查询功能。

个人对数据仓库的理解

数据仓库 (一)、数据仓库这个概念的兴起 30年前,所有的美国的任何行业都轰轰烈烈的进行着信息化的活动。各种业务活动都由电脑处理,叫做“业务系统”。必然的,所有业务系统里都有查询统计功能。 20年前,随着电脑化的业务系统里存储的历史数据逐渐增加,他们发现查询历史数据或者做业务统计的速度越来越慢。对业务数据统计分析的需求也越来越复杂。业务系统已经不堪重负。于是很多公司就把,业务系统里的历史数据拿出来,放在另一个地方,专门负责对历史数据的查询统计分析。这个工作显得越来越重要,也越来越有企业肯花钱来做,也越来越有人认真的研究怎么把查询统计分析的工作做好。 10多年前,开始美国人开始有人起名字,就叫“数据仓库”。(二)、数据仓库的概念是针对以下基本需求产生 公司的业务系统很多,业务系统的历史数据不方便查询。不同的业务系统往往管理部门不同,地域不同。能不能将所有这些数据集中起来,再淘淘有没有有意义的业务规律。 总之,一点,一个公司想针对已有的历史业务数据,充分的利用它们,那么就上数据仓库项目。 (二)、数据仓库系统(用数据库装东西)与其他基础业务系统(例如财务系统、销售系统、人力资源系统等,也是用数据库装东西)的区别

基础业务系统的特点是各管各的,例如财务系统生产了白菜,那么用一个数据库来装,人力资源系统生产了猪肉,再用一个数据库来装。我要做一道菜,需要分别到各个数据库去取,比较麻烦(现实的情况是大部分时候让种菜的农民伯伯送过来,但送过来的东西不一定是我想要的,而且不同的时候我想要不同的东西,经常会被农民伯伯骂,弄得双方都不开心)。另外一方面,各个数据库中放的是一些比较原始的东西,我要拿过来做菜,还需要经过很麻烦的清洗过程,一不小心里面可能就藏着一条大青虫。 那么,数据仓库系统就是建立一个大的超市(注意别建成垃圾堆),将各地农民伯伯出产的东西收集过来,清洗干净,分门别类地放好。这样,你要哪种菜的时候,直接从超市里面拿就可以了。 另外,数据仓库还会起到历史数据分类归档的目的(就像图书馆一样),届时可以通过检索条件方便的查询历史信息。 (四)、概念 简单滴说,数据仓库就是整合各生产系统的数据特征,通过对历史数据、当前生产数据进行抽取、清洗、分类,从多角度分析生产系统数据特征,得出企业经营状况并对未来发展进行预测,为企业管理者的经营决策提供依据。 宏观一点讲,数据仓库就是堆放公司所有数据的地方,之所以把数据都堆在一起,是为了从中间找到有价值的东西。数据仓库的物理上就是数据库。相对业务系统数据库叫OLTP数据库(用于业务处理),这种数据库叫OLAP数据库(用于业务分析)。

相关文档
最新文档