从数据库到数据仓库_陈前林

从数据库到数据仓库_陈前林
从数据库到数据仓库_陈前林

第19卷第3期湖 北 工 学 院 学 报2004年6月Vol.19No.3 Journal of Hubei Polytechnic University Jun.2004

[收稿日期]2004-03-01

[基金项目]国家863项目(2003AA414011)和武汉市重大科技计划项目(20023005133-04).

[作者简介]陈前林(1980-),男,湖北大冶人,武汉理工大学硕士研究生,研究方向:数据挖掘.

[文章编号]1003-4684(2004)06-0113-03

从数据库到数据仓库

陈前林,陈定方,李和平

(武汉理工大学智能制造与控制研究所,湖北武汉430063)

[摘 要]通过对数据库技术发展的追溯,介绍了数据仓库的概念、产生、来源及其与数据库的区别,最后探讨了数据仓库的应用前景.

[关键词]数据处理;数据库;数据仓库;数据挖掘;OL AP [中图分类号]T P311.132

[文献标识码]:A

1 数据库技术发展概述

数据处理主要就是对数据的管理[1].它主要完成对数据的分类、组织、编码、存储、检索和维护等功能.这也是数据处理的中心问题.近半个世纪以来,数据管理经历了三个发展阶段,分别是人工管理阶段,文件系统阶段和数据库系统阶段,数据仓库是数据库技术的进一步发展.

20世纪中期以前,计算机主要用于科学计算,计算机本身都不带有存储设备,也没有操作系统的概念,数据处理只有批处理方式.所有数据都不在计算机上保存,由应用程序员管理.应用程序员不仅要规定数据的逻辑结构,而且还要在应用程序中设计物理结构,包括规定数据的存储结构,存取方式等.20世纪50年代后期到60年代中期,数据处理处于文件系统阶段.计算机上出现了磁盘、磁鼓等随机存取设备,文件系统成为了专门的数据管理软件.这样,数据可以长期保存.并且,用文件系统来管理数据,使程序和数据之间有了一定的独立性,尽管这种独立性不是很强.此时的应用程序设计者必须对所用文件的逻辑结构及物理结构有清楚的了解,并且,由于文件系统仅提供了读、写等几个低级的文件操作命令,因而对文件的查询、修改、插入和删除等操作必须在应用程序内编写相应的程序代码来解决.这使得文件也是专门为某一特定的应用程序服务的,且编写应用程序的生产率不高,数据冗余度大.

20世纪60代后期以来,数据管理进入了数据库系统阶段.这一时期,计算机具有了庞大容量的存储设备和高速的信息处理能力.计算机软件、硬件都飞速发展,信息急剧膨胀;数据库技术也不断发展.数据库按照某种数据模型组织数据,不仅文件内部数据彼此相关,而且文件之间在结构上也有机地联系在一起.描述数据时,不仅描述数据本身,也描述数据之间的联系.在数据库中,数据也不再分属于各个应用程序,而是集中存放在数据库中,实行统一控制.这一时期,也出现了专门的数据库系统.

1969年,美国的IBM 公司开发了第一个数据库系统IMS (Information M anagement System ).这是一个层次数据库系统,在数据库系统发展史上有着重要的地位.同年,美国的数据系统语言委员会下属的数据库任务组提出了著名的DBT G 报告,并在1970年提出了该报告的修订版.这分报告定义了数据库操纵语言、模式定义语言和子模式定义语言的概念.数据库操纵语言用于编写操纵概念视图的应用程序,模式定义语言用来编写概念视图和内部视图相结合的模式程序.在20世纪70年代,开发了许多遵循DBTG 报告的网状数据库系统,如IDMS,IDS,DMSIIOO 等.20世纪70年代初,IBM 公司下属的San Jose 研究所的E.F.Codd 发表了题为 大型共享数据库数据的关系模型 的论文.他在论文中提出了关系数据模型的概念.他提出的关系代数和关系演算,使关系数据库从理论到实践都取得了辉煌的成果.在理论上,确立了完整的关系理论,数据

依赖理论以及关系数据库的设计理论等.在实践上,开发了许多著名的关系数据库系统,如system R, INGRES,ORACLR等.1986年,美国国家标准协会(ANSI)通过了关系数据库查询语言SQL的文本标准.

