数据仓库与数据库

数据仓库与数据库
数据仓库与数据库

数据仓库与数据库的区别

简而言之,数据库是面向事务的设计,数据仓库是面向主题设计的。

数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。

数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计。

数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放着要查询的数据,同时有维的ID。

单从概念上讲,有些晦涩。任何技术都是为应用服务的,结合应用可以很容易地理解。以银行业务为例。数据库是事务系统的数据平台,客户在银行做的每笔交易都会写入数据库,被记录下来,这里,可以简单地理解为用数据库记帐。数据仓库是分析系统的数据平台,它从事务系统获取数据,并做汇总、加工,为决策者提供决策的依据。比如,某银行某分行一个月发生多少交易,该分行当前存款余额是多少。如果存款又多,消费交易又多,那么该地区就有必要设立ATM 了。

显然,银行的交易量是巨大的,通常以百万甚至千万次来计算。事务系统是实时的,这就要求时效性,客户存一笔钱需要几十秒是无法忍受的,这就要求数据库只能存储很短一段时间的数据。而分析系统是事后的,它要提供关注时间段内所有的有效数据。这些数据是海量的,汇总计算起来也要慢一些,但是,只要能够提供有效的分析数据就达到目的了。

数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它决不是所谓的“大型数据库”。那么,数据仓库与传统数据库比较,有哪些不同呢?让我们先看看W.H.Inmon关于数据仓库的定义:面向主题的、集成的、与时间相关且不可修改的数据集合。

“面向主题的”:传统数据库主要是为应用程序进行数据处理,未必按照同一主题存储数据;数据仓库侧重于数据分析工作,是按照主题存储的。这一点,类似于传统农贸市场与超市的区别—市场里面,白菜、萝卜、香菜会在一个摊位上,

如果它们是一个小贩卖的;而超市里,白菜、萝卜、香菜则各自一块。也就是说,市场里的菜(数据)是按照小贩(应用程序)归堆(存储)的,超市里面则是按照菜的类型(同主题)归堆的。

“与时间相关”:数据库保存信息的时候,并不强调一定有时间信息。数据仓库则不同,出于决策的需要,数据仓库中的数据都要标明时间属性。决策中,时间属性很重要。同样都是累计购买过九车产品的顾客,一位是最近三个月购买九车,一位是最近一年从未买过,这对于决策者意义是不同的。

“不可修改”:数据仓库中的数据并不是最新的,而是来源于其它数据源。数据仓库反映的是历史信息,并不是很多数据库处理的那种日常事务数据(有的数据库例如电信计费数据库甚至处理实时信息)。因此,数据仓库中的数据是极少或根本不修改的;当然,向数据仓库添加数据是允许的。

数据仓库的出现,并不是要取代数据库。目前,大部分数据仓库还是用关系数据库管理系统来管理的。可以说,数据库、数据仓库相辅相成、各有千秋。

补充一下,数据仓库的方案建设的目的,是为前端查询和分析作为基础,由于有较大的冗余,所以需要的存储也较大。为了更好地为前端应用服务,数据仓库必须有如下几点优点,否则是失败的数据仓库方案。

1.效率足够高。客户要求的分析数据一般分为日、周、月、季、年等,可以看出,日为周期的数据要求的效率最高,要求24小时甚至12小时内,客户能看到昨天的数据分析。由于有的企业每日的数据量很大,设计不好的数据仓库经常会出问题,延迟1-3日才能给出数据,显然不行的。

2.数据质量。客户要看各种信息,肯定要准确的数据,但由于数据仓库流程至少分为3步,2次ETL,复杂的架构会更多层次,那么由于数据源有脏数据或者代码不严谨,都可以导致数据失真,客户看到错误的信息就可能导致分析出错误的决策,造成损失,而不是效益。

3.扩展性。之所以有的大型数据仓库系统架构设计复杂,是因为考虑到了未来3-5年的扩展性,这样的话,客户不用太快花钱去重建数据仓库系统,就能很稳定运行。主要体现在数据建模的合理性,数据仓库方案中多出一些中间层,使海量数据流有足够的缓冲,不至于数据量大很多,就运行不起来了。

数据仓库模型的设计

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

数据库与数据仓库的区别是什么

