范文一:建立数据仓库 如何建立数据仓库
导读:就爱阅读网友为您分享以下“如何建立数据仓库”资讯,希望对您有所帮助,感谢您对92to.com的支持!
如何建立数据仓库:建立数据仓库的基本准则 疯狂代码 http://www.crazycoder.cn/ ?:http:/www.crazycoder.cn/DataBase/Article17271.html
数据仓库应用具有从多个分散的部门级系统中捕捉大量共享信息的能力。它们可以将机构的原始数据有效地转化为有用的知识信息,于是这些知识信息就可以被用来进行战略决策支持,从而提高企业效益。在一个先进的数据仓库应用的帮助下,企业决策者可以从质量、区域收入和产量等基本面上对企业性能进行跟踪,并基于这些可靠的信息采取快速、明智的行动。
本文将阐述建立数据仓库的八条规则,尤其是如何建立第一个数据仓库。实际上,对于如何建立一个成功的数据仓
1
库,现实中不存在也根本不可能存在一个涵盖万千、放之四海而皆准的”宝书”。几乎可以肯定的是,在建立第一个数据仓库的时候,用户肯定会犯错误,这是不可避免的。本文的规则的意义仅仅在于,帮助用户避免一些已知的缺陷。而对于那些不可避免的必然错误,这些规则会尽可能地帮助用户减轻可能带来的危害。
规则一:从小处着手
不要一上来就要完成一个大规模的企业范围的数据仓库,这样会使用户陷入逻辑、行政和财政的泥沼中而不能自拔。
数据仓库不是越大越有效,较小系统的价值对机构来讲可能会很大。例如,用户可以将第一个数据仓库的实现定位于一个特定的部门和应用或者业务线。初始时采用规模向下的数据集市可以降低开发成本,缩短实现周期,并有助于为未来的数据仓库的发展培训IT人员。
规则二:向大处考虑
即使在建立第一个面向特定部门或特定应用的数据集
2
市时,也一定要保证现在所使用的数据模型能够向将来企业范围的数据存储扩展,以便于将来其他数据集市和战略数据仓库的实现。
必须在部门之间进行一致性数据定义,并使每个人都遵守。例如,如何构成一个”销售体系”?是预约登记、开发票还是付款?在这些定义上的一致性协议会使以后部门数据的联合成为可行、有效。
规则三:定义目标和量化收益
在项目开始实施以前,用户必须明确回答几个问题。我们为什么要建立一个数据仓库?项目的目的同我们机构的任务一致吗?哪些问题是我们致力于要去解决的?要考虑及时推入市场、质量和客户满意度等因素吗?
在进行了目标问题的认知以后,应该认清哪些是关键性的影响成功的因素,以便于在解决方案的实施进程中进行跟踪。例如,收益和运输单位(units shipped)可能是对丧失市场份额产生作用的两个影响因素。
在确立了这些关键的成功影响因素以后,用户就可以在应用中设置”自动水开标记或警报”。这些警报保证对底层
3
产生直接影响的最重要数据是清晰可见的,便于及时采取行动。定义了成功的影响因素后,在使用数据仓库时就可以检测到威胁成功的因素。
一旦这些基本目标确立以后,下一个基本要求是对来自数据仓库的可预期的收益进行量化。只有在做了这些工作以后,管理层才会有据可依地判断一个数据仓库的成功与否。
量化的目标不一定非是数字或金融表达式,它们只需要明确、有意义即可。
许多机构都采用金融衡量标准,比如ROI,来对收益进行量化。IDC对62家数据仓库的实现进行研究表明,在数据仓库项目上的总体ROI为401%,平均回报时间为2,3年。数据集市的ROI经检验为533%。其他类型的收益衡量标准还包括成本节约程度以及可获得的能够进行衡量的效率。
规则四:取得最高管理层的支持和认可
数据仓库中涉及到信息的共享,这必然会由于部门数据所有者的人为因素造成失控。在数据所有权和数据存放等问题上的内部纷争,很容易给数据仓库带来进程上的滞延和
4
失败。
这种数据上的”割据”必须在项目的开始就立即加以解决。理想的情况是,公司最高管理层的一个或者几个成员能够为数据仓库进行部门或部门之间的对象设置。管理层的支持有助于打破各个部门之间日益严重的由于数据保护而形成的行政壁垒。
在整个过程中,终端用户也是一个不可忽视的因素。如果那些首先进行数据输入的人员不了解数据仓库的意义,用户很容易地陷入一摊”垃圾”数据中。用户用来决策的数据应该同最初输入的数据一样好。
规则五:等待完美不会带来收益
如果已经进行了目标定义,明确了关键的成功影响因素,并且数据仓库项目的规模得到了合理的控制,那么就不要永久地等待下去,因为这样下去什么也不会得到。尽快行动起来,开始分享数据仓库投资带来的回报。用户不应拘泥于所谓的”完美”不放,一旦客户开始访问到新数据仓库中的信息,研究结果展现在他们的面前,他们很快会发现自己需要更多的信息和更详细的细节。
5
研究表明,数据仓库以每年大约40%的速率在增长。随着用户需求的发展,应用能够不断修改与之适应。这种方式是一个”垒砖”的方式,迈向数据仓库的第一步路就是快速实现它。
规则六:选择能够与用户需求匹配的系统
如上所述,要认识到数据仓库将可能以每年递增40%或更多的速度增长。同时要认识到,用户和职员不可能非常准确地预料到系统上的初始和未来负载的情况。这种固有的精确度的缺乏就需要软件和硬件具有可伸缩性,能够容纳更多的客户、进程和存储的发展。
这种性能必须在设计的开始就考虑进去。否则,就可能因设置过大而超出系统的适用范围,白白将投资浪费掉。
规则七:要确保数据仓库工具协作使用
尽管数据仓库市场已经进入了第二代,它仍然是不成熟的。其表现为过多过剩的产品,有太多的厂家而无明确的领导者,导致了行业上的竞争,使购买决策变得困难。这使得那些想对来自多厂家的数据仓库工具和应用进行集成的厂商
6
感到惶惑不知所措。同其他信息技术领域不同,如TCP/IP对于网络,RISC/UNIX对于企业级计算,SMTP对于消息传递,HTML和Java对于Web等,可靠的、被广泛接受的数据仓库标准还不存在。
在集成多厂家的数据仓库工具时,IT人员由于缺少了明确定义的标准的指导,而使数据仓库的实施从一开始就处于风险中。一些大一点的厂家通过将他们的产品与其他厂家的产品进行捆绑来降低风险,并做一些集成。
规则八:关系的价值
在建立第一个数据仓库时,选择正确的合作伙伴是很关键的,包括顾问、分销商以及软件和硬件的厂家。
选择合作伙伴一是基于其能力,二是基于其具有长期同舟共济的愿望。要自问一下,这个厂家在初始实现以后是否还会积极地帮助我解决面临的问题?这个厂家现在在我的机构中的投资是什么?随着我们的项目的继续推进,情况会是什么样子?
当困难接踵而至的时候,对运作中的其他方面不感兴趣的合作伙伴将很难与其保持真诚的合作。
当寻找能够维持长期合作关系的合作伙伴的时候(通
7
常是行业内已经建立关系的),一定要注意自己内在的感受。例如,在对行业中某个公司的一位资深顾问进行考察,以探察其对特定应用领域的数据集市的实现经验时,一定要保证能够与之合作。想要取得成功,就必须能够与所有的厂家和合作伙伴进行有效的合作和交流。
上面列出的大多数规则集中在人的问题上:计划、定义、协调、实践、完美。这一点也不出人意料,因为数据仓库的建立就是为了一件事情:帮助人们实实在在地更好地进行决策。
在过去,人为”机器”服务。人按照机器所需要的格式装载数据,使用机器所定义的查询类型来检索信息。而今,数据仓库打破了这种传统关系。用户成为机器的主人,而不是它的奴隶。但是,自由就意味着责任。获得自由的人必须要学会全面地考虑问题,设立目标,协商取得一致,深思熟虑再做选择,然后果断采取行动。 2008-9-26 0:19:31
疯狂代码 http://www.crazycoder.cn/
百度搜索“就爱阅读”,专业资料,生活学习,尽在就爱阅读网92to.com,您的在线图书馆
8
范文二:如何建立企业级数据仓库
信息系统工程 │ 2010.8.20
EXCHANGE OF EXPERIENCE 经验交流
1.引言
企业实施信息化的路线遵循信息技术发展的路线,同时推 动和完善着信息技术的发展。这在应用系统的发展上就可以明 显地看出来。企业的应用系统最早会以部门为单位,在其需求 基础上设计和完成部门核心业务的数据库系统,如财务、销售 及库存等系统。当发现这些分散的业务数据库仍不能满足企业 对信息获取的需求时,会实施一个全企业范围内覆盖各业务部 门的大应用系统,即ERP系统。基于ERP(OLTP)之上的数据 仓库(OLAP)也随之诞生。本文围绕企业对数据利用的需求不 断增强而衍生出的数据仓库技术进行了论述,并提出了建立企 业级数据仓库的实施方法,在考虑采取何种方式建立企业级数 据仓库时,需要结合企业自身的特点和实际情况进行评定。
2.企业建立数据仓库的意义
2.1 系统演变的历史证明建立数据仓库的重要性
数据仓库是从数据库演变而来的。“蜘蛛网”现象使得企 业不同部门间的数据提取多次发生,数据分析的结果缺乏可靠 性,数据处理的效率低,数据难于转化为信息。这种问题必须 从技术体系架构上进行变革,从而使企业将操作型环境和分析 型环境相分离,将原先以数据库(多个部门级MIS系统)为中心 的生产环境转变为以数据仓库为中心的生产环境。
2.2 事务型系统(如ERP等系统)的实施推动建立数据仓库 随着企业信息化的不断推进,原有的数据库应用从部门级 单一应用扩展到集团级的复杂应用,涉及到多业务板块和多级 单位,这种大规模的事务型ERP应用,为企业积累了海量的、 经过标准化的、较高质量的、共享的核心数据,如何利用这些 有价值的数据进行分析以获得对决策有意义的信息?这就是数 据仓库需要完成的任务。
3.与数据仓库(DW)建设相关的内容说明
根据Gartner Group预测的09年十大策略科技中,提到了商 务智能BI,那么BI与决策支持系统DSS、数据仓库又有什么关系 呢?其实,DSS与BI都指的是一回事,只不过BI更靠近最终用 户,DSS面对的是整个企业,数据仓库是实现DSS与BI的技术手 段。
Eric Thomsen1认为,数据仓库(DW)、决策支持 (DSS)和商务智能(BI)都是近年来在商业软件市场上的术 语,他把这些术语称作“伪技术术语”,这些术语掩盖了过去 15年中现实技术的进展情况。不管称呼如何随商业目的而变 迁,它们的目标都是一样的,即以最终用户为中心,依据数据 和信息的分析进行面向决策的处理。
3.1 ODS操作型数据存储(介于DB数据库与DW数据仓库 之间)
既然我们将事务型OLTP处理和分析型OLAP处理进行了划 分,那么是否不存在介于事务型与分析型之间的问题呢?答案 是否定的。如高层领导想了解3年内企业的销售发展趋势,可以 通过OLAP来解决,采购经理想知道需采购的生产材料的库存变 化情况,可以通过OLTP得到,而如果采购经理想短时间“拟定 进货清单”,不仅需要知道近期销售情况、近期的仓储情况与
如何建立企业级数据仓库
王小玲
(中国海洋石油总公司信息管理部技术中心 北京 100010)
摘要:企业数据仓库的建立对于企业管理具有重要的意义。不同企业须根据其自身特点和现实环境来选择建 设数据仓库的路线和方法。本文围绕对建设企业数据仓库相关关键点的论述简要介绍了不同的企业数据仓库建设 的实施方法。
关键词:OLTP;OLAP;DW;DSS;BI;ODS;BW ;CIF;VODS
货物最新价格、还需要知道财务的资金情况,这些信息虽然可 以通过数据仓库得到,但是其信息量非常大,不可能短时间内 给出。像这种问题,既不属于高层决策的问题,也不属于具体 的事务型问题,我们采用ODS操作型数据存储来处理。ODS用 于支持企业日常的全局应用的数据集合,应按照主题来组织, 并具有集成性和实时性(可联机修改)。目前我所在公司采用 的SAP BW中的ODS与此概念是基本一致,进入ODS的数据是 经过清洗和整理的,在实时性方面,新版本的ODS可以进行实 时修改。不过,因为预算对ODS的实时需求会多些,而我们现 在应用的ODS没有启用BW中的预算功能,所以ODS 的这个特 点并不明显。
当前国内的数据仓库一般都是从数据库阶段发展而来的, 其初期建设的需求来源大多是介于长期战略型分析报表与日常 管理类分析型报表的ODS类报表,所以在数据仓库中80%被 ODS操作型数据存储所占据。这种报表通过数据仓库工具设计 出来后,不仅开发成本较大,其数据颗粒度、实时性和性能又 无法与OLTP型报表相媲美,使得数据仓库的真正功能不能很好 地被高层领导所认识,整体上降低了对数据仓库价值的正确评 价。
3.2 数据仓库与外部数据(结构化与非结构化)
一个良好的决策支持系统必须能使决策者既了解企业内部 的情况,也能参考外部的信息。所以数据仓库应该能集成外部 的数据。外部的数据来源形式多样,可能本身就以数据库形式 (结构化的)存在的,也可能其存储结构和管理都是无规则的 (非结构化的),如声音、图像和文本等。外部结构化的数据 好处理,文本也是可进行处理的,那么,其他不可预测形式的 外部数据,该以何种方式处理呢?答案就是采用元数据的方式 来处理外部非结构化数据。所以,为了满足业务需求,数据仓 库可以通过很好地规划和设计来有效地集成外部数据。
3.2 数据仓库的“间接使用”与数据挖掘
数据仓库的数据都是取自于事务型系统OLTP,如ERP系统 等。数据的流向一般是从ERP单方向流向数据仓库BW。但是, 在一些应用中,数据仓库的分析结果会回流到ERP系统,为业 务系统提供有力的支持,这种情况称为数据仓库的“间接使 用”。
在SAP BW系统中有一个称为数据挖掘的工具,它可以将 BW系统的分析结果导入,经过处理后,生成新的分析结果,此 结果能作为其他分析的输入数据源。此项功能在整合不同来源 的数据时起到很好的效果,我们有将OLAP数据整合外部文本导 入的数据的成功案例。
数据仓库的大量历史数据为数据挖掘提供了条件,但是数 据挖掘还是一个非常专业的领域,我们不在此过多讨论。
4.实施数据仓库系统
基于以上围绕数据仓库所讨论的内容,我们谈如何实施数 据仓库系统。在此不采用按照项目生命周期及项目管理的方式 来谈,而围绕数据仓库实施的关键点来展开:
(1)数据仓库实施的时机;
(2)分布式数据仓库对建立企业数据仓库的影响;
(3)企业信息工厂(CIF)理论对建立企业数据仓库的影
EXCHANGE OF EXPERIENCE 经验交流
响;
(4)企业数据仓库建设采用TOP-DOWN还是BOTTOM-UP。
4.1 同步实施OLAP数据仓库系统与OLTP事务处理系统
国内实施SAP ERP系统的公司,90%都采用SAP BW作为 其数据仓库工具。在进行蓝图规划时,咨询公司都会采用ERP 事务型系统与BW数据仓库同步实施的方案,如我所在的公司。 也有先上ERP,系统运行稳定后在进行数据仓库建设的,如五 矿集团。
一般来说,数据仓库系统应在信息化建设后期进行,但是 同步实施会具有一些优势:
1、在ERP系统上线后即可实现BI功能和全球BCS解决方 案,能马上为集团领导提供商业智能分析工具,达到速赢目 的;
2、数据仓库实施人员能同步参与流程系统设计,更好地了 解需求,提升其数据仓库成果的适用性;
3、数据仓库成果的重用。如对于分多期实施的ERP,BW 能在第二期展现第一期上线单位的数据分析价值,对后期的推 广实施有益。
但是,其劣势也很明显,由于数据质量不高,其报表难以 测试,直接导致报表质量不高,需求变更多。
4.2 建立分布式数据仓库系统
对于一个集团公司来说,存在多个不同地域的分公司,每 个分公司的数据量就足以建立起一个数据仓库,那么,是建立 一个分布式的数据仓库系统还是建立一个集中式的数据仓库系 统?
大部分企业所建立和维护的是一个集中式数据仓库环境。 主要考虑因素:
(1)数据仓库中的数据是全企业范围内集成的,仅在集团 总部才会使用这些集成的数据;
(2)企业以集中式管理模式运作;
(3)数据仓库的数据量大,信息安全性要求高,数据集中 存储在一个统一的地方较为妥当;
(4)如果数据分布于多个局部站点,那么存取这些多个站 点中的数据将是很麻烦的。
综上所述,从政策、经济和技术等诸多因素都更倾向于集 中式数据仓库。但是,在某些特定场合,需要建立分布式数据 仓库环境。有三种分布式数据仓库类型:
(1)业务是在不同地域或不同生产线上进行的。这种情 况,出现局部数据仓库和全局数据仓库。如下图一:
这种分布式数据仓库局部的人员原则上只能查看局部数 据,为了其他目的而查看全局数据是要受到质疑。另一个问题 就是需要考虑如何确保信息来源于正确的地方。
局部/全局数据仓库要解决的一个重要问题就是数据的传 输。包括传输频率,传输的合法性(因为跨越了地区),传输 的安全保护措施及安全性等,如何解决数据传输中的负载问 题?而这些问题是集中式数据仓库不会遇到的。
(2)数据仓库分布在多个处理器上。物理上数据仓库的 数据可以存放在多处理器上,而逻辑上看只有一个数据仓库。 这种方式大大节省硬件维护成本。可称为技术上分布的数据仓 库。
(3)演进型的数据仓库。先建立一个数据仓库,然后再建 立一个。不同数据仓库间难以建立协调性,通常需要采取政策 和机构上的制度来保证数据仓库间进行协调工作。
以上可以看出,一般企业会选择建立集中式的数据仓库, 当集中式数据仓库不能解决业务上的问题时,会采用第2种或第 3种分布式数据仓库进行扩展,但是在扩展时必然要考虑由此带 来的性能、安全性及数据传输的问题。
4.3企业信息工厂(CIF)的出现3
当出现了用于统计分析的探查型数据仓库时,统计学家就 可在此数据基础上进行数据挖掘分析,在这个时期数据仓库演 变成为企业信息工厂(CIF)。
2000年的网络大爆炸使得人们发现,网络环境要成功必 须与企业系统集成。数据通过ODS从企业环境进入网络环境。 DSS应用软件的出现,使得企业绩效管理成为现实。2004年, 信息工厂中出现了新的提炼方法,增加2个特征,一个是VODS (虚拟操作数据存储),另一个是非结构化数据。VODS使组织 机构可访问流动状态的数据,不必依赖其他的基础结构。
CIF是一个有机体,它也随着数据仓库、商务智能和DSS不 断成长和变化。美国911事件后,政府信息工厂GIF就出现了。 GIF的基本架构和CIF的架构类似。
CIF也经历过被视为异端到被看作高招的过程。但是,是不 是发展已经结束了?其实一切才刚刚开始。现今对CIF和数据仓 库至少有四个方面已现曙光:
●分析
●ERP/SAP商务智能 ●非结构化商务智能 ●大量数据的捕获和管理
其中提一下SAP,CIF和数据仓库很自然地与ERP系统合并 了,这方面的领头羊是SAP公司3。SAP在扩展CIF的内涵方面也 是一个先行者,具体表现在SAP BW中的一些创新:
●支持大规模数据;
●服务包括从事务性数据的信息源包装,到ETL抽取,和前 端的分析展示;
●在R/3领域对商务智能的扩展。建设一个SAP数据仓库意 味着将非SAP事务处理数据包括到数据仓库中;
●提供ETL的替代品。
以上,H.Inmon认为,SAP从其遍布世界的客户,以及对于 赋予产品的能力和创新,远远超过了它的竞争对手,并且对CIF 和数据仓库做出了实际的贡献。
4.4 企业数据仓库建设
CIF企业信息工厂的出现,使得ERP与数据仓库紧密地联系 在一起。根据已经实施的SAP BW经验,也可以体会到基于ERP R/3系统之上的BW数据仓库实施的好处,特别是其中已经经过 SAP最佳实践产生的含有逻辑的BCT(业务内容),这些业务内 容导入BW后,能自动生成模型,大大减少了从零开始建设数据 仓库的时间和效率。
经过4年多的BW实施和应用,越来越大的数据量如何能更 高效地利用?梳理和建设企业数据仓库的问题提到了历史日程 上来。那么,应以哪种方式建立更快速高效呢?我们从两个方 面来讲:自底向上和自顶向下。
4.4.1 BOTTOM-UP自底向上建立企业数据仓库
自底向上的方法指的是先建立部门级的数据集市,再在此
之上建立一个统一的集团层面的企业数据仓库。
部门级数据集市的建立可以很快的给业务部门有价值的反
图一 分布式数据仓库
图二 自底向上的企业数据仓库实施方法
信息系统工程 │ 2010.8.20
EXCHANGE OF EXPERIENCE 经验交流
馈。业务部门的领导可以快速见到实施效果,从而加快对企业 数据仓库价值的认可,对很多企业内部更加适合。
但是这种方法可能缺少以集团视角进行的总体设计而使 数据有冗余,且集成性不够。在实施数据集市的同时,必须要 兼顾到未来数据仓库实施的内容,要有前瞻性,才能避免走弯 路。在企业数据仓库层,为提高效率必须要集中维护和控制, 并向各个主题的数据集市分发,从而保证数据质量、数据的整 合、和数据的共享。数据集市的建立也要考虑到不同的数据抽 取、转换和加载层次。当自底向上的逐步搭建企业数据仓库 (EDW)时,如果以前建立的数据集市无法有效的集成到一个企 业数据仓库(EDW/ODS)层,某些数据集市可能不得不停止使 用,重新建立。
4.4.2 T OP-DOWN自顶向下建立企业数据仓库
自顶向下的方法将先搭建统一的数据仓库,最后建立部门
图三 自顶向下的企业数据仓库实施方法
级数据集市。这种方法实施时间长,实施成本和资源较大。通 常,建立满足多个业务部门需求的大数据仓库难度较大。
建立TB级的大型企业数据仓库非常复杂,备份和恢复需要 专业的大型软件和硬件的支持。还需要对系统的效率有很好的 优化工具,才能提高最终用户的满意度。另一方面,不同的业 务部门和用户对于不同数据源的理解和需求往往有比较大的差 异。最终的业务目标由于技术和政治上的困难很难在很短时间 里建立大型的企业级的数据仓库。
因此从数据集市入手,逐步建立,在建立中学习,可以有 效地降低实施风险,对于交付质量也可以有比较好的控制。
但是,企业在建设自身的集团级数据仓库时须考虑自身的 实际情况,如果已经通过ERP系统的实施建立了一个较统一的 数据仓库的话,仍可以采用自顶向下的方式扩展数据仓库的应 用范围,这样也可避免数据冗余等问题。
5. 总结与结论
综上所述,在建设企业数据仓库时,要考虑企业自身实际 情况。对于具有建设集中式数据仓库条件的企业来说,选择自 顶向下的方法可以避免走弯路,同时也能减少后期维护成本。 如果企业不具有建设集中式数据仓库的条件,选择自底向下的 方法不失为一个方便实用的方法。 参考文献
[1]Erik Thomsen.OLAP解决方案:创建多维信息系统[M].电子工 业出版社,2004.
[2]林宇,等.数据仓库原理与实践[M].北京:人民邮电出版社,2003. [3]William H Inmon.数据仓库[M].北京:机械工业出版社,2006.
(上接102页) 三、结语
综上所述,3G牌照的发放为移动市场注入了新的活力。 激烈的竞争,使得盈利变得更加不易。3G对固网运营商的管理 和运营能力提出了更高的要求。谁拥有更好的外部资源开发利 用能力、用户需求识别能力、企业内部资源调配能力以及快速 反应能力等,谁就能构造更强竞争力的价值链和生态系统。未 来电信市场的快速变化将使得竞争从单纯的运营商间的竞争、 设备商间的竞争和终端间的竞争,演变为由价值链上各主体等 构成的战略集团间的竞争。谁能够通过合作管理好这样的战略 集团,谁就是赢家。固网运营商应该抓住这一大好时机,加强 合作,整合产业链,确立今后自己在整个生态系统中的优势地
位,实现合作致胜。 参考文献
[1]郑有强.3G先行者终成翘楚[J].中国信息产业网,2008(3).
[2]陶章华,李海波.从联通CDMA发展来看未来3G竞争策略[J].中 国宽带杂志网,2008(2).
[3]杨 庆 广. 3G 催 熟 移 动 互 联 网 商 业 模 式 需 创 新 [J ].赛 迪 网,2007(10).
[4]冯晓芳.我国3G商用获实质性突破[N].中国证券报,2007(5).[5]杨 海 , 刘 衡 萍. 3G 给 运 营 商 带 来 了 什 么 [N ].人 民 邮 电 报,2006(12).
(上接98页)
四、“数字校园”建设路线
●设施建设是基础
数字校园建设不但要做到需求驱动、设计合理、先进实用、 安全可靠,还要留有余地,便于今后扩充和更新。
●资源开发是重点
数字校园的资源建设包括数字图书馆、学科资源库、科研信 息库等,应该作为重点建设项目。
●师资培训是关键
数字校园教育系统的功能能否得到充分发挥,取决于师资队 伍的信息化素质,因此要采取措施对他们进行强化培训,使他们 不但能够掌握使用信息技术的一般技能,还要懂得如何有效利用 网上信息资源和开展网上教学活动。
●政策配套是保障
在学校中发展网上教育,必须要有相应的配套政策,包括 使用收费政策、绩效奖励政策等,对于积极投入信息化教育的人 员,应该有较大力度的政策倾斜。
五、总结
在信息技术全球化的大背景下,建设数字化校园,实现教 育信息化并强化各项数字管理,提升学校的综合实力,是各高校 当前的一项紧迫任务。总之,校园建设管理数字化是当前院校响 应国家发展的必然趋势,将校园管理和建设数字化体现社会网络 信息化时代的风貌,使校园的建设和管理工作能够更快更好的发 展。 参考文献
[1]朱懿心,曹育南,殷革兰.数字化校园建设理论与实践探索[J].教育 发展研究,2004(9).
[2]徐少亚.南京化工大学建成数字化校园[J].南京化工大学学报(自 然科学版),2001(02).
[3]盛昀,方明.数字化校园应用系统架构的研究[J].西安石油大学学 报(自然科学版),2005(01).
[4]郑铿.读解数字化校园[J].南京师大学报自然科学版,2002(S1).
范文三:如何测试数据仓库
如何测试数据仓库
在数据仓库环境下进行测试时如何处理需求与质量的关系 ? 虽然数据仓库的 测试是一个惊奇而神秘的过程, 但实际上它与其它测试项目并无多大区别。 基本 的系统分析和测试过程在这里仍然有效。 我们来看一下其中的几个步骤, 并研究 如何在数据仓库环境中应用。
分析源文件
与其它项目一样,测试数据仓库部署时,通常都会有一份相关的说明文件。 虽然这些文件对于创建基本的测试策略非常有用, 但经常会缺少一些关于测试开 发与执行的详细资料。 有时会有一些其它文件解释技术上的细节问题, 即从源到 目标的转化 (source-to-target mappings) 说明文件。这些文件详细说明了数据的 来源、如何对数据进行操作,以及存储到哪里。如果能拿到这些文件,关于系统 设计的文件在设计测试策略时也会变得更加有用。
开发策略和测试计划
分析了各种各样的源文件后, 就要开始创建测试策略。 我发现从生命周期和 质量的角度来看, 增量测试是测试数据仓库的最好办法。 这从本质上意味着开发 团队会从开发过程的早期开始, 将各种小组件交付给测试团队。 这个办法的主要 优点是避免交付让人吃惊的 “ 大块 ” 组件,可以从早期开始检验缺陷,并使调试变 得简单。 此外, 这个方法还有助于在开发与测试周期中建立详细的过程。 具体到 数据仓库测试,即是对数据获取分段表,然后是增量表、基本的历史表格、 BI 视图等的测试。
另一个制定数据仓库测试策略的主要问题是基于分析 (analysis-based)的测 试方式和基于查询 (analysis-based)的测试方式的选择。纯基于分析的方法是让 测试分析师通过分析目标数据和相关标准计算出预期结果。 基于查询的方法有相 同的基本分析步骤,但更进一步,用 SQL 查询语言编写预期结果。这为将来建 立回归测试过程节省了很大精力。 如果测试是一次性的, 那么用基于分析的方式 就足够了, 因为通常这种方式较快一些。 反之, 如果企业对回归测试有持续的需 求,那么基于查询的方式会更为合适。
测试的开发与执行
不管在测试执行过程之前还是之后进行测试的开发, 要根据上行需求的稳定 性和分析过程决定。 如果情况变动比较频繁, 那么早期进行的测试开发可能大部 分都会被废弃。 这种场合, 实时进行的整合的测试开发和执行过程通常会更有效 果。 不管怎样, 在设计测试开发和执行过程的框架时, 参考一下测试分类总是有 用的。比如,一些数据仓库的测试分类可能有:
?记录计数 (预期与实际对比 )
?副本记录
?参考数据有效性
?参照完整性
?错误与异常逻辑
?增量过程与历史过程
?控制栏值与默认值
除这些分类外,还可以参考缺陷分类学,比如 Larry Greenfield 的分类。
测试执行时, 准确的状态报告过程是经常被忽略的一个方面。 在确定团队里 的其他人明白你的方法的前提下, 测试分类和测试进度可以保证他们对测试状态 也有一个清楚的概念。 有了详细的规划并坚持到底, 以及良好的沟通, 就能建立 一个数据仓库测试过程,帮助项目团队取得满意的成果。
范文四:数据仓库的建立实验一
昆明理工大学信息工程与自动化学院学生实验报告
(2014 — 2015 学年 第 1 学期 )
课程名称:数据库仓库与数据挖掘 开课实验室:信自楼 4442014 年 12月 28日
一、实验内容和目的
目的:
1.理解数据库与数据仓库之间的区别与联系;
2.掌握典型的关系型数据库及其数据仓库系统的工作原理以及应用方法;
3.掌握数据仓库建立的基本方法及其相关工具的使用。
二、实验原理及基本技术路线图(方框原理图)
数据库(DataBase , DB )是长期存储在计算机内、有组织的、统一管理的相关数据的集合。 DB 能为 各种用户共享,具有较小的冗余度、数据间联系紧密而又有较高的数据独立性等特点。构成的三要素是 数据结构、数据操作、约束性条件。
三、所用仪器、材料(设备名称、型号、规格等)
PC 机和 Microsoft SQL Server 2008
四、实验方法、步骤
1、登录 SQL Server 登录名:localhost
2、使用 SQL 语句构建数据库 (1)还原数据库
(2)建立数据
--建立数据 USE cd
CREATE DATABASE [DW] ON PRIMARY
( NAME = N'DW' , FILENAME = N'G:\DW.mdf' ) LOG ON
( NAME = N'DW_log', FILENAME = N'G:\DW_log.ldf' ) GO
(3)建立数据库:数据库→新建数据库
(4)建维表 ① SQL 语句
USE DW
-------------------------------- --1、建维表
/*1.1 订单方式 */
CREATE TABLE DIM_ORDER_METHOD
(ONLINEORDERFLAG INT , DSC VARCHAR (20))
/*1.2 销售人员及销售地区 */
CREATE TABLE DIM_SALEPERSON (SALESPERSONID INT , DSC VARCHAR (20),
SALETERRITORY_DSC VARCHAR (50
))
/*1.3 发货方式 */
CREATE TABLE DIM_SHIPMETHOD (SHIPMETHODID INT , DSC VARCHAR (20))
/*1.4 订单日期 */
CREATE TABLE DIM_DATE
(TIME_CDVARCHAR (8),
TIME_MONTHVARCHAR (6),
TIME_YEARVARCHAR (6),
TINE_QUAUTERVARCHAR (8),
TIME_WEEKVARCHAR (6),
TIME_XUNVARCHAR (4))
/*1.5 客户 */
CREATE TABLE DIM_CUSTOMER (CUSTOMERID INT ,
CUSTOMER_NAMEVARCHAR (100), CUSTOMERTYPE VARCHAR (20),
AGE INT ,
SEX VARCHAR (2),
MaritalStatus VARCHAR (10), YearlyIncome VARCHAR (50),
Education VARCHAR (50),
Occupation VARCHAR (50), NumberCarsOwned INT ,
TotalChildren INT ,
COUNTRY_NAMEVARCHAR (100), STATEPROVINCE_NAMEVARCHAR (100), CITY_NAMEVARCHAR (100))
/*1.6 订单状态 */
CREATE TABLE DIM_ORDER_STATUS (STATUS INT ,
DSC VARCHAR (30))
/*1.7 客户价值 */
CREATE TABLE V_SUBTOTAL_VALUES (ORDER_VALUES_IDINT ,
DSC VARCHAR (30),
MIN_VALUEINT ,
MAX_VALUEINT )
(5)建维度表的 ETL
① SQL 语句
--二、维度表的 ETL
-------------------------------------
INSERT INTO DIM_ORDER_METHOD
VALUES (0, ' 销售人员 ' )
INSERT INTO DIM_ORDER_METHOD
VALUES (1, ' 客户在线 ' )
INSERT INTO DIM_SHIPMETHOD
SELECT ShipMethodID , NAME FROM cd . Purchasing . ShipMethod
INSERT INTO DIM_SALEPERSON
SELECT A . SalesPersonID , '' , B . Name
FROM cd . Sales . SalesPerson A , cd . Sales . SalesTerritory B WHERE A . TerritoryID =B . TerritoryID
INSERT INTO DIM_ORDER_STATUS
VALUES (1, ' 处理中 ' )
INSERT INTO DIM_ORDER_STATUS
VALUES (2, ' 已批准 ' )
INSERT INTO DIM_ORDER_STATUS
VALUES (3, ' 预订 ' )
INSERT INTO DIM_ORDER_STATUS
VALUES (4, ' 已拒绝 ' )
INSERT INTO DIM_ORDER_STATUS
VALUES (5, ' 已发货 ' )
INSERT INTO DIM_ORDER_STATUS
VALUES (6, ' 已取消 ' )
INSERT INTO V_SUBTOTAL_VALUES
VALUES (1, '0-100' , 0, 100 )
INSERT INTO V_SUBTOTAL_VALUES
VALUES (2, '100-500' , 100, 500 )
INSERT INTO V_SUBTOTAL_VALUES
VALUES (3, '500-1000' , 500, 1000 )
INSERT INTO V_SUBTOTAL_VALUES
VALUES (4, '1000-2000' , 1000, 2000 )
INSERT INTO V_SUBTOTAL_VALUES
VALUES (5, '2000-5000' , 2000, 5000 )
INSERT INTO V_SUBTOTAL_VALUES
VALUES (6, '5000以上 ' , 5000, 1000000000 )
declare @daydateTIME
SET @day='2001-01-01'
while @day<'2005-01-01'
BEGIN
insert into DIM_DATE
SELECT CONVERT (CHAR (8), @day, 112),
CONVERT (CHAR (6), @day, 112),
CONVERT (CHAR (4), @day, 112)+' 年 ' ,
' 第 ' +CAST (DATEname (QUARTER , @day) AS VARCHAR (1))+' 季度 ' ,
DATEname (weekday , @day),
case WHEN DATEPART (DAY , @day)<11 then="" '="" 上旬="" '="" when="" datepart="" (day="" ,="">11><21 then="" '="" 中旬="" '="" else="" '="" 下旬="" '="">21>
SELECT @day=DATEADD (DAY , 1, @day)
END
INSERT INTO DIM_CUSTOMER
SELECT A . CustomerID , G . FirstName , CASE WHEN A . CustomerType ='I' THEN ' 个人 ' ELSE ' 商店 ' END ,
DATEDIFF (YEAR , Demographics . value ('declare namespace zhh=
(/zhh:IndividualSurvey/zhh:BirthDate)[1]', 'VARCHAR(10)'), GETDATE ()), Demographics . value ('declare namespace zhh=
(/zhh:IndividualSurvey/zhh:Gender)[1]', 'VARCHAR(2)') ,
Demographics . value ('declare namespace zhh=
(/zhh:IndividualSurvey/zhh:MaritalStatus)[1]', 'VARCHAR(10)') ,
Demographics . value ('declare namespace zhh=
(/zhh:IndividualSurvey/zhh:YearlyIncome)[1]', 'VARCHAR(20)') ,
Demographics . value ('declare namespace zhh=
(/zhh:IndividualSurvey/zhh:Education)[1]', 'VARCHAR(20)') ,
Demographics . value ('declare namespace zhh=
(/zhh:IndividualSurvey/zhh:Occupation)[1]', 'VARCHAR(20)') ,
Demographics . value ('declare namespace zhh=
Survey
(/zhh:IndividualSurvey/zhh:NumberCarsOwned)[1]', 'int' ) , Demographics . value ('declare namespace zhh=
(/zhh:IndividualSurvey/zhh:TotalChildren)[1]', 'int' ) , F . Name , E . Name , D . City
FROM cd . Sales . Customer A , cd . Sales . Individual B ,
cd . Sales . CustomerAddress C , cd . Person . Address D ,
cd . Person . StateProvince E , cd . Person . CountryRegion F , cd . Person . Contact G
WHERE A . CustomerID =B . CustomerID AND A . CustomerID =C . CustomerID AND C . AddressID =D . AddressID
AND D . StateProvinceID =E . StateProvinceID
AND E . CountryRegionCode =F . CountryRegionCode AND B . ContactID =G . ContactID
②执行 SQL 语句后
(6)建事实表
--三、建事实表
CREATE TABLE FACT_SALEORDER( SALEORDERID INT , TIME_CD VARCHAR (8), STATUS INT ,
ONLINEORDERFLAG INT , CUSTOMERID INT , SALESPERSONID INT , SHIPMETHOD INT , ORDER_VALUES INT ,
SUBTOTAL DECIMAL (10, 2), TAXAMT DECIMAL (10, 2
),
FREIGHT DECIMAL (10, 2))
(7)建事实表的 ETL
① SQL 语句
--四、事实表的 ETL
/*4.1 FACT_SALEORDER的 ETL*/
TRUNCATE TABLE FACT_SALEORDER
INSERT INTO FACT_SALEORDER
SELECT SalesOrderID , CONVERT (CHAR (8), A . OrderDate , 112) ,
A . Status , A . OnlineOrderFlag , ISNULL (A . CustomerID , 0), ISNULL (A . SalesPersonID , 0), A . ShipMethodID , B . ORDER_VALUES_ID, A . SubTotal , A . TaxAmt , A . Freight
FROM cd . Sales . SalesOrderHeader A ,
V_SUBTOTAL_VALUESB
WHERE A . SubTotal >=B . MIN_VALUEAND A . SubTotal
--缺省值处理
INSERT INTO DIM_CUSTOMER
select DISTINCT CUSTOMERID , ' 未知 ' , ' 商店 ' , 0, 'N' , 'N' , ' 未知 ' , ' 未知 ' , ' 未知 ' , 0, 0, ' 未知 ' , ' 未知 ' , ' 未知 ' from FACT_SALEORDER
where CUSTOMERID not in (SELECT CUSTOMERID
FROM dbo . DIM_CUSTOMER)
②执行 SQL 语句后
五、实验过程原始记录 (数据、图表、计算等 )
将还原后的数据库(cd )的数据转到建立好数据库(DW )维度表和事实表后,效果如下图
六、实验结果、分析和结论(误差分析与数据处理、成果总结等。其中,绘制曲线图时必 须用计算纸)
通过这次上机实验掌握了建立数据仓库的一般步骤, 基本掌握了 SQL 语句进行维度表、事实表、 ETL 的建立,在建立时出现了一些问题,但是在老师的指导和同学的帮助下解决了,在以后的学习和生 活中会不断对数据库和数据仓库进行探索。
范文五:为什么要建立数据仓库
这是 IT pub 上一篇帖子引发出的问题, 以前还真没去仔细思考这个问题:为什么要建立数据 仓库,数据仓库和数据库的区别?因为理论上的优点说法都很多,但要真正很好地理解,能 简洁地向客户阐述明白,让客户觉得建立数据仓库是一件值得做的事情,还是值得讨论一下 这个问题。有如下一些朋友们说法(自己在批注处谈点个人的意见) :
A
数据库是一个装数据 (信息的原材料) 的地方。 数据仓库是一种系统, 这种系统也是用数据 库装东西。 (这有点没说清楚:个人理解数据库和数据仓库当然都是装数据的地方, 关键的区 别是装的什么样的数据,数据库装的原始数据,没经过任何加工;而数据仓库是为了满足分 析需要,对源数据进行了 Transform 过程,具体是怎样一个处理过程,可以从 Bill Inmon的仓库定义四个特性进行理解。 ) 数据仓库系统 (用数据库装东西) 与其他基础业务系统 (例 如财务系统、销售系统、人力资源系统等,也是用数据库装东西)的区别是:基础业务系统 的特点是各管各的,例如财务系统生产了白菜,那么用一个数据库来装,人力资源系统生产 了猪肉,再用一个数据库来装。我要做一道菜,需要分别到各个数据库去取,比较麻烦(现 实的情况是大部分时候让种菜的农民伯伯送过来,但送过来的东西不一定是我想要的,而且 不同的时候我想要不同的东西, 经常会被农民伯伯骂, 弄得双方都不开心) 。 另外一方面, 各 个数据库中放的是一些比较原始的东西,我要拿过来做菜,还需要经过很麻烦的清洗过程, 一不小心里面可能就藏着一条大青虫。 那么, 数据仓库系统就是建立一个大的超市, 将各地 农民伯伯出产的东西收集过来,清洗干净,分门别类地放好。这样,你要哪种菜的时候,直 接从超市里面拿就可以了。
B
早期一直不理解数据仓库是什么困惑得很。 宏观一点讲, 数据仓库就是堆放公司所有数据的 地方, 之所以把数据都堆在一起, 是为了从中间找到有价值的东西。 数据仓库更多的是一个 概念, 不要把数据仓库想成那些号称是数据仓库的软件产品们。 (数据仓库的建立和数据挖掘 都是一个过程, 可以从数据仓库生命周期和 OLTP 系统生命周期的区别进行理解, 数据挖掘过 程 CRISP-DM ) 数据仓库的物理上就是数据库。相对业务系统数据库叫 OLTP 数据库(用于业 务处理) , 这种数据库叫 OLAP 数据库 (用于业务分析, 不知道有没有这种说法, 个人觉得 OLAP 和数据库还是不能简单地称为 OLAP 数据库的; OLAP 是针对特定问题的联机数据访问和数据 分析而产生的一种技术,它满足 DDS 从多种角度对数据进行快速、一致、交互地分析,克服 传统 DDS 交互能力差的弊病, 使决策者能够对数据进行深入观察。 OLAP 服务器使用为用户预 定义的多维数据视图对数据仓库的信息进行统计分析处理,为具有明确分析范围和分析要求 的用户提供高性能的决策支持在线分析处理, 只是基于 DW 上的一种多维分析方式, 当然我也 可以不用 OLAP , 直接做基于 DW 的 DM ) 。 数据仓库的概念是针对以下基本需求产生的:公司 的业务系统很多,业务系统的历史数据不方便查询。不同的业务系统往往管理部门不同,地 域不同。 能不能将所有这些数据集中起来, 再淘淘有没有有意义的业务规律。 数据仓库数据 库往往很大,因为公司所有的数据集中得越多,越能淘到有价值的发现。例如随便就 100G 以上。 数据仓库的组成十分繁杂,既有业务系统的历史数据,又有人事、财务数据,还要自 己建一些基础性的数据,例如,公共假期数据、地理信息、国家信息等等。 数据仓库概念包 含从业务生产系统采集数据的程序, 这个程序还不能影响业务系统的运行。 (属于所谓 “ ETL ” 过程) 数据仓库包括业务系统长期的历史数据,例如 5年,用来分析。 (所谓“ ODS ”数据) 数据仓库包括针对某相业务值 (例如销售量) 重新打上标签的业务流水数据。 (所谓 “事实表” 、
“维度表” ) 。 数据仓库概念兴许还包含报表生成工具(所谓“ BI ”工具) 。这些工具能够达 到几年前所谓 DSS (决策分析)的效果。 数据仓库的客户历史资量的分析,也许又与 CRM 系 统粘点边。 总之,一点,一个公司想针对已有的历史业务数据,充分的利用它们,那么就上 数据仓库项目。 至于哪些吓唬人的大写字母的组合, 只是达到这个目标的科学技术罢了。 牢 记住数据仓库的基本需求,不要被供应商吓着。
C
数据仓库可以说是决策支持系统 (个人不同意这个观点, 决策支持系统 (DDS ) 是在管理信息 系统的基础上发展起来的,在数据仓库、 OLAP 技术和数据挖掘工具出现以前,就已经有 DSS 了, 但其在实际应用开发过程中暴露出许多问题, DW 为克服传统 DDS 存在的问题提供了技术 上的支持,基于 DW 上的 DSS 效果自然有很大提升) ,能帮助老板了解企业的整体全貌,看到 数据仓库提供的经过整理统计归纳的数据后老板凭自己的管理经验可以发现企业的问题或困 难或成功因素在哪一方面,然后可以不断的追溯数据,直到确定到最具体的细节上,这样能 够不断提升老板或管理层的管理水平,不断改善企业的管理。我们知道的最好的一个例子就 是美国某大型超市啤酒和尿布的故事。 沃尔玛公司在美国的一位店面经理曾发现, 每周, 啤 酒和尿布的销量都会有一次同比攀升,一时却搞不清是什么原因。后来,沃尔玛运用商业智 能(Business Intelligence,简称BI)技术发现,购买这两种产品的顾客几乎都是 25岁 到 35岁、家中有婴儿的男性,每次购买的时间均在周末。沃尔玛在对相关数据分析后得知, 这些人习惯晚上边看球赛、边喝啤酒,边照顾孩子,为了图省事而使用一次性的尿布。得到 这个结果后,沃尔玛决定把这两种商品摆放在一起,结果,这两种商品的销量都有了显著增 加。 数据库是数据仓库的基础。 数据仓库实际上也是由数据库的很多表组成的 (这句话明显 不成立,数据仓库里表分为事实表和维表,这和数据库里的表还是有本质区别的,组织方式 完全不一样, 一个是面向主题, 一个是面向业务的) 。 需要把存放大量操作性业务数据的数据 库经过筛选、抽取、归纳、统计、转换到一个新的数据库中。然后再进行数据展现。老板关 注的是数据展现的结果。
转载请注明出处范文大全网 » 建立数据仓库如何建立数据仓库