在20世纪80年代以后,随着计算机硬件技术的提高,计算机应用不断深入,从而产生了许多新的应用领域,如:计算机辅助设计、计算机辅助制造、计算机集成制造、办公自动化、物理信息处理、智能信息处理等.这些新的应用领域对数据库系统提出了新的要求.由于没能设计出一个统一的数据模型来表示这些新型数据及其相互联系,出现了百家争鸣的局面,产生了演绎数据库(逻辑数据库,知识库)、面向对象数据库,工程数据库,时态数据库,地理数据库、模糊数据库、积极数据库等新型数据库的研究.到20世纪80年代后期和90年代初期,出现了面向对象数据库系统,如Gem Stone,VBASE,ORI-ON,Iris等.但是,到目前为止,真正的新一代的数据库系统还没有出现.

2 数据仓库的出现

各种各样的数据库系统正在不断地发展和完善.当前的商业、企业管理的数据处理大致可以分成两类:操作型处理和分析型处理.操作型处理也叫事务处理,一般是针对非常具体的业务,是对数据库联机的日常操作,通常是对一个或一组记录的查询和修改,主要是为特定的应用服务的.人们关心的是响应时间、数据的安全性和完整性.分析型处理一般是针对某个主题,在时间段上有比较长的延伸,它操作的是大量的数据甚至是海量的,这些数据是操作型数据的一种积累和遴选,它主要是面向决策支持的.

数据库系统在相当长的时间内作为数据管理的主要手段,它从诞生起,就主要用于事务处理,经过数十年的发展,在这些数据库中已经保存了大量的日常业务数据.传统的业务系统一般是直接建立在这种事物处理环境上的.随着技术的进步,人们试图让计算机担任更多的工作,而数据库技术也一直力图使自己能胜任从事务处理、批处理到分析处理的各种类型的信息处理任务.后来人们逐渐认识到,在目前的计算机处理能力上,根本无法实现这种功能,而且,在另一方面,事务处理和分析处理具有极不相同的性质,直接用事务处理环境来支持决策是行不通的.

事务处理环境不适宜决策应用的原因如下:首先,在事务处理环境中,用户一般是具体的工作人员,他们的行为特点是数据的存取操作,且不知道信息对决策的用处,操作的频率高而且每次操作处理的时间短;在分析处理环境中,用户是企业的高级管理人员,是信息的探索者,他们的主要目的是将产生的数据抽象为信息,以便决策.其行为模式与事务处理环境的用户行为完全不同,他们可能会使一个决策支持系统DSS(Decision-making Support Sys-tem)[2]应用程序连续工作几个小时,从而消耗大量的系统资源.其次,DSS需要集成的、即时更新的、历史的、综合的数据.全面而正确的数据是有效分析和决策的首要前提,相关数据收集得越完整,得到的结果就越可靠.当前,绝大多数企业数据的真正状况是分散而非集成的,在事务处理环境中,部分历史记录甚至被搁置起来成为浪费的资源.

近年来,随着数据库技术的应用和发展,人们尝试对数据库中的数据进行再加工,形成一个综合的、面向分析的环境,以更好的支持决策分析,从而形成数据仓库技术(Data Warehousing,简称DW).作为DSS数据仓库系统包括:数据仓库技术;联机分析处理技术(On-Line Analytical Processing,OLAP);数据挖掘技术(Data Mining,DM)三个方面[1].

如果说传统的联机事务处理强调的是更新数据库,即向数据库中添加信息,那么数据仓库针对的联机分析处理强调的则是从数据库中获取信息,利用信息.20年以前查不到所需要的数据是因为数据太少了,而今天查询不到数据是因为数据太多了.著名的数据仓库专家Ralph Kimball写道: 我们花了20多年的时间将数据放入数据库,如今是该将它们拿出来的时候了. 数据仓库正因此需要而诞生.

3 数据库与数据仓库的区别