数据库与数据仓库的区别是什么 简而言之,数据库是面向事务的设计,数据仓库是面向主题设计的。 数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。 数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计。 数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放着要查询的数据,同时有维的ID。 单从概念上讲,有些晦涩。任何技术都是为应用服务的,结合应用可以很容易地理解。以银行业务为例。数据库是事务系统的数据平台,客户在银行做的每笔交易都会写入数据库,被记录下来,这里,可以简单地理解为用数据库记帐。数据仓库是分析系统的数据平台,它从事务系统获取数据,并做汇总、加工,为决策者提供决策的依据。比如,某银行某分行一个月发生多少交易,该分行当前存款余额是多少。如果存款又多,消费交易又多,那么该地区就有必要设立ATM了。 显然,银行的交易量是巨大的,通常以百万甚至千万次来计算。事务系统是实时的,这就要求时效性,客户存一笔钱需要几十秒是无法忍受的,这就要求数据库只能存储很短一段时间的数据。而分析系统是事后的,它要提供关注时间段内所有的有效数据。这些数据是海量的,汇总计算起来也要慢一些,但是,只要能够提供有效的分析数据就达到目的了。 数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它决不是所谓的“大型数据库”。那么,数据仓库与传统数据库比较,有哪些不同呢?让我们先看看W.H.Inmon关于数据仓库的定义:面向主题的、集成的、与时间相关且不可修改的数据集合。 “面向主题的”:传统数据库主要是为应用程序进行数据处理,未必按照同一主题存储数据;数据仓库侧重于数据分析工作,是按照主题存储的。这一点,类似于传统农贸市场与超市的区别—市场里面,白菜、萝卜、香菜会在一个摊位上,如果它们是一个小贩卖的;而超市里,白菜、萝卜、香菜则各自一块。也就是说,市场里的菜(数据)是按照小贩(应用程序)归堆(存储)的,超市里面则是按照菜的类型(同主题)归堆的。 “与时间相关”:数据库保存信息的时候,并不强调一定有时间信息。数据仓库则不同,出于决策的需要,数据仓库中的数据都要标明时间属性。决策中,时间属性很重要。同样都是累计购买过九车产品的顾客,一位是最近三个月购买九车,一位是最近一年从未买过,这对于决策者意义是不同的。 “不可修改”:数据仓库中的数据并不是最新的,而是来源于其它数据源。数据仓库反映的是历史信息,并不是很多数据库处理的那种日常事务数据(有的数据库例如电信计费数据库

数据仓库设计指南

数据仓库设计指南 在一般的数据仓库应用系统中,根据系统体系结构的不同,数据仓库设计的内容和范围不尽相同,并且设计方法也不尽相同,下面的两幅图示分别表示带有ODS的数据仓库应用系统体系结构和不带ODS的数据仓库应用系统体系结构。本文将说明两个体系结构上的差异以及这种差异造成的设计方法的不同,并且重点介绍带有ODS的体系结构中数据仓库的设计方法。GV1 =p}` 在数据仓库的设计指导思想中,数据仓库的概念定义是非常重要的,数据仓库概念规定了数据仓库所具有的几个基本特性,这些特性也正是对数据仓库设计结果进行检验的重要依据。M)_m= }d 根据Bill.Inmon的定义,“数据仓库是面向主题的、集成的、稳定的、随时间变化的,主要用于决策支持的数据库系统”。_R)tJ Ro ODS(Operational Data Store)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据。4\&P~kI 一般在带有ODS的系统体系结构中,ODS都设计为如下几个作用:#:1< R\H6m 1)在业务系统和数据仓库之间形成一个隔离层。[t"C/;S! 一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同的地理位置、不同的数据库、不同的应用之中,从这些业务系统对数据进行抽取并不是一件容易的事。因此,ODS用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致,因此在抽取过程中极大降低了数据转化的复杂性,而主要关注数据抽取的接口、数据量大小、抽取方式等方面的问题。,8mPV{U KU 2)转移一部分业务系统细节查询的功能 Cr

数据库和数据仓库的区别

简而言之,数据库是面向事务的设计,数据仓库是面向主题设计的。数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。 数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计。 数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放着要查询的数据,同时有维的ID。 单从概念上讲,有些晦涩。任何技术都是为应用服务的,结合应用可以很容易地理解。以银行业务为例。数据库是事务系统的数据平台,客户在银行做的每笔交易都会写入数据库,被记录下来,这里,可以简单地理解为用数据库记帐。数据仓库是分析系统的数据平台,它从事务系统获取数据,并做汇总、加工,为决策者提供决策的依据。比如,某银行某分行一个月发生多少交易,该分行当前存款余额是多少。如果存款又多,消费交易又多,那么该地区就有必要设立ATM了。 显然,银行的交易量是巨大的,通常以百万甚至千万次来计算。事务系统是实时的,这就要求时效性,客户存一笔钱需要几十秒是无法忍受的,这就要求数据库只能存储很短一段时间的数据。而分析系统是事后的,它要提供关注时间段内所有的有效数据。这些数据是海量的,汇总计算起来也要慢一些,但是,只要能够提供有效的分析数据就达到目的了。 数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它决不是所谓的“大型数据库”。那么,数据仓库与传统数据库比较,有哪些不同呢?让我们先看看W.H.Inmon关于数据仓库的定义:面向主题的、集成的、与时间相关且不可修改的数据集合。 “面向主题的”:传统数据库主要是为应用程序进行数据处理,未必按照同一主题存储数据;数据仓库侧重于数据分析工作,是按照主题存储的。这一点,类似于传统农贸市场与超市的区别—市场里面,白菜、萝卜、

数据仓库-系统设计说明书

归一大数据平台 数据仓库 系统设计说明书受控不受控

修改变更记录:

目录 1引言 (5) 1.1文档编制目的 (5) 1.2背景 (6) 1.3词汇表 (6) 1.4参考资料 (6) 2总体设计 (7) 2.1软件体系结构 (7) 2.2系统运行体系......................................................................... 错误!未定义书签。 2.2.1运行体系图..................................................................... 错误!未定义书签。 2.2.2程序/模块对应表............................................................ 错误!未定义书签。 2.3系统物理结构 (7) 2.4技术路线 (8) 3系统接口设计 (8) 3.1用户接口 (8) 4子系统/模块设计 (8) 4.1数据仓库 (8) 4.1.1ODL(操作数据)层设计 (8) 4.1.2BDL(数据仓库)层设计 (10) 4.1.3IDL(宽表)层设计 (11) 4.1.4PDL(应用)层设计 (12) 4.1.5PUB(维度)层设计 (15) 4.1.6数据导出设计 (16) 5数据结构与数据库设计 (17) 6外部存储结构设计 (17) 7故障处理说明 (17) 8尚需解决的问题 (18)

编写指南: 本模板力图给出系统设计阶段可能包括的基本信息,重点在于和需求分析文档相联系。描述系统整体情况。如果某个章节在项目或当前阶段中无法描述,则可保留其标题,注明“不

大数据仓库建设方案设计

第1章数据仓库建设 1.1数据仓库总体架构 专家系统接收增购项目车辆TCMS或其他子系统通过车地通信传输的实时或离线数据,经过一系列综合诊断分析,以各种报表图形或信息推送的形式向用户展示分析结果。针对诊断出的车辆故障将给出专家建议处理措施,为车辆的故障根因修复提供必要的支持。 根据专家系统数据仓库建设目标,结合系统数据业务规范,包括数据采集频率、数据采集量等相关因素,设计专家系统数据仓库架构如下: 数据仓库架构从层次结构上分为数据采集、数据存、数据分析、数据服务等几个方面的内容: 数据采集:负责从各业务自系统中汇集信息数据,系统支撑Kafka、Storm、Flume

及传统的ETL采集工具。 数据存储:本系统提供Hdfs、Hbase及RDBMS相结合的存储模式,支持海量数据的分布式存储。 数据分析:数据仓库体系支持传统的OLAP分析及基于Spark常规机器学习算法。 数据服务总线:数据系统提供数据服务总线服务,实现对数据资源的统一管理和调度,并对外提供数据服务。 1.2数据采集 专家系统数据仓库数据采集包括两个部分内容:外部数据汇集、内部各层数据的提取与加载。外部数据汇集是指从TCMS、车载子系统等外部信息系统汇集数据到专家数据仓库的操作型存储层(ODS);内部各层数据的提取与加载是指数据仓库各存储层间的数据提取、转换与加载。 1.2.1外部数据汇集 专家数据仓库数据源包括列车监控与检测系统(TCMS)、车载子系统等相关子系统,数据采集的内容分为实时数据采集和定时数据采集两大类,实时数据采集主要对于各项检测指标数据;非实时采集包括日检修数据等。 根据项目信息汇集要求,列车指标信息采集具有采集数据量大,采集频率高的特点,考虑到系统后期的扩展,因此在数据数据采集方面,要求采集体系支持高吞吐量、高频率、海量数据采集,同时系统应该灵活可配置,可根据业务的需要进行灵活配置横向扩展。 本方案在数据采集架构采用Flume+Kafka+Storm的组合架构,采用Flume和ETL 工具作为Kafka的Producer,采用Storm作为Kafka的Consumer,Storm可实现对海量数据的实时处理,及时对问题指标进行预警。具体采集系统技术结构图如下:

浅析数据库(DB)、操作数据存储(ODS)和数据仓库(DW)的区别与联系

浅析数据库(DB)、操作数据存储(ODS)和数据仓库(D W)的区别与联系 文章背景: 相信大部分刚接触上面三个概念的同学,都多多少少会有些迷惑,现在我就给大家简单分析下这三者的关系,希望大家对这三者的概念理解有所帮助吧。 本文主要从下面两类关系来叙述上面三者的关系: 1. 数据库(DB)和数据仓库(DW)的区别与联系 2. 操作数据存储(ODS)和数据仓库(DW)的区别与联系 数据库与数据仓库的区别与联系 数据库与数据仓库基础概念: 数据库:传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。 数据仓库:数据仓库系统的主要应用主要是OLAP(On-Line Analytical Proces sing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。 OLTP和OLAP概念补充: 数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction proc essing)、联机分析处理OLAP(On-Line Analytical Processing)。 OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。 OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。

OLTP 系统强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作; OLAP 系统则强调数据分析,强调SQL执行市场,强调磁盘I/O,强调分区等。 举一个具体的例子:(转自知乎作者:陈诚),个人觉得例子描述的很清晰 举个最常见的例子,拿电商行业来说好了。 基本每家电商公司都会经历,从只需要业务数据库到要数据仓库的阶段。 第一阶段,电商早期启动非常容易,入行门槛低。找个外包团队,做了一个可以下单的网页前端+ 几台服务器+ 一个MySQL,就能开门迎客了。这好比手工作坊时期。 第二阶段,流量来了,客户和订单都多起来了,普通查询已经有压力了,这个时候就需要升级架构变成多台服务器和多个业务数据库(量大+分库分表),这个阶段的业务数字和指标还可以勉强从业务数据库里查询。初步进入工业化。 第三阶段,一般需要3-5 年左右的时间,随着业务指数级的增长,数据量的会陡增,公司角色也开始多了起来,开始有了CEO、CMO、CIO,大家需要面临的问题越来越复杂,越来越深入。高管们关心的问题,从最初非常粗放的:“昨天的收入是多少”、“上个月的PV、UV 是多少”,逐渐演化到非常精细化和具体的用户的集群分析,特定用户在某种使用场景中,例如“20~30岁女性用户在过去五年的第一季度化妆品类商品的购买行为与公司进行的促销活动方案之间的关系”。 这类非常具体,且能够对公司决策起到关键性作用的问题,基本很难从业务数据库从调取出来。原因在于: 1. 业务数据库中的数据结构是为了完成交易而设计的,不是为了而查询和分析的便利设 计的。 2. 业务数据库大多是读写优化的,即又要读(查看商品信息),也要写(产生订单,完 成支付)。因此对于大量数据的读(查询指标,一般是复杂的只读类型查询)是支持不足的。

数据仓库设计的21条原则:7个步骤,7个禁忌和7种思路

高效实现数据仓库的七个步骤 数据仓库和我们常见的RDBMS系统有些亲缘关系,但它又有所不同。如果你没有实施过数据仓库,那么从设定目标到给出设计,从创建数据结构到编写数据分析程序,再到面对挑剔的用户的评估,整个过程都会带给你一种与以往的项目完全不同的体验。一句话,如果你试图以旧有的方式创建数据仓库,那你所面对的不是预算超支就是所建立的数据仓库无法良好运作。 在处理一个数据仓库项目时需要注意的问题很多,但同时也有很多有建设性的参考可以帮助你更顺利的完成任务。开放思维,不断尝试新的途径,对于找到一种可行的数据仓库实现方法来说也是必需的。 1. 配备一个全职的项目经理或你自己全面负责项目管理 在通常情况下,项目经理都会同时负责多个项目的实施。这么做完全是出于资金和IT资源方面的考虑。但是对于数据仓库项目的管理,绝对不能出现一人身兼数个项目的情况。由于你所处的领域是你和你的团队之前没有进入过的领域,有关数据仓库的一切-数据分析、设计、编程、测试、修改、维护-全都是崭新的,因此你或者你指派的项目经理如果能全心投入,对于项目的成功会有很大帮助。 2. 将项目管理职责推给别的项目经理 由于数据仓库实现过程实在是太困难了,为了避免自虐,你可以在当前阶段的项目完成后就将项目管理职责推给别的项目经理。当然,这个新的项目经理一定要复合第一条所说的具有全职性。为什么要这么做呢?首先,从项目经理的角度看,数据仓库实施过程的任何一个阶段都足以让人身心疲惫。从物理存储设备的开发到Extract-Transform-Load的实现,从设计开发模型到OLAP,所有阶段都明显的比以前接触的项目更加困难。每个阶段不但需要新的处理方法、新的管理方法,还需要创新性的观点。所以将管理职责推给别的项目经理不但不会对项目有损害,还可以起到帮助作用。 3.与用户进行沟通 这里所讲的内容远比一篇文章本身要重要的多。你必须明白,在数据仓库的设计阶段,那些潜在用户自己也不清楚他们到底需要数据仓库为他们做什么。他们在不断的探索和发现自己的需求,而你的开发团队也在和客户的接触中做着同样的事情。更加频繁的与客户接触,多做记录,

数据仓库的开发设计过程

数据仓库之路 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先生在其《建立数据仓库》一书中定义了数据仓库的概念,随后又给出了更为精确的定义:数据仓

数据仓库和数据库

数据仓库和数据库有什么区别? 通常情况下基于业务数据库数据分析人员也能完成数据分析需求,但是为什么要建数据仓库? 没有数据仓库时,我们需要直接从业务数据库中取数据来做分析。 业务数据库主要是为业务操作服务的,虽然可以用于分析,但需要很多额度的调整。 一,业务数据库中存在的问题 基于业务数据库来做分析,主要有以下几个问题: 结构复杂,数据脏乱,难以理解,历史缺失,数据量大时查询缓慢。 结构复杂 业务数据库通常是根据业务操作的需要进行设计的,遵循3NF范式,尽可能减少数据冗余。这就造成表与表之间关系错综复杂。在分析业务状况时,储存业务数据的表,与储存想要分析的角度表,很可能不会直接关联,而是需要通过多层关联来达到,这为分析增加了很大的复杂度。 数据脏乱 因为业务数据库会接受大量用户的输入,如果业务系统没有做好足够的数据校验,就会产生一些错误数据,比如不合法的身份证号,或者不应存在的Null值,空字符串等。 理解困难 业务数据库中存在大量语义不明的操作代码,比如各种状态的代码,地理位置的代码等等,在不同业务中的同一名词可能还有不同的叫法。 这些情况都是为了方便业务操作和开发而出现的,但却给我们分析数据造成了很大负担。各种操作代码必须要查阅文档,如果操作代码较多,还需要了解储存它的表。同义异名的数据更是需要翻阅多份文档。 缺少历史 出于节约空间的考虑,业务数据库通常不会记录状态流变历史,这就使得某些基于流变历史的分析无法进行。比如想要分析从用户申请到最终放款整个过程中,各个环节的速度和转化率,没有流变历史就很难完成。 大规模查询缓慢 当业务数据量较大时,查询就会变得缓慢。 二,数据仓库解决方案 上面的问题,都可以通过一个建设良好的数据仓库来解决。 业务数据库是面向操作的,主要服务于业务产品和开发。 而数据仓库则是面向分析的,主要服务于我们分析人员。评价数据仓库做的好不好,就看我们分析师用得爽不爽。因此,数据仓库从产品设计开始,就一直是站在分析师的立场上考虑的,致力于解决使用业务数据进行分析带来的种种弊端。 数据仓库解决的问题 结构清晰,简单 数据仓库不需要遵循数据库设计范式,因此在数据模型的设计上有很大自由。 数据模型一般采用星型模型,表分为事实表和维度表两类。 其中事实表位于星星的中心,存储能描述业务状况的各种度量数据。

数据仓库数据库设计的心得总结

数据仓库数据库设计的心得总结 数据仓库是企业商业智能分析环境的核心,它是建立决策支持系统的基础。一个良好的数据仓库设计应该是构建商业智能和数据挖掘系统不懈的追求。下面把数据仓库数据库设计的心得做一小结。 一透彻理解数据仓库设计过程 商业智能和数据挖掘归根到底是“从实践中来,到实践中去”。也就是说现实需求决定系统需求,业务数据决定系统构架,最终使用的时候又必须作用于现实需求,同时通过决策的行为影响业务。那么可以把数据仓库的设计看做是前一部分,即“从实践中来”,数据仓库的应用可以看做是“到实践中去”。把“从实践中来”这个过程进行抽象,数据仓库的设计就是“客观世界→主观世界→关系世界”的过程。 在前面几节完成了6个任务:选择被建模主题的商业过程、确定事实表的粒度、区分每一个事实表的维和层、区分事实表的度量、确定每一个维表的属性、在D BMS中创建和管理数据仓库。实际上这些任务都可以归结到从客观世界到关系世界的过程。那么把这个过程再进行归纳,可以得到如图3-61所示的综合了模型、方法和过程的示意图。 图3-61 数据仓库设计过程的模型和方法示意图 二把握设计的关键环节

如果将时间、精力、金钱和人事优先花在前面的20%,那么这20%会创造出80% 的价值。这就是有名的2/8原则。下面将介绍在数据仓库设计中,哪些因素是属于这20%的范围。 1.需求 需求分析在任何如见项目中都是最为重要的因素之一。企业模型是从企业的各个视点对企业数据需求及数据间关系的抽象。通过将企业模型映射到数据库系统,可以很快地了解现有数据库系统完成了企业模型中的哪些部分,还缺少哪些部分。然后再将企业模型映射到数据仓库系统,发现企业需要的(或可以构造的)主题。通过这样的过程完成对企业数据需求和现有数据的了解,达到明了原有系统和需要建设的主题域间共性的目的。 2.关键性能指标(KPI) 一般而言,一个决策支持系统最重要的就是要呈现决策数据。而KPI就是决策过程中要显示的数据结果的部分,如销售数量、销售金额、毛利和运费等数值部分的数据。这些KPI是通过与相关的维表进行连接而映射出来的。在分析星形模式时,往往要首先确定KPI。 3.信息对象 信息对象是指在每个分析过程中那些会影响到决策的因素。以销售分析为例,时间、产品、员工与客户就是影响决策的大因子,而每个因子又可以分离出多个分层结构,如时间可分为年、季度、月、周和日等,员工可分为年龄层、年龄、年薪层、年薪和员工所在城市等,也就是影响决策的详细因子。这些都是信息对象。从这里我们可以看出,每个大因子如时间、产品、员工与客户等就可以构成如时间维表、产品维表、员工维表与客户维表等。而时间维表又可分为年、季度和日等字段。在分析和设计这些信息对象组成的维度时,需要注意维的唯一性和公用性,千万不要在不同的主题中定义多个表示同一内容的维,如果有可能,一个维表要尽量被多个主题共享。 4.数据粒度 在数据仓库的每个主题中,都必须考虑事实数据的粒度。粒度的具体划分将直接影响到数据仓库中的数据量及查询质量。在数据仓库开始进行分析时。就需要建立合适的数据粒度模型,指导数据仓库设计和其他问题的解决。如果数据粒度定义不当,将会影响数据仓库的使用效果,使数据仓库达不到设计数据仓库的目的。 5.数据之间的联系 在数据仓库中,不同主题的数据之间的物理约束或许不再存在,但无论这些数据如何变化,要知道必须有一些“键”在逻辑上保持着不同数据之间的联系,这样

数据仓库与数据库的区别

数据仓库与数据库的区别 数据仓库的出现,并不是要取代数据库。目前,大部分数据仓库还是用关系数据库管理系统来管理的。 数据库是面向事务的设计,数据仓库是面向主题设计的。 数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。 数据库设计是尽量避免冗余,数据仓库在设计是有意引入冗余。 数据库是为捕获数据而设计,数据仓库是为分析数据而设计。 数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策 面向主题:而数据仓库中的数据是按照一定的主题域进行组织。 集成:对原有分散的数据库数据经过系统加工,整理得到的消除源数据中的不一致性 相对稳定:一旦某个数据进入数据仓库以后只需要定期的加载、刷新 反映历史变化通过这些信息,对企业的发展历程和未来趋势做出定量分析预测数据仓库建设是一个工程,是一个过程,而不是一种可以购买的产品 企业数据处理方式: 以联机事务处理形式信息,以联机分析处理形式处理信息,并利用信息进行决策;在信息应用过程中管理信息。 OLAP基本概念 从动态的多维角度分析数据,对数据进行钻取,以获得更为精确的信息 数据库设计是信息系统开发和建设中的核心技术。 信息技术基础设施的定义 ? ?可以从技术和服务两个角度来 定义信息技术基础设施 从技术角度来看,信息技术基础设 施---运营整个企业所必需的硬件 设施和软件系统的集合。

?从服务角度定义信息技术基 础设施更为恰当,信息技术基 础设施是整个企业范围内由管 理层所决定的包括人和技术能 力的服务的组合。 信息技术的普及性已经达到相当成熟的阶段 ?信息技术本身对企业来说不 可或缺;尽管能为整个行业带 来彻底的变化,但它已经不能 为单个企业提供战略性的竞争 优势;因为资源的稀缺性。?另一方面,不同企业应用信息技术 的能力差异很大 ?企业在利用信息技术改进业 务流程、创新业务、管理技巧

数据仓库设计文档模板

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

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

数据仓库与数据挖掘课后答案

第1章数据仓库的概念与体系结构 1.数据仓库就是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合。 2.元数据是描述数据仓库内数据的结构和建立方法的数据,它为访问数据仓库提供了一个信息目录,根据元数据用途的不同可将数据仓库的元数据分为技术元数据和业务元数据两类。 3.数据处理通常分成两大类:联机事务处理OLTP和联机分析处理OLAP。 4.多维分析是指对以“维”形式组织起来的数据(多维数据集)采取切片(Slice)、切块(dice)、钻取(Drill-down 和Roll-up 等)和旋转(pivot)等各种分析动作,以求剖析数据,使用户能从不同角度、不同侧面观察数据仓库中的数据,从而深入理解多维数据集中的信息。 5. ROLAP是基于关系数据库的OLAP实现,而MOLAP是基于多维数据结构组织的OLAP实现。 6.数据仓库按照其开发过程,其关键环节包括数据抽取、数据存储与管理和数据表现等。 7.数据仓库系统的体系结构根据应用需求的不同,可以分为以下4种类型:两层架构、独立型数据集市、依赖型数据集市和操作型数据存储、逻辑型数据集市和实时数据仓库。 8.操作型数据存储实际上是一个集成的、面向主题的、可更新的、当前值的(但是可“挥发”的)、企业级的、详细的数据库,也叫运营数据存储。 9.“实时数据仓库”意味着源数据系统、决策支持服务和数据仓库之间以一个接近实时的速度交换数据和业务规则。 10.从应用的角度看,数据仓库的发展演变可以归纳为5个阶段:以报表为主、以分析为主、以预测模型为主、以营运导向为主、以实时数据仓库和自动决策为主。 11.什么是数据仓库?数据仓库的特点主要有哪些? 答:数据仓库就是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,通常用于辅助决策支持。 数据仓库的特点包含以下几个方面:(1)面向主题。操作型数据库的数据组织是面向事务处理任务,各个业务系统之间各自分离;而数据仓库中的数据是按照一定的主题域进行组织。主题是一个抽象的概念,是指用户使用数据仓库进行决策时所关心的重点领域,一个主题通常与多个操作型业务系统或外部档案数据相关。(2)集成的。面向事务处理的操作型数据库通常与某些特定的应用相关,数据库之间相互独立,并且往往是异构的。而数据仓库中的数据是在对原有分散的数据库数据作抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企事业单位一致的全局信息。也就是说存放在数据仓库中的数据应使用一致的命名规则、格式、编码结构和相关特性来定义。(3)相对稳定的。操作型数据库中的数据通常实时更新,数据根据需要及时发生变化。数据仓库的数据主要供单位决策分析之用,对所涉及的数据操作主要是数据查询和加载,一旦某个数据加载到数据仓库以后,一般情况下将作为数据档案长期保存,几乎不再做修改和删除操作,也就是说针对数据仓库,通常有大量的查询操作及少量定期的加载(或刷新)操作。(4)反映历史变化。操作型数据库(OLTP)主要关心当前某一个时间段内的数据,而数据仓库中的数据通常包含较久远的历史数据,因此总是包括一个时间维,以便可以研究趋势和变化。数据仓库系统通常记录了一个单位从过去某一时点(如开始启用数据仓库系统的时点)到目前的所有时期的信息,通过这些信息,可以对单位的发展历程和未来趋势做出定量分析和预测。 12. 简述数据仓库4种体系结构的异同点及其适用性。 答:(1)两层架构(Generic Two-Level Architecture)。 (2)独立型数据集市(Independent Data Mart)。 (3)依赖型数据集市和操作型数据存储(Dependent Data Mart and Operational Data Store)。 (4)逻辑型数据集市和实时数据仓库(Logical Data Mart and Real-Time Data Warehouse)。 13. 答:数据仓库技术的发展包括数据抽取、存储管理、数据表现和方法论等方面。在数据抽取方面,未来的技术发展将集中在系统集成化方面。它将互连、转换、复制、调度、监控纳入标准化的统一管理,以适应数据仓库本身或数据源可能的变化,使系统更便于管理和维护。在数据管理方面,未来的发展将使数据库厂商明确推出数据仓库引擎,作为数据仓库服务器产品与数据库服务器并驾齐驱。在这一方面,

数据仓库基本架构

数据仓库的基本架构 xiaoyi发表于 2013-07-31 23:57 来源:网站数据分析 数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持(Decision Support)。其实数据仓库本身并不“生产”任何数据,同时自身也不需要“消费”任何的数据,数据来源于外部,并且开放给外部应用,这也是为什么叫“仓库”,而不叫“工厂”的原因。因此数据仓库的基本架构主要包含的是数据流入流出的过程,可以分为三层——源数据、数据仓库、数据应用: 从图中可以看出数据仓库的数据来源于不同的源数据,并提供多样的数据应用,数据自上而下流入数据仓库后向上层开放应用,而数据仓库只是中间集成化数据管理的一个平台。 数据仓库从各数据源获取数据及在数据仓库内的数据转换和流动都可以认为是ETL(抽取Extra, 转化Transfer, 装载Load)的过程,ETL是数据仓库的流水线,也可以认为是数据仓库的血液,它维系着数据仓库中数据的新陈代谢,而数据仓库日常的管理和维护工作的大部分精力就是保持ETL的正常和稳定。 下面主要简单介绍下数据仓库架构中的各个模块,当然这里所介绍的数据仓库主要是指网站数据仓库。 数据仓库的数据来源

其实之前的一篇文章已经介绍过数据仓库各种源数据的类型——数据仓库的源数据类型,所以这里不再详细介绍。 对于网站数据仓库而言,点击流日志是一块主要的数据来源,它是网站分析的基础数据;当然网站的数据库数据也并不可少,其记录这网站运营的数据及各种用户操作的结果,对于分析网站Outcome这类数据更加精准;其他是网站内外部可能产生的文档及其它各类对于公司决策有用的数据。 数据仓库的数据存储 源数据通过ETL的日常任务调度导出,并经过转换后以特性的形式存入数据仓库。其实这个过程一直有很大的争议,就是到底数据仓库需不需要储存细节数据,一方的观点是数据仓库面向分析,所以只要存储特定需求的多维分析模型;另一方的观点是数据仓库先要建立和维护细节数据,再根据需求聚合和处理细节数据生成特定的分析模型。我比较偏向后面一个观点:数据仓库并不需要储存所有的原始数据,但数据仓库需要储存细节数据,并且导入的数据必须经过整理和转换使其面向主题。简单地解释下: (1).为什么不需要所有原始数据?数据仓库面向分析处理,但是某些源数据对于分析而言没有价值或者其可能产生的价值远低于储存这些数据所需要的数据仓库的实现和性能上的成本。比如我们知道用户的省份、城市足够,至于用户究竟住哪里可能只是物流商关心的事,或者用户在博客的评论内容可能只是文本挖掘会有需要,但将这些冗长的评论文本存在数据仓库就得不偿失;

BI_数据仓库基础

1 BI Business Intelligence,即商业智能,商务智能综合企业所有沉淀下来的信息,用科学的分析方法,为企业领导提供科学决策信息的过程。 BOSS业务运营支撑系 BPM企业绩效管理 BPR业务流程重整 CRM客户关系管理 CUBE立方体 DM(Datamart)数据集市数据仓库的子集,它含有较少的主题域且历史时间更短数据量更少,一般只能为某个局部范围内的管理人员服务,因此也称之为部门级数据仓库。 DM(DataMine)数据挖掘 DSS决策支持系统 EDM企业数据模型 3 ERP Enterprise Resourse Planning企业资源规划。它是一个以管理会计为核心的信息系统,识别和规划企业资源,从而获取客户订单,完成加工和交付,最后得到客户付款。换言之,ERP将企业内部所有资源整合在一起,对八个采购、生产、成本、库存、分销、运输、财务、人力资源进行规划,从而达到最佳资源组合,取得最佳效益。 4 ETL 数据抽取(Extract)、转换(Transform)、清洗(Cleansing)、装载(Load)的过程。构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终 按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。 KDD数据库中知识发现 5 KPI 企业关键业绩指标(KPI:KeyProcessIndication)是通过对组织内部流程的输入端、输出端的关键参数进行设臵、取样、计算、分析,衡量流程绩效的一种目标式量化管理指标,是把企业的战略目标分解为可操作的工作目标的工具,是企业绩效管理的基础。 LDM逻辑数据模型 6 MDD 多维数据库(Multi Dimesional Database,MDD)可以简单地理解为:将数据存放在一个n维数组中,而不是像关系数据库那样以记录的形式存放。因此它存在大量稀疏矩阵,人们可以通过多维视图来观察数据。多维数据库增加了一个时间维,与关系数据库相比,它的优势在于可以提高数据处理速度,加快反应时间,提高查询效率。 Metadata(元数据),它是“关于数据的数据,其内容主要包括数据仓库的数据字典、数据的定义、数据的抽取规则、数据的转换规则、数据加载频率等信息。 MOLAP自行建立了多维数据库,来存放联机分析系统数据 7 ODS(四个特点) (Oprational Data Store)操作型数据存储,是建立在数据准备区和数据仓库之间的一个部件。用来满足企业集成的、综合的操作型处理需要,操作数据存储是个可选的部件。对于一些准实时的业务数据库当中的数据的暂时存储,支持一些同时关连到历史数据与实时数据分

数据仓库与数据库

数据仓库与数据库的区别 简而言之,数据库是面向事务的设计,数据仓库是面向主题设计的。 数据库一般存储在线交易数据,数据仓库存储的一般是历史数据。 数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计。 数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。维是看问题的角度,比如时间,部门,维表放的就是这些东西的定义,事实表里放着要查询的数据,同时有维的ID。 单从概念上讲,有些晦涩。任何技术都是为应用服务的,结合应用可以很容易地理解。以银行业务为例。数据库是事务系统的数据平台,客户在银行做的每笔交易都会写入数据库,被记录下来,这里,可以简单地理解为用数据库记帐。数据仓库是分析系统的数据平台,它从事务系统获取数据,并做汇总、加工,为决策者提供决策的依据。比如,某银行某分行一个月发生多少交易,该分行当前存款余额是多少。如果存款又多,消费交易又多,那么该地区就有必要设立ATM 了。 显然,银行的交易量是巨大的,通常以百万甚至千万次来计算。事务系统是实时的,这就要求时效性,客户存一笔钱需要几十秒是无法忍受的,这就要求数据库只能存储很短一段时间的数据。而分析系统是事后的,它要提供关注时间段内所有的有效数据。这些数据是海量的,汇总计算起来也要慢一些,但是,只要能够提供有效的分析数据就达到目的了。 数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它决不是所谓的“大型数据库”。那么,数据仓库与传统数据库比较,有哪些不同呢?让我们先看看W.H.Inmon关于数据仓库的定义:面向主题的、集成的、与时间相关且不可修改的数据集合。 “面向主题的”:传统数据库主要是为应用程序进行数据处理,未必按照同一主题存储数据;数据仓库侧重于数据分析工作,是按照主题存储的。这一点,类似于传统农贸市场与超市的区别—市场里面,白菜、萝卜、香菜会在一个摊位上,

数据仓库与数据挖掘(陈志泊)_复习题答案

数据仓库与数据挖掘习题答案 第1章数据仓库的概念与体系结构 1. 面向主题的,相对稳定的。 2. 技术元数据,业务元数据。 3. 联机分析处理OLAP。 4. 切片(Slice),钻取(Drill-down和Roll-up等)。 5. 基于关系数据库。 6. 数据抽取,数据存储与管理。 7. 两层架构,独立型数据集市,依赖型数据集市和操作型数据存储,逻辑型数据集市和实时数据仓库。 8. 可更新的,当前值的。 9. 接近实时。 10. 以报表为主,以分析为主,以预测模型为主,以营运导向为主。 11. 答: 数据仓库就是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,通常用于辅助决策支持。 数据仓库的特点包含以下几个方面: (1)面向主题。操作型数据库的数据组织是面向事务处理任务,各个业务系统之间各自分离;而数据仓库中的数据是按照一定的主题域进行组织。主题是一个抽象的概念,是指用户使用数据仓库进行决策时所关心的重点领域,一个主题通常与多个操作型业务系统或外部档案数据相关。 (2)集成的。面向事务处理的操作型数据库通常与某些特定的应用相关,数据库之间相互独立,并且往往是异构的。而数据仓库中的数据是在对原有分散的数据库数据作抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企事业单位一致的全局信息。也就是说存放在数据仓库中的数据应使用一致的命名规则、格式、编码结构和相关特性来定义。 (3)相对稳定的。操作型数据库中的数据通常实时更新,数据根据需要及时发生变化。数据仓库的数据主要供单位决策分析之用,对所涉及的数据操作主要是数据查询和加载,一旦某个数据加载到数据仓库以后,一般情况下将作为数据档案长期保存,几乎不再做修改和删除操作,也就是说针对数据仓库,通常有大量的查询操作及少量定期的加载(或刷新)操作。 (4)反映历史变化。操作型数据库(OLTP)主要关心当前某一个时间段内的数据,而数据仓库中的数据通常包含较久远的历史数据,因此总是包括一个时间维,以便可以研究趋势和变化。数据仓库系统通常记录了一个单位从过去某一时点(如开始启用数据仓库系统的时点)到目前的所有时期的信息,通过这些信息,可以对单位的发展历程和未来趋势做出定量分析和预测。 12. 答: (1)两层架构(Generic Two-Level Architecture)。 (2)独立型数据集市(Independent Data Mart)。 (3)依赖型数据集市和操作型数据存储(Dependent Data Mart and Operational Data Store)。 (4)逻辑型数据集市和实时数据仓库(Logical Data Mart and Real-Time Data

相关文档
最新文档