(计算机应用技术专业论文)sdc信息统计分析系统etl工具的研究与实现.pdf_第1页
(计算机应用技术专业论文)sdc信息统计分析系统etl工具的研究与实现.pdf_第2页
(计算机应用技术专业论文)sdc信息统计分析系统etl工具的研究与实现.pdf_第3页
(计算机应用技术专业论文)sdc信息统计分析系统etl工具的研究与实现.pdf_第4页
(计算机应用技术专业论文)sdc信息统计分析系统etl工具的研究与实现.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中山大学硬士学位论文s d & c 信息统计分析系统e t l i 具的研究与实现 摘要 本文首先简要介绍了e t l 工具的基本概念和e t l 工具的三个核心问题:数 据的抽取、数据的转换和数据的装载,然后深入细致地分析了国内外流行的e t l 工具的功能特色,并讨论了目前数据仓库系统中e t l 工具的应用问题。最后, 我们采用j a v a 语言、a s 4 0 0 系统上特有的r p g 语言和s q l 语言以及移动a g e n t 技术开发了一个应用于数据仓库系统的e t l 工具。本文重点讨论了该工具的设 计和实现。 本e t l 工具采用了e t l 过程定义和过程执行分开的体系结构,支持用户自 定义数据的处理方式,支持用户任意的扩展工具的功能,体现了良好的灵活性、 可重用性和易扩充性:同时,因为该工具起源于一个证券业数据仓库项目,所以 有着很强的面向证券业务的行业特性。目前,我们已经把该工具应用到了s d c 信息统计分析系统中,通过该系统在中国证券登记结算公司深圳分公司的实施成 功,证明了本e t l 工具良好的使用效果。 关键词:e t l ,a g e m ,数据仓库,削;胂0 0r p g 中山大学硕士学位论文 s d & c 信息统计分析系统e t l 工具的研究与实现 r e s e a r c ha n dr e a l i z a t i o na b o u ta 吼i o d li ni n f o r m a t i o n s t a t i s t i cs y s t e mo fs d & c c o m p u t e r a p p l i c a t i o n n a m e:l u d i s u p e r v i s o r :c h e ny o u q i n g t h i sp a p e ri n t r o d u c e st h eb a s i cc o n c e p to fe t lt o o li nh r i e a n ds t a t e st h et h r e e m a i np r o b l e m st h a th a v et ob es o l v e dw h e ne t lt o o l sa r ei nu s i n g ,w h i c ha r ed a t a e x t r a c t t r a n s f o r ma n dl o a d t h e nt h i sp a p e rd e t a i l e da n a l y s e ss o 眦c o m m e r c i a le t l t o o l sw h i c ha r em o s tp o p l l j a ri n t h i si n d u s t r y , a n da tt h es a l l gt i m ed i s c u s s e st h e p r o b l e m sf x o n t e db yt h ee t l t o o lw h e ni ta p p l i e dt ot h ed a t aw a r e h o u s ep r o j e c t a t l a s t ,w ed e v e l o pt h et o o lu s i n gt h ej a v al a n g u a g e , m o b i l e - a g e n t ,r p ga n ds q lt h e t o o lh a sm a n ys t r o n g p o h t ts u c ha sh i g h l y i n t e g r a t e dw i t ha p p l i c a t i o n , f u n c t i o n e x t e n d a b l ea n du s e rc u s t o m i z a b l e t h ee t lt o o la d o p t sas t r u c t u r et h a ts e g r e g a t e st h ep r o c e s sd e f i n i t i o nw i t ht h e p r o c e s se x e c u t i o n i ts u p p o r t st h eu 蝴幻d e f i n et h ed a t ad i 即。曲唔f l o wb y t h e m s e l v e s ,w h i c hp r o v i d i n gr e u s a b i l i t y , e x t e n s l b f l i t ya n de a s i n e s st oi m p l e m e n t c u r r e n t l y , w eh a v ei n t e g r a t e dt h i se t lt o o li n t ot h ep r o j e c tn a m e ds d & cs t a t i s t i c a n a l y s i ss y s t e ma sas u b - s y s t e m a n di tp r o v e st h i se t l t o o lh a sag o o du s a g er e s u l t 第1 章引言 1 1e t l 的基本概念札1 川 e t l ( e x t r a c t ,t r a n s f o r m ,l o a d ) ,即数据的抽取转化装载,是负责完成 数据源数据向数据仓库转化导入的过程是实施数据仓库中最重要的步骤如 果说数据仓库主题化模型是一座大厦的设计蓝图,数据仓库的数据是建造这个 大厦的砖石的话,那么e t l 就相当与建设整个大厦的过程在数据仓库系统设 计中最难的部分是用户需求分析和模型设计,那么工作量最大的就是e t l 的设 计和实施了,它要占到整个数据仓库设计工作量的6 0 - 8 0 。 e t l 所要处理的数据来源多种多样,可能取自标准的关系型数据库,可能来 自数据文件包括图形文件,文本文件,e x c e l 文件,x m l 文件,h t m l 文件等:有 的可能是内部数据,而有的可能是系统或者企业外部的数据。所有的数据在最终 插入数据仓库以前需要经过e t l 或简单或非常复杂的加工处理,有些是转换,有 些是拆分,有些是合并,有些是聚合、计算,最终存入已经建好的目标数据仓库 中,成为高质量的、高一致性的、高可靠性的可供企业高层用来支持决策的宝贵 财富。 e t l 的核心是“,r ”,即数据的转换,也是踟中工作量最大的地方。第四章 里将会具体列举常见的转换函数类型 1 2 研究目的和意义 在当今时代,企业信息化的要求越来越迫切,企业信息化的程度也越来越高, 随着企业在数量和规模上的不断发展,企业积累了越来越多的历史数据,使用历 史数据,从历史数据中寻找有用的信息,来帮助企业进行决策支持等业务,是企 业信息化的必然趋势。 但是,并不是将企业的历史数据简单的堆积在一起就是完成了企业数据仓库 中山大学硕士学位论文s d & c 信息统计分析系统e l l 工具的研究与实现 的建设,就能给企业带来预想的回报。只有将经过必要处理的高质量的数据放入 数据仓库中,数据才具备了给企业带来效益的基础。 这个数据的处理过程就是e t l ,而e t l 工具则是专门处理e t l 任务的工具。 一个标准的e t l 工具应该是转换功能( 或者转换函数) 齐全,e t l 任务用户自 定义,功能可扩充,并行高效处理等,而新一代e t l 工具更是在这个基础上加 上了可实时处理,打包应用程序和分布式处理等特征【l j 。 综上所述,我们采用j a v a 和a 喀e n t 等技术,研究和开发的与应用程序紧密 集成的提供高质量数据的e t l 工具,支持e t l 任务的完全分布式处理和实时性 的数据传输,不但符合了新代e t l 工具产品发展的需求,在实现e t l 系统的 管理技术创新、开发技术创新以及实施技术创新等方面,都具有十分重要的意义, 而且该工具的成功开发也为市场e t l 工具簇增添了一个成本低廉,具有证券行 业特点的新成员。同时,该工具还可以作为独立的软件系统使用,甚至可以扩展 成为一个通用的行业性应用的e t l 产品。 1 3 本文的工作 在开发中国证券登记结算公司深圳分公司信息统计系统的过程中,由于了解 到客户对数据质量的要求非常的高,系统的数据量非常的庞大,通过简单的数据 映射、转换策略肯定不能满足客户的需要,而且系统必须能够满足用户需求的改 变。 结合实际项目的开发,本文研究和开发了一个面向证券业的,提供高质量数 据的e t l 工具,它采用j a v a ,r p g ,s q l 以及x 地等语言和工作流,a g e n t 等技 术,支持用户定制数据抽取转换更新流程,支持用户定制数据质量级别,可以任 意扩充系统的功能,甚至可以扩充成一个行业性通用的e t l 工具。 本文第二章对现有e t l 工具进行研究和比较,包括国内外知名的e t l 产品。 接着分析了e t l 工具的使用情况。 第三章介绍了采用j a v a 等技术开发该本e t l 工具必须具备的一些技术基 础,包括a s 4 0 0 、r p g 、a g c n t 等以及数据仓库技术。 第四章的内容是通过描述e t l 工具的功能,组成模块和逻辑架构,总结了 2 中山大学硕士学位论文s d & c 信息统计分析系统e t l 工具的研究与实现 本文的主要工作。首先概括e t l 工具的总体功能,接着是逻辑架构分析,按照 e t l 工具的功能模块,描述各个模块的功能和相互间接口。然后详细描述了e t l 工具的具体实现。 第五章介绍本e t l 工具在s d & c 信息统计系统中的使用情况。 最后总结全文,提出了下一步的研究方向。 3 第2 章e t l 工具概述 2 1e t l 工具的发展 2 1 1e t l 工具产生的根源 随着企业发展和数据量的增加,企业需要从各种不同的应用中获得相关数 据,经过复杂的复制、移植、转化、处理和合并,供业务人员使用;同时,由于 i t 技术的不断发展,多数企业的i t 架构中长期积累和采用了多种不同品牌和版 本的服务器、操作系统、数据库和不同来源的企业应用。在这种情况下,企业的 报表和分析应用还必须考虑如何同时实现对企业现有的多种软硬件平台的和多 种数据库的支持。 商业智能( 1 3 i ) 是对企业中分析报表类相关应用的统称;数据仓库( d w ) 则一般指大型、企业级的决策支持和业务分析应用。两者在实施规模和技术机制 上存在很多共同点和不同之处,但至少在两者底层,对数据的先期处理上,他们 的需求是类似的。无论是业务智能,还是数据仓库,在建设过程中,都需要首先 对企业中现存的数据进行处理加工。这种需求,就是e t l 工具产生的根源。 2 1 2e t l 技术的成熟和产品化 随着越来越多的企业建造自己企业的数据仓库,人们越来越意识到,在一个 数据仓库项目的实施过程中,e t l 不是最难的部分,但却是工作量最大的部分。 而且e t l 子系统常常是影响项目进度甚至成败的主要因素。在这种情况下,而 且随着e t l 技术的不断成熟,商业成熟的e t l 工具开始出现。成熟的商业e t l 工具的出现和产品化是e t l 技术成熟的标志。 2 1 3e t l 工具的成熟 4 中山丈学硕士学位论文 s d & c 信息统计分析系统e l l 工具的研究与实现 e t l 工具的最初目的就是改善项目实施效率,降低项目风险,所以最初的 e t l 工具的主要特点就是偏重于纯数据的处理,单纯在数据的转换上下功夫,这 也就造成了前期的数据仓库项目中很少有用商业e t l 工具的情况而更多的都是 宁愿靠项目组成员编程序实现;随着经验的逐步积累,技术的逐步成熟,现今的 e t l 工具无论在处理性能上,还是系统地开放性、通用性上都有着质的飞跃。 目前的e t l 工具可谓品种繁多,如i m f o r m a t i c a ,d a t a s t a g e ,s a g e n t , p o w e r m a r t ,o w b ,w a r e h o u s em a n a g e r 等。产品虽然各种各样,但他们有着一 些共同的特点: a e t l 的扩展性。尽管现今的e t l 工具功能都很强大,但也不可能覆盖所 有数据仓库项目中出现的情况,并能保证需求不再改变。对付这种情况的通常办 法就是运用e t l 工具的可扩展性,用户自己编程扩展工具的功能。 b 并行处理技术。利用并行机制,采用多线程。将e t l 任务和进程分布在 支持多处理器技术的硬件资源上,大大提高系统的处理效率 c 批量装载。批量装载是一种高效率的e t l 工作方式。数据仓库的存储系 统通常都配备有批量装载能力,e t lt 具必须对他们提供支持。 d 可视化元数据管理。元数据的定义和管理,在e t l 项目中占据很大得比 例。一个好的e t l 工具,应该支持面向对象或组件式的元数据数据结构,以及 可视化的元数据管理和设计方法。 还有一些特点,比如说e t l 产品和x m l 的整合,和消息中间键的集成,和 e r p 、c r m 产品的集成等,都是现今成熟e t l 产品的特征。 2 1 4 翻几工具的发展趋势“1 几个主要的e t l 厂商的趋势已经很明显:在e t l 产品中加入数据分析应用; 争取e t l 和e a l ( e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ) 的融合:将统一的元数据标准 c w m 完整地集成到自己的产品中;加大力量研究智能信息集成等。 和分析程序集合起来 l n f o r m a t i c a , a c t aa n d c o g n o s 已经在e t l 产品中集成了分折程序。详细说来, 支持建立和金融、市场销售、电子商务相关的星型数据结构和数据模型。 5 中山大学硕士学位论文s d & c 信息绕计分析系统e i l 工具的研究与实现 e t l 和e a i 的融合 相对于e t l 来说,e a i 是一种“箱子外的思路”,不需要对源系统深入进 去,而是把握它们之间传输的数据流。在e t l 产品中集成e a i ,这个消息被频 繁地发布。有些厂家觉得这个没有实际的意义,因为在一项任务中不会需要两种 数据传输方式,但是在一些主要的e t l 厂商的产品中,都已经集合了m qs e r w s , 而i n f o r m a t i c a 更是和v i t r i a 、w e b m e t h o d s 连接。 元数据标准c w m 对于开发人员和管理人员来说压倒一切的重点是在e t l 的过程中抓住元数 据。从整个体系结构看来,e t l 工具所在的位置是抓住元数据的最佳点,它跨 着源数据库和目标数据仓库。x m l 是帮助规范化元数据的最好的选择,开发人 员和数据管理员都会寻找在设计、查找上和c w m 的咀标准相融的e t l 工具。 2 2 商业e t l 工具分析 目前市场上的e t l 工具可谓品种繁多。少数是免费的,如d b p u t ,b l o a d 但大部分是价格昂贵的商业e t l 工具,如i m f o r m a t i c a ,d a t a s t a g e ,s a g e n t , p o w c r m a r t ,o w b ,v c a r e h o u s em a n a g e r 等;有的偏重通用性,如d a t a s t a g e ,功 能全而不专,有的则偏向于和特定数据库结合在一起,如o r a c l e 的o r a c l e w a r e h o u s eb u i l d e r ,在特定的数据库上有着良好的表现,而一旦脱离了这个环境, 性能和功能都明显减弱。“。 下面我们将分别分析a s c c n t i a ld a t a s t a g e 和s a g 嘣这两个国外的主流专业 e t l 工具和b e e l o a d 这个由国内的一个团队编写的e t l 工具。 2 2 1a s c e n t i a lb a t a s t a g e 嘲 d a t a s t a g e 是a 鼢n f i a l s o f t w a r e 公司的旗舰产品,它的企业版支持大容量数 据的收集、整合和转换,支持数据从简单结构到很复杂的结构。基于高可扩展性 的软件架构和并行处理大容量数据的能力,能够通过高性能来解决大部分业务闻 6 中山大学硕士学位论文s d & c 信息统计分析系统e t l 3 :具的研究与实现 题。其强大的企业元数据管理能力使得可以在数据整合生命周期中在所有工具中 共享元数据。 d a t a s t a g e 企业版发布了四个核心功能来成功实施企业数据整合:a d v a n c e d d e v e l o p m e n ta n d m a i n t e n a n c e ,加速开发和简单化维护;e n t e r p r i s ed e p l o y m e n t a n dm a n a g e m e n t 提供了企业级别的开发、监测和管理能力;h i g h l y s c a l a b l e a r c h i t e c t u r e ,在吞吐量和性能方面提供了没有限制的扩展能力:e n d t o e n d e n t e r p r i s em e t ad a t am a n a g e m e n t 提供了整个企业数据的管理和联系数据的一 种方法。d a t a s t a g e 企业版提供了全面的功能去最优化用户在建立、升级和管理 数据整合架构时的速度、灵活性和效率。 架构方面,d a t a s t a g e 企业版使用了c 1 i e n t s e r v e r 架构,用户可以通过各 个客户端工具访问d a t a s t a g e 企业版的开发、部署和维护功能。d a t a s t a g e 企业 版的服务器组件运行在一系列的流行服务器上,如u n i x 、w i n d o w s 等,用户使 用d a t a s t a g e 企业版的d e s i g n e r 组件建立企业版数据整合应用。 数据处理方面,d a t a s t a g e 企业版提供了1 2 个内嵌的s t a g e 来执行通用的 数据接合任务,如s o r t 、m e r g e 、j o i n 、f i l t e r 、t r a n s f o r m 和a g g r e g a t e 。每 个企业版s t a g e 是个完整的功能组件,已经在多处理器系统中高吞吐量和高 性能并行执行过。这些s t a g e 摒弃了传统编写代码的通用数据处理方式。 用户扩充方面,企业版提供了许多机制用来建立自定义的s t a g e :w r a p p e d , 允许并行执行一个顺序程序。b u i l d ,允许自动并行执行自定义用c 语言表达 式开发s t a g e 。c u s t o m 提供了完整的c + + a p i ,来开发复杂和扩展的s t a g e 。 基于组件架构和扩展内嵌组件类库的d a t a s t a g e 企业版消除了对传统编码方式 的需要,最大化了组件的重复使用。企业版开发和扩展架构使得和第三方软件和 已存在的程序的整合到扩展数据整合应用变得非常容易。 调度方面,d a t a s t a g e 企业版提供了灵活功能来迎会复杂生产环境下的配 置、时间调度、监测和管理应用的标准。它提供了一个图形化的作业顺序器,允 许用户定义作业执行的序列。设计一个作业序列就象设计一个作业。 元数据方面,d a t a s t a g e 企业版的端到端元数据在数据整合生命周期中由所 有的工具中共享,确保有关元数据可以勾画出一个清晰、明确的业务视图。 d a t a s t a g e 企业版元数据管理通过提供一致、正确的元数据来帮助用户管理数据 7 中山大学硕士学位论文 s d & c 信息统计分析系统f n 工具的研究与实现 中有用的部分。这样就可以减少在多工具中共享元数据时候存储和更新元数据目 录的负担。通过d a t a s t a g e 企业版的元数据分析和管理功能确保整个商务智能 架构中整合和业务规则的重复使用变得简单,而不需要传统编码方式。d a t a s t a g e 企业版通过提供独特的元数据共享功能而不仅仅在e t l 工具中具有,避免了不 同方法定义问的混淆和冲突,这样就使得用户可以在建模工具、e t l 工具和最终 用户报表工具中获得最完整的语义层。确保没用的或冗余的元数据被排除掉,使 得业务管理者通过常用的方法理解数据,作出严谨的决策。跨工具冲突分析,使 你可以评估变化是如何影响d o w n s t r e a m 报表的。数据继承m a p p i n g 确保你总 是可以回答这样的问题:“这些数据是从那里来的”,这个功能贯穿整个整合生命 周期处理一这是d a t a s t a g e 特有的。这样大大增强了开发者和基础原则经常改 变中的业务分析的产品性。 缺陷;首先,虽然d a t a s t a g e 在元数据方面有着一套比较完善的机制,但其 实际的使用情况并没有如d a t a s t a g e 白皮书中描述得那么好。实际上,d a t a s t a g e 只是提供了一个对上下游工具的元数据进行管理的功能,并没有做到真正无缝集 成。其次,由于o a t a s t a g e 的功能十分强大,功能种类十分繁多,有些功能甚至 有混淆视听的嫌疑,而在一个数据仓库应用中一般就是用到其中很小的一部分功 能,这种情况常常引起以下两个方面的不利:一是投资方面的不利,这个显丽易 见。购买d a t a s t a g e 的价格在l o o 万左右,虽然数据仓库项目一般都比较大,但 仍然另很多人望而却步;二是使用方面的不利,如此多地功能使得d a t a s t a g e 的学习曲线会很长而且很陡。 s a g e n t 作为专业的b i 厂商,为用户提供了高性能、商伸缩性、可视化的e t l 解决方案。该方案已经被微软、i b m 等众多的用户作为数据仓库建设的主要工具。 架构方面,s a g e n te t l 主要又四个模块组成:s a g e n td e s i g ns t u d i o 用来 设计e t l 过程和元数据;s a g e n ta d m i n 用来对元数据进行管理;s a g e n t a u t o m a t i o n 用来自动化e t l 过程;s a g e n td a t al o a d 用来执行e t l 过程。通过 这个解决方案,用户可以将数据从数据源经过各种转换、存放到数据仓库中。 8 生当查兰堡圭兰丝丝奎 ! 旦曼竺笙星竺盐坌堑墨竺巴三墨箜里茎主薹墨 数据连接方面,s a g e n t 的d a t af l o ws e r v e r 内置了对流行关系型数据库的 直接互联能力,如o r a c l e ,i b md b 2 ,m i c r o s o f ts o ls e r v e r ,i n f o r m i x ,s y b a s e 和r e db r i c k ,他支持o d b c ,o l e - d b ,f t p 和m t p ) ( m l ,作为对非通用数据非关 系型数据的存取方法,当然,大部分功能强大的e t l 工具都有这个功能。s a g e n t 的一个特殊方面就是提供了不用编码的对于大机数据的访问方法,还和s a p 集成 在一块,可以直接从s a p 中抽取数据。 数据处理方面,s a g e n t 的数据处理是建立在元数据的基础上的,主要是采用 了s a g e n t 内嵌的t r a n s f o r m 。 s a g e n tt r a n s f o r m 包含了5 大类8 0 多种 t r a n s f o r m ,能够完成大部分数据处理的工作,这五大类主要有数据抽取类,数 据装载类,数据流管理,数据处理类,数据显示类。 用户扩充方面,s a g e n t 在这方面的功能也是非常强大,它所采取的主要方式 是a 通过s a g e n t 所支持的脚本包括d t ss c r i p t ,v bs c r i p t :b 通过存储过程; c 提供了s d k 来开发转换模块,等来满足用户需求的变化,用户还可以通过v c 十+ 来调试自己的转换模块。 调度方面,s a g e n t 是利用s a g e n ta u t o m a t i o n 这个工具来实现的。s a g e n t a u t o m a t i o n 主要的构成单元有激发事件( 包含时间和计算环境中的各种不同的 时间类型) 和执行任务两方面。s a g e n t 的调度执行功能方面比起其它的相仿的 工具来说比较突出的地方是,在e t l 过程执行的断点恢复技术上,s a g e n t 所提 供的手段更加灵活:a 它提供了一系列的可选择的参数,让用户的断点恢复有更 多的自由选择:b 它提供了完善的异常处理功能,这对于分析断电时非常重要的。 元数据方面,整个s a g e n te t l 解决方案都是基于元数据的,s a g e n t 对系统 中几乎所有的对象都在元数据中进行了描述,包括数据对象,数据抽取,数据装 载,转换模块和处理流程等,系统能够通过运用元数据访问和管理接口来扩展系 统的功能。另外,s a g e n t 将所有的元数据存放在第三方的数据库中,有1 0 0 张 数据表构成。s a g e n t 是通过系统管理工具s a g e n ta d m i n 来管理元数据的。s a g e n t a d m i n 对分布式的数据集市提供了集中式的管理功能,同时可以管理用户对元数 据的访问权限。 缺陷:s a g e n t 有着和d a t a s t a g e 相似的缺点。首先,s a g e n t 的元数据方案 由于也没有遵循一种开放的元数据交换标准比如c w m 和x m i ,使得元数据很难在 9 ! 当查兰堡圭兰堡丝苎 竺苎曼堕璺垫盐坌堑至釜! 里三墨箜里塞兰塞墨, 企业间进行交换;其次,s a g e n t 的功能也是十分强大的,功能种类十分繁多的, 这样也会引起投资和使用两方面的不利。s a g e n t 的一个比较特别的缺陷是:不 能在u n i x 平台上运行,不过其新版本已经着手弥补这个缺陷了。 2 2 3b e e l o a d 【2 7 国内基本上没有成熟的商业研l 工具,大部分的数据仓库项目的e t l 部分都 采用国外的工具或者自行开发e t l 子系统。当然,有很多的团队根据市场的需要 也开发出了一些小型的e t l 工具,他们或针对某种行业,或精简了商业工具中的 一些功能。b e e l o a d 属于后一种。 以下描述b e e l o a d 的主要特性: 执行效率 软件采用多线程机制,可以同时运行多个e t l 任务;使用j d b c 连接数据霹, 针对不同的数据库,软件内部做了专门的优化处理,对抽取记录数不加限制:采 用批量更新方式,在抽取和装载时效率更高。 易操作性 软件采用图形向导方式,帮助用户生成抽取数据源( 在数据源定义中,可同 时实现数据清洗,粒度选择) ,目标装载数据源,转换规则的脚本描述定义。对 于将要执行的e t l 任务,采用作业调度方式,支持定时运行( 定时既支持周期性, 也支持一次性) ;对于多个将要运行的作业,软件支持排队机制,限制当前运行 的作业数;对于排队作业,支持优先级设置。 灵活性 软件内置脚本解释器,对于e t l 规则定义,软件将其存为可读的脚本文件, 用户可以编辑脚本来扩充规则定义,产生更为完备的规则描述。对于不同的e t l 任务,可通过使用脚本内置的各类a p i 函数调用来完成,这样通过编辑脚本的方 式,可以完成相当复杂的e t l 规则描述。 兼容性 软件支持o r a c l e8 i 、o r a c l e9 i 、s q ls e r v e r2 0 0 0 、s y b a s ea s e1 2 5 ,d b 2 8 1 、m y s q l4 0 等数据库,同时支持数据库内部的所有字段类型。 中山大学硕士学位论文s d & c 信息统计分析系统吼工具的研究与实现 可移植性 软件主体全部由j a v a 写成,因此有较强的跨平台性。 缺陷:对于一个通用e t l 工具而言,b e e l o a d 的缺陷是很明显的。首先,元 数据是这个工具的一个硬伤,对元数据它基本上没有任何特别的考虑;然后是断 点续传功能,当数据库连接异常或任务执行被中断后,下次执行时不能从中断点 继续运行;再次是性能不高,尽管开发人员做了很多的优化工作,但与上述几款 商业工具相比,性能还是不高。 以上对市场上流行的有代表性的几个e t l 工具进行了分析概述,分析这些工 具的目的就是要从这些工具中看到现在e t l 的应用现状以及所存在的问题,下一 节将对这个主题进行详细的分析。 2 3e t l 在实际应用中存在的问题n ,3 “” 数据仓库渐渐在国内电信、金融、企业等各个行业普及开来,对数据仓库的 理解虽然还有很多争议,但这几年国内已经有很多企业公司做过各种尝试。虽然 广为传颂的成功案例不多,但相当多项目都或多或少解决了一些需求,也为下 步发展给了指导性作用。 e t l 部分是数据仓库项目中问题比较集中的部分,常见的问题如下: a 元数据问题。 元数据( m e t a d a t a ) 在e t l 中是一定会涉及到的,e t l 子系统和别的子系统 的集成以及e t l 子系统本身的维护等都涉及到元数据,但实际上经常因为项目牵 扯数据较单一,业务分析需求不复杂,而隐含在项目的文档、代码、界面里面了。 而且,元数据又不像展现等功能可以让业务人员直接看到工作结果,为了迁就现 有的业务系统,为了能在指定的时间内系统上线,元数据往往被草草舍弃掉。如 何提交一份可以真正帮到e t l 实现的元数据,利用到项目前期的需求分析及业务 系统调查结果,以及在赶工期的时候如何协调模型的变化及与e t l 的关系等都是 现今e t l 中急需解决的问题。 b 体系结构的问题。 从当今主流商业e t l 工具的功能即其将提供的功能来看分布式,低耦台性, 1 1 中山大学硕士学位论文s d c 信息绕计分析系统e t l 工具的碍f 究与实现 高扩展性,高可重用性的e t l 是发展趋势。这是现今市场变幻莫测的需求决定的, 是市场的需要所在。但同时也要认识到,集成性高的e t l 在有些场合具有更高的 数据抽取转化装载效率。因此,具体项目具体分析,预测将来可能的需求变化, 正确选择有适当的e t l 架构的产品,是e t l 中面临的又一问题。 c 工具的通用性问题 越是商业的产品,对通用性的考虑就越多,考虑的面就越广,这个当然有利 于工具的广泛应用,但同时也带来了问题,那就是面对某一具体行业时所表现出 来的能力并不令人满意。 d 工具的使用问题 从2 2 节中的分析可知,商业工具的一个大的优点就是功能非常强大,丰富, 这给用户带来方便的同时,也增加了工具使用的难度。一般来说,一个数据仓库 项目只需要用到工具很少部分的功能,而大部分的功能点则是浪费的。 e 是购买工具还是自己编写e t l 系统的问题。 这个话题的争论可以说永无休止,很显然这两种方式都有各自的优势和劣 势。后者的最大的好处就是灵活性非常的高,而且对于少数非常复杂的e t l 过程, 这种方式是非常有效的;第二个好处就是项目前期开销会相对减少。除了上述两 个方面,则不论是在降低项目风险,缩短项目工期,还是在降低开发和后期维护 难度等方面,使用e t l 工具明显更加有利。 中山大学硕士学位论文 s d & c 信息统计分析系统e t l 工具的研究与实现 第3 章相关知识和技术基础 3 1 数据仓库 3 1 1 数据仓库的概念1 ,2 1 目前,数据仓库一词尚没有一个统一的定义,著名的数据仓库专家 w h i n m o n 在其著作 b u i l d i n gt h ed a t aw a r e h o u s e 一书中给予如下描述:数据 仓库( d a t aw a r e h o u s e ) 是一个面向主题的( s u b j e c to r i e n t e d ) 、集成的( i n t e g r a t e ) 、 相对稳定的( n o n v o h t f l e ) 、反映历史变化( t i m ev a r i a n t ) 的数据集合,用于支 持管理决策。对于数据仓库的概念我们可以从两个层次予以理解,首先,数据仓 库用于支持决策,面向分析型数据处理,它不同于企业现有的操作型数据库;其 次,数据仓库是对多个异构的数据源有效集成,集成后按照主题进行了重组,并 包含历史数据,而且存放在数据仓库中的数据一般不再修改。 3 1 2 数据仓库的特点 根据数据仓库概念的含义,数据仓库拥有以下四个特点: i 、面向主题。操作型数据库的数据组织面向事务处理任务,各个业务系统之 间各自分离,而数据仓库中的数据是按照一定的主题域进行组织。主题是一个抽 象的概念,是指用户使用数据仓库进行决策时所关心的重点方面,一个主题通常 与多个操作型信息系统相关。 2 、集成的。面向事务处理的操作型数据库通常与某些特定的应用相关,数据 库之间相互独立,并且往往是异构的。而数据仓库中的数据是在对原有分散的数 据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数 据中的不一致性,以保证数据仓库内的信息是关于整个企业的一致的全局信息。 中山大学硕士学位论文 s d & c 信息统计分析系统g i lt 具的研究与实现 3 、相对稳定的。操作型数据库中的数据通常实时更新,数据根据需要及时发 生变化。数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数 据查询,一旦某个数据进入数据仓库以后,一般情况下将被长期保留,也就是数 据仓库中一般有大量的查询操作,但修改和删除操作很少,通常只需要定期的加 载、刷新。 4 、反映历史变化。操作型数据库主要关心当前某一个时间段内的数据,而数 据仓库中的数据通常包含历史信息,系统记录了企业从过去某一时点( 如开始应 用数据仓库的时点) 到目前的各个阶段的信息,通过这些信息,可以对企业的发 展历程和未来趋势做出定量分析和预测。 企业数据仓库的建设,是以现有企业业务系统和大量业务数据的积累为基 础。数据仓库不是静态的概念,只有把信息及时交给需要这些信息的使用者,供 他们做出改善其业务经营的决策,信息才能发挥作用,信息才有意义。而把信息 加以整理归纳和重组,并及时提供给相应的管理决策人员,是数据仓库的根本任 务。因此,从产业界的角度看,数据仓库建设是个工程,是一个过程。 3 2a s 4 0 0 即相关技术简介 3 2 i s 4 0 0 简介啪 a s 4 0 0 是i b m 公司的中小型商用计算机系统,因其卓越的性能,它在全世 界已赢得了大、中、小型企业的客户青睐,在国内装机量已经有几千台,它的主 要特性包括集成性、开放性、可移植性、兼容性、可连接性、可支付性、可扩充 性等性能,下面对集成性,开放性和可连接性进行简单的描述,其余的特性可参 考 i o l 。 一集成性 首先,a s 4 0 0 是一个集成的计算机系统,它把计算机系统通常要用的如数 据库、通讯、安全性等功能全部集成在操作系统中,最大限度的实现了各功能兼 容性。用户可以用单一的方法对整个系统进行方便的统一维护和管理。 a s 4 0 0 的集成性还表现在它有一个集成的数据库d b 2 , 4 0 0 。d b 2 4 0 0 是世 1 4 中山大学硕士学位论文 s d & c 信息绕计分析系统e t l 工具的研究与实现 界上最流行、应用最广泛的数据库系统之一,a s 4 0 0 在全世界装机超过5 0 万套, 那么就有5 0 万套的d b 2 4 0 0 在运行。d b 2 4 0 0 不仅集成于o s 4 0 0 中免费提供 给用户,而且还具有四大功能:存储过程,参照完整性,触发器和二阶段提交。 它的这些特性为数据的安全、数据的维护和软件编程提供了很多的便利条 件。a s 4 0 0 还为用户提供了很多编程语言,像流行的r p g 、c 等。 a s 4 0 0 系统管理对用户来说也是非常方便的,能够自动管理系统的各种资 源。 开放性 a s 4 0 0 是一种能够满足不同用户要求的开放系统,从互操作性上讲,a s 4 0 0 能够以任何方式与任何及其互联。a s 4 0 0 支持绝大多数互操作标准,可以支持 几乎所有的通讯协议。a s 4 0 0 中集成的数据库系统d b 2 4 0 0 是一个全功能的、 开放性的关系型数据库系统,除了可以方便的与d b 2 家族内的数据库互联外, 还可以与其他厂家提供的数据库系统实现互联,如i n f o r m i x 、o r a c l e 等。 一可连接性 可连接性是指用户可以任意选择工作平台和界面。对于a s 4 0 0 用户来说, 在使用a s 4 0 0 的功能时,不一定必须使用a s 4 0 0 的字符终端,可以通过任何 工作平台访问到a s 4 0 0 。 在与客户机连接方面,a s 4 0 0 也是相当灵活的。通过a n y n e t 4 0 0 这个产品, 客户机既可以通过s n a ,也可以通过t c p i p 的网络环境与a s 4 0 0 相连,实现 通讯功能。在引入n e t w a r e 之后,用户便无需再关心底层的通讯协议了。 3 2 2r p g 简介 r p g 语言的全称是r e p o r tp r o d u c t i o ng e n e r a t o r ,它是a s 4 0 0 主机上特有的、 专门针对数据库操作的一门高级语言。它只能在a s 4 0 0 环境上进行开发和运行, i b m 根据这门语言的设计初衷,结合a s 4 0 0 主机系统的特点,在系统和数据库 方面进行了封装,提供了大量的函数和数据区,使r p g 成为了一种方便、快捷、 简单易懂又极为精炼的开发语言。 r p g 程序源代码是由一系列定义的表格组成的,每种表格都有自己特有的 中山大学硕士学位论文 s d & c 信息统计分析系统e t l 工具的研究与实现 功能。每行源代码的入口定义了该行代码是属于哪种表格。在5 1 版本之前,所 有表格的源代码书写都是采用固定格式,程序员必须在规定位置书写各种操作代 码。在5 1 以后,有些表格的书写可以采用自由格式了,风格类似于c 语言。 r p g 总共有7 种类型的表格。在一个r p g 程序里,根据具体的应用,这7 种表格是可选的。特别要说明这7 种表格是有顺序的,源代码的书写必须严格遵 守它们之间的先后顺序。现对它们的顺序及各部分的功能介绍如下: 主程序部分: 1 控制表:以h 开头,这部分主要是设置程序的编译和运行环境,比如程 序名称、日期格式、是否有主程序、运行模式等等。 2 文件表:以f 开头,它主要是定义程序用到的所有文件以及程序对它们 操作模式等等。 3 定义表:以d 开头,它是定义程序用到的所有数据,比如变量、常量等 等。 4 输入表:以i 开头,它是定义程序内部用到的输入记录和字段。这一部 分在4 版本以后基本上已经被定义表所取代。 5 运算表:以c 开头,是程序的核心部分,包括程序的处理逻辑和对数据 的各种操作。在5 1 版本以后,这部分可以写成自由格式。 6 输出表:以o 开头,主要是定义程序的输出记录格式,程序会根据这个 格式输出报表。这一部分一般会另外创建打印文件来替代。 子过程部分: 1 过程表:以p 开头,标示子过程的开始和结束,以及是否输出等。 2 定义表:以d 开头,定义局部变量和常量等。 3 运算表:以c 开头,也就是这个子过程的处理逻辑。 随着j a v a 技术的发展,与j a v a 语言结合在一起,由j a v a 程序负责管理 调度,而由a s 4 0 0 上的r p g 程序负责具体的数据处理这样一种模式被运用的越 来越多,也越来越受欢迎,同时也给r p g 语言注入了新的活力。 3 3 移动a g e n t 技术 中山大学硕士学位论文s d & c 信息统计分析系统e t l 工具的研究与实现 3 3 1 a g e n t 简介“ 在分布式计算领域中。有许多解决不同问题的技术,如r p c 或r m i 。其使 用固定在远端工作站上的函数,并且藉由消息传递( m e s s a g e - p a s s i n g ) 的方式 来传送信息,以协调整个分布式计算;而移动代理( m o b i l ea g o r a s ) 系统,则是 分布式计算研究的新领域。m a 能够穿梭在网络的许多主机问执行各种特定任 务,如搜寻远端工作站上的目录信息、更新文件、计算统计资料、或者与其他 a g e n t s 沟通等等。 a g e n t 的研究起源于人工智能,a g e n t 是指能模仿人类行为和关系、具有一 定智能并且能够自主运行和提供相应服务的软件体。同目前流行的软件实体( 对 象,构件等) 相比,a g e n t 的粒度更大,智能化程度越高。a g e n t 在自主性,智 能性,开放性这些方面有着众多优点。 a g e n t 的优点很多,常常被人们提到的有以下几种:降低网络负载,克服网 络延迟,包装不同协议,异步和自主执行功能,动态适应环境,自然的异构性, 健壮性和容错性等,因此经常被用于电子商务,个人助理,安全代理,分布式信 息检索,电信网络服务和工作流系统等方面。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论