数据仓库是数据库系统发展到一定阶段的一种必然要求.数据仓库是在数据库发展的基础上产生的,和数据库有着密不可分的联系,从某种意义上讲,数据仓库可以称为大的数据库,只是按照不同的主题和技术来组织数据.建立数据仓库并不是要取代原有的运作数据库系统,建立数据仓库的目的是为了将企业多年来已经收集到的数据按照一个统一的,一致的企业级视图组织、存储,对这些数据进行分析,从中得出有关企业经营好坏、客户需求、对手情况、以后发展趋势等有用信息,帮助企业及时、准确地把握机会.

W.H.Inmon在其 Building The Data Ware-House ( 建立数据仓库 )一书中,列出了操作型数据与分析型数据之间的区别,也就是数据库与数据

114湖 北 工 学 院 学 报 2004年第3期

仓库的主要区别,如表1所示.

表1 操作型数据与分析型数据之间的区别

操作型数据分析型数据

细节的综合的或者可提炼的在存取瞬间是准确的代表过去的数据

可更新的不更新

操作需求事先可知道操作需求事先不知道

对性能要求高对性能要求宽松一个时刻操作一个单元一个时刻操作一个集合

事务驱动分析驱动

面向应用面向分析

一次操作数据量小一次操作数据量大

支持日常操作支持管理需求

数据库一般是面向业务的,使用者是企业的一般管理人员,进行企业日常的数据处理和维护工作;数据仓库是面向决策的,使用者是企业的高层管理人员,它也是使用关系数据库,但数据仓库并不负责处理业务,而是把企业运行数据收集后用于分析和决策,它的数据来源是企业的业务数据库,甚至EX-CEL表格或者文本文件.数据库注重的是企业运行的当前数据,任务是收集和记录企业的原始业务数据;而数据仓库面对的是非即时性的数据,任务是通过提取企业的业务数据,并经过加工和处理来呈现给企业的决策人员.

4 数据仓库的应用

21世纪是信息世纪.在目前竞争激烈的知识经济环境和电子商务经济模式下,重要的信息往往可以决定企业的成败,甚至决定企业的生死存亡.数据仓库技术以其强大的信息处理能力,将被广泛地应用到国民经济的各行各业中,它可以充当企业决策机构的电子智囊和电子参谋.如民航订票系统、银行ATM系统、证券交易系统、期货交易系统、铁路售票系统、移动通信用户信息管理与服务系统等就是建立在大型数据库基础之上的,需要完善为数据仓库.

在证券行业,证券公司利用客户行为分析系统将所有客户的操作记录进行归类和整理,并结合行情走势、上市公司资料、宏观微观经济数据等,在掌握大量数据的情况下,对客户的行为和市场各因素的关联、客户的操作习惯、盈亏情况、公司的利润分布等进行统计和分析,从而获得以往一直想获得但却无法获取的关于客户在本公司的行为、盈亏、习惯等关键信息.证券商在获得这些信息后,就有能力为客户提供针对其个人习惯、投资组合的投资建议,从而真正作到对客户的贴心服务.

在银行业,随着社会主义市场经济改革的深化,传统的计划金融模式逐渐瓦解,市场金融模式逐渐形成.在这个变革过程中,由于体制、市场、企业、个体等经济要素变化、发展的不平衡性,带来了银行对各种金融变量控制的随机性和模糊性.如何防范银行的经营风险、实现科学管理以及进行决策,已经成为当今金融研究的一个重要课题.利用数据仓库的强大功能,银行可以建立企业客户群、个人客户群的数据库,并对企业的结构、经营、财务、市场竞争等多个数据源进行统一的组织,形成一个一体化的存储结构,为决策分析奠定基础.通过先进的信息加工、分析、处理软件,加上银行的经营决策、信贷营销人员的个人经验,对每一个投资方向、每一笔贷款做出科学的判断,可以有效控制投资、信贷风险.

数据仓库的应用远远不仅如此.近年来,生物学的发展颇引人注目,有关生物的信息更是爆炸式增长,对生物信息的整理归纳向来都是比较棘手的问题,已经有学者将目光转向数据仓库技术,希望利用数据仓库技术可以揭示出生物遗传进化上的规律.

在机械工程行业,随着产品品种的多样化和设计/制造过程的数字化,以往成功的产品或者设计案例、工艺规程,经过数据仓库的整合,可以提高设计/制造过程的智能化水平,基于实例的设计(CBD)将有可能得到更加丰富的技术 产品 客户资源的支持.能源型企业资源型企业制造业企业物流企业客户之间的物流、信息流、资金流将更加畅通;需求链、供应链和客户关系管理将更加有效.数据进行再加工的水平、海量数据的可视化水平、数据的安全性和完整性将得到显著提高,基于数据仓库的分布式虚拟设计/制造有可能得到很大的发展;个性化的大规模订制,虚拟设计、虚拟分析、虚拟制造、虚拟装配、虚拟实验,以至虚拟企业、全球制造、再制造都会进入一个更加高级的阶段.

总之,随着社会的发展,数据仓库的应用范围也必将越来越大.它也必将发展的更加完善.

[ 参 考 文 献 ]

[1] Efem G.M allach.决策支持与数据仓库系统[M].李昭

智,李昭勇译.北京:电子工业出版社,2001.

[2] 王 珊,李盛恩.数据库基础与应用[M].北京:人民邮

电出版社,2002.

(下转第118页)

115

第19卷第3期 陈前林等 从数据库到数据仓库

年减少到5年,设计、装机、测试均是在计算机中模拟完成,初步做到无纸设计,保证了一次试制成功.其它如在克莱斯勒公司,己常采用虚拟产品建模.在福特汽车公司,虚拟分析样机已很普遍.

虚拟样机技术有着广阔的发展前景及市场.它面向系统的全生命周期和全系统,使研究、开发人员和使用者之间的联系更为有效,加速了新技术向产品转化的开发、研制与使用过程,并通过全生命周期协同利用强健的仿真技术来降低技术风险、提高产品质量、缩短研制周期、降低成本、增强企业竞争力.在我国,虚拟样机技术正在引起重视,通过深入研究虚拟样机的关键技术,进一步探讨虚拟样机的有效开发模式,尤其是开发过程所涉及的各类活动的协调、管理和优化策略,必将促进这一先进制造技术的推广应用,增强我国企业的产品开发能力,提高我国企业在世界制造业中的地位.

[ 参 考 文 献 ]

[1] Bossak M A.Simulation based design[J].Journal of M a-

terials P rocessing T echnolog y,1998,76(1~3):8-11.

[2] 胡 平.虚拟工程与科学[M].北京:气象出版社,

2001.

[3] 潘 军.虚拟产品开发及其仿真模型的研究与应用

[J].计算机集成制造系统,2002,8(9):684-689. [4] 丁良旭.虚拟技术与汽车工业[J].汽车工业研究,

2001,10(3):32-36.

[5] 李智峰.基于虚拟样机的整车系统动力学研究[J].上

海汽车,2002,9(2):8-10.

Research on Virtual Prototype Technology of Mechanical

and Electrical Products and Its Prospects

YI Jun,AN Ning,LIU Xiao-peng

(School o f M echanical Engin.,H ubei Polytechnic Univ.,Wuhan430068,China)

Abstract:Virtual prototype technolog y is a new method of products development,including mult-i body system kinematics and dynam ics theory.The total technolog y of virtual prototype system,system modeling and simula-tion technology are researched.The prospects of virtual prototype technology of products are presented. Keywords:mechatronics;v irtual prototy pe;modeling

[责任编辑:张岩芳] (上接第115页)

From Database to Data WareHouse

CHEN Qian-lin,CHENn Ding-fang,LI H e-ping

(Resear ch I nst.of Intelligent Manuf.and Control,Wuhan Univ.of T ech.,W uhan430063,China)

Abstract:Now the data processing in a company is alw ays be transaction processing.But the data that a man-ager needs is not that kind of detail data.Managers need all_sided,integrated and compositive data.So Data WareHouse is coming.Throug h ascending to the developing process of the database technology,this paper tell the idea of w hat Data WareHouse is,how Data WareHousecame intobeing and the difference betw een Database and Data WareHouse.

Keywords:data processing;database;data wareHouse;data mining;OLAP

[责任编辑:张培炼] 118湖 北 工 学 院 学 报 2004年第3期

数据仓库模型的设计

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

相关文档
最新文档