




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南交通大学硕士研究生学位论文 摘要 o l a f 和w e bs e r v i c e 都是近年来日益受到人们重视的软件技术。o l a f 向人们提供了一种强大的信息分析处理技术:而这两年来迅速崛起的w e b s e r v i c e 技术则以其开放、简单、易于实现的特点,使得跨平台的系统集成不 再困难。 本文在深入讨论o l a f 和w e bs e r v i c e 技术特点的基础上,设计了一种 基于w e bs e r v i c e 的o l a f 工具( w s o l a p ) 的系统架构,并在n e t 平台上 实现了一个基于该架构的实际的o l a f 工具。 首先,本文对o l a f 技术及其在c s 、b s 架构下的特性做了深入分析, 并对w e bs e r v i c e 技术及与其密切相关的w s d l 、s o a p 等开放标准做了简要 介绍;提出了一种基于w e bs e r v i c e 的o l a f 工具的系统架构,并将其特性 与上述两种模式的特性进行了对比分析。 在接下来的内容中,本文探讨了在n e t 平台上w s o l a f 服务器端的设 计和实现技术。服务器端利用m so l a ps e r v i c e 作为0 b 垤引擎,w e b s e r v i c e 通过a d o m d 实现对o l a p 引擎的访问:并设计了针对多维数据集的封装模 型和封装算法,在服务器端实现了利用x m l 对多维数据的封装;设计了一 种特殊的多维数据集计数器,解决了在动态维度、维长度不定的情况下多维 数据单元的定位问题;利用n e t 平台上的w e bs e r v i c e 中的s e s s i o n 对象实现 了服务器端的会话管理功能。 在第四章中,本文探讨了w s o l a p 客户端的设计与实现技术。包括有: 客户端多维数据解析算法的设计与实现;设计并实现了一种动态深度的多维 数据树用于客户端多维数据的存储和访问。本文的结尾还对基于w e b s e r v i c e 的o l a f 工具的不足进行了分析,并提出了今后进一步研究开发的设想。 关键词w e bs e r v i c e ,o l a f , x m l ,w s d l ,s o a p 西南交通大学硕士研究生学位论文 i i a b s t r a c t 7 n o w a d a y s p e o p l e a t t a c hm o r ea n dm o r ei m p o r t a n c et ob o t h0 l a pa n dw 曲 s e r v i c e 0 l a pp r o v i d e s p e o p l e w i ma p o w e r f u l i n f o r m a t i o n a n a l y s i s & p r o c e s s i n gt e c h n o l o g y ;w 曲s e r v i c e 。a no p e n , s i m p l e s o f t w a r et e c h n o l o g y , w h i c h d e v e l o p e dr a p i d l yd u r i n g r e c e n tt w o y e a r s ,m a k e sp l a t f o r m - s p a ns y s t e m i n t e g r a t i o nm u c h e a s i e rt l l a i lb e f o r e t e c h n o l o g yf e a t u r e so f b o t h0 l a pa n dw e bs e r v i c ea d i s c u s s e di nt h i s t h e s i s 。a n ds y s t e ma r c h i t e c t u r ef o r r e bs e r v i c e - b a s e do l a p ( w s o l a p ) t o o l si s p u tf o r w a r d a sa ne x a m p l e 。ap r a c t i c a l0 l a p t o o l sb a s e do nw e bs e r v i c ei s i m p l e m e n t e do n n ep l a t f o r m f o l l o w i n gi st h em a i nc o n t e n t sd e s c r i p t i o no ft h i s t h e s i s : a tt h e f l r s t 。0 l a pt e c h n o l o g ya n di t sf e a t u r e su n d e rc l i e n t s e r v e r & b r o w s e r s e r v e ra r c h i t e c t u r ea r ea n a l y z e dt h o r o u g h l y 铀s e r v i c ea n dr e l a t e d o p e ns t a n d a r d ,w s d la n ds o a p , a r ea l s oi n t r o d u c e d s y s t e ma r c h i t e c t u r ef o r w s o l a pi s p u t f o r w a r di nt h e f o l l o w i n g ,a n d i t s t e c h n o l o g y f e a t u r e sr r e d i s c u s s e dc o m p a r e dw i t ho l a pu n d e rc s & b sa r c h i t e c t u r e i nc h a p t e r 3 ,t h i st h e s i sd i s c u s s e st h et e c h n i c so f d e s i g na n di m p l e m e n t a t i o n f o rt h es e r v e r - s i d eo f w s o a p m s0 l a p s e r v i c ei su t i l i z e da s0 l a p e n g i n e a n d w 曲s e r v i c ea c c e s st h e e n g i n ew i t ha d o m d a ne n c a p s u l a t i o nm o d e la n d c o r r e s p o n d i n ga l g o r i t h m a r e d e s i g n e d t oe n c a p s u l a t em u l t i d i m e n s i o nd a t a s e t 1 1 璩 p r o b l e m o fh o wt ol o c a t em d ( m u l t i d i m e n s i o n a l ) d n t a s e t p o s i t i o ni sr e s o l v e db y d e s i g n i n g as p e c i a lm dd a t a s e tc o u n t e r s e s s i o n m a n a g e m e n t i si m p l e m e n t e dw i t h s e s s i o n0 b j e c ti nw ,e b a p p l i c a t i o no n n e tp l a t f o r m t h et e c h n i c so f d e s i g na n d i m p l e m e n t a t i o nf o rt h ec l i e n t - s i d eo f w s o a pa r e d i s c u s s e di nt h e c h a p t e r 4 c l i e n t - s i d e p a r s i n ga l g o r i t h m i s d e s i g n e d a n d i m p l e m e n t e d t o p a r s e m dd a t e s e t , w h i c hi s e n c a p s u l a t e d w i t hx m lo n s e r v e r - s i d e i no r d e rt os t o r ea n da c c e s sm d d a t a s e t ,d y n a m i c d e p t ht r e em o d e l f o rm d d a t a s e ti sd e s i g n e da n d i m p l e m e n t e d k e y w o r d sw e b s e r v i c e ,o l a p , x m l ,w s d l ,s o a p 西南交通大学硕士研究生学位论文 第l 页 第1 章绪论 自2 0 世纪6 0 年代以来,数据库和信息技术已经系统地从原始的文件处 理演化到复杂的、功能强大的数据库系统:与此同时,计算机硬件技术的快 速发展也使得对海量数据的存储成为可能。事实上,随着社会信息化程度的 不断提高,各种各样的数据也呈爆炸性的速度增长。然而在这些数据中,可 能只有一小部分是对用户来说是有用信息。面对海量的数据,单靠人力对数 据进行提取整理显然是不可行的,由此带来了对强有力的数据分析工具的需 求。在这一背景下,o l a p 技术( 联机分析处理,o n l i n e a n a l y t i e a lp r o c e s s i n g ) 越来越引起人们的关注。自2 0 世纪9 0 年代以来,o l a p 技术得到了快速发 展并逐步使用开来。o r a c l e 、微软、m m 等著名的数据库系统开发商也直接 在自己的数据库系统中提供了对o l a p 的支持,例如微软就随$ q l s e r v e r 发 布了a n a l y s i ss e r v i c e s ,为用户提供0 l a p 服务1 2 3 1 。 另一方面,i n t e m e t i n t r a n e t 的出现,特别是w e b 技术的兴起,很大程度 上改变了人们使用计算机的方式,越来越多的机构组织或是个人开始在w e b 上进行信息交流,各种基于w e b 的信息获取工具迅速发展( 例如w e b 浏览 器) 。其结果是,近年来w w w ( w o r l d w i d ew 曲) 迅速发展成为h l t e m e t 上 非常重要的信息载体,其传送和存储的信息量均超过了使用其它类型协议的 工具1 4 j 。w e b 平台重要性的日渐提高,也促使人们投入更多的人力物力用于 完善构筑w e b 平台的硬件设施和软件技术,并且越来越多的应用系统被构建 在了w e b 平台上。 通常,这些构建于w e b 之上的应用系统都是基于不同的软硬件平台。采 用不同的技术开发的,而且在现有的开发模式下,系统的实现都是以特定的 软件技术为中心【9 j ,数据格式及数据交换技术都是以软件技术为导向,底层 的通信结构缺乏统一的标准。现实中,组织与组织之间、组织与个人之间的 信息交互是不可避免的,而且随着w e b 技术的不断发展,交互的平台逐渐的 向w e b 平台上迁移。但是这就带了了新的问题:由于存在着众多不同的软硬 件平台。而且缺乏统一的数据交换标准,这就给w e b 平台上的信息交互带来 了很大的障碍。虽然d c o m 和c o r b a 等技术的出现,允许应用系统间以某 种一致的方式实现信息交互甚至远程过程调用( r p c ) ,但是d c o m 和 c o r b a 都有其自身的局限性1 2 0 】: 首先d c o m 和c o r b a 技术都是平台相关的,而且两种技术互不兼容。 选择了某项技术,不仅意味着选择了所使用的系统平台,而且最好通信的对 西南交通大学硕士研究生学位论文 第2 页 秀氇是采曩了稳溺戆技拳; 其次,这两项技术与现脊的技术不易集成。假设猩现有的系统巾使用了 d c o m ,但是幽于需要,在新系统中又必须使用c o r b a ,那么要使这两种 技术能够协同童作,就必须猩两者之间建藏挢( b r i d g e ) ,以完成两精之阔进 瑟僖悫交戛时熬数据浃瓣。这徉一来,系统复杂瘦必定会撵蹇,褪纛豹并发 和维护成本也会增加。 而且,d c o m 和c o r b a 在实际运行中对运行环境有比较严格的凝求【2 2 】, 二卷都比较适会小范围内的系统间通信,比如i n t r a n e t 环境中服务器之间的 逶痿,嚣瓣予程i n t e m e t 繇麓孛大范匿戆分布式系统魏魏建显然是誉遥合懿。 但是社会傣息化程度的提高,特别怒电子商务的发展,要求对犬量分散 的浆统进行集成。砸对新的黼求。必然需鼷使用新的技术来满足,而且这种 技术应当摒弃现有系统中以特定的软件技术为中心的特点,转蓊突破不同的 较l 譬实瑗援术的寨缚,激数壤窝提供数攒豹鞭务( 鼹务按日、数器健输等) 为中心来制定相成的实现标准,具体的讲,该技术应当具有如下特点【2 0 】: 1 ) 使用现有的技术( 协议、网络访问、硬件、软件) ,价格低廉,易于实现 和维护,裁够充分利用现有软硬律资源戆特点: 2 ) 基予一个歼教的标准,黥够被任俺入访阔; 3 ) 本质上不髓癸昂贵的软件技术就能保诚可靠的消息发送; w e b s e r v i c e 正是这样一种革命性的软件技术。具体的讲,这种技术的优 势凌予;。 1 ) w e bs e r v i c e 以w s d l ( w e b 服务捅述语言) 攒述爨身的接日特性,以 s o a p ( 简单对象访问协议) 对交互傣息进行封装,而w s d l 和s o a p 的数据格式都是基于x i v i l 这一被广泛接受的标准。因此,跨平台的信 悫交互孛数撵牾式不一致豹润题撂爨解决; 2 ) s o a p 使用h 订p 或者s m t p 作为消惠传输协议,使得w e bs e r v i c e 可以 通过标准的网络传输端1 :3 ( h t t p 为8 0 ) ,穿过防火墙进行r p c 调用和 响应,而不楚于影响原露系统的安全性。相反的,d c o m 和c o r b a 都 爨要在系统孛嚣菝专瘸豹瀵墨; 3 ) w e b s e r v i c e 本身建立在歼放的标准之上,因此具裔很强的交互饿,多个 w e bs e r v i c e 之间的相甄调用不需要桥进行数据映射或转换。而麒w e b s e r v i c e 本身可以使用任俺开发平台、经何语言在遵循相关标准的基础上 细骧实褒。 由于w e b s e r v i c e 具有的种种优良特性,其影响力在避两年来迅凛扩展到 西南交远大学硕士错究生学位论文 第3 页 整个软箨纷盈,蓉至对未慕豹互联瓣应霞模式都会产生鬓穴影嫡。嚣兹,狂 行业的几大巨头,包括i b m 、s u n 、微软等,都融经投身到w 曲s e r v i c e 的 磅发行列,势在自墨豹瘦耀系统或孝嚣发王其秘提供对溉bs e r v i c e 豹支持, 特别是微软的v i s u a ls t u d i o n e t 聪是将w e bs e r v i c e 作为核心技术之一加以 推广,丽鼠该工具被称为怒当前技术上最先进、也最复杂的w e bs e r v i c e 开发 工其翻,辩w e bs e r v i c e 撬供了会话支持、事务处理等一系列高缀特往。褥 s u n 则推出了s u n o n e 意欲与微软的n e t 一争高下。i b m 也推出了用于w e b s e r v i c e 舜发懿集簸环境w s d e ( w e bs e r v i c ed e v e l o p m e n te n v i r o n m e n t ) 。 本文以w e bs e r v i c e 为技术核心,并结合o l a p 技术,介绍了一种基于 w e b s e r v i c e 豹o l a p 工具戆设诗菇实现方法,主鬃豹内容包括; i ) 对o l a p 技术及其在c s 、b s 架构下的特性做了简要分析,提出了一种 基于w e b s e r v i c e 的o l a p 工舆的系统架构,并将其特性与上述两弛模式 的特饿进行了对比分析; 2 ) 设计并实现了服务器端利用x m l 对多维数据的封装;解决丁在动态维 度、缭长度不定情提下懿多缀数舞定彼闯遂; 3 ) 客户端多维数据的解析;利用动态多维数据树存储多维数据的设计与实 瑷。 本文的结尾还对基于w 曲s e r v i c e 的o l a p 工具的不足进行了分析。并 提如了今斌进一步研究开发的方内。 西南交通大学硕士研究生学位论文j 墅! 重 第2 章o l a p 和w e b s e r v i c e 技术研究现状 2 1o l a p 技术介绍 2 1 1 什么是o l a p o l a p 也就是联机分析处理( o n l i n ea n a l y t i c a lp r o c e s s i n g ) ,这个概念最 早是由关系数据库之父e e c o d d 于1 9 9 3 年提出的删。当时,c o d d 认为联机 事务处理( o l t p ,o n l i n et r a n s a c t i o np r o c e s s i n g ) 已不能满足终端用户对数 据库查询分析的需要,s q l 对大型数据库进行的简单查询也不能满足用户分 析的需求。用户的决策分析需要对关系数据库进行大量计算才能得到结果, 而查询的结果并不能满足决策者提出的需求。因此c o d d 提出了多维数据库 和多维分析的概念,即o l a p 。 根据o l a p c o u n c i l 的白皮书的定义t 7 1 ,o l a f 技术可以对存放在数据库 中的原始数据进行分析处理,并以多维视图的形式呈现给数据分析人员、管 理人员等需要对原始数据进行统计分析的用户。这种以“事实”为中心的多 维视图比传统的二维关系模型更能真实、直观的反映出现实中某一实体与其 他相关实体之间的关系。因此,用户通过o l a p 技术这一快速而又可靠的途 径可以方便的对数据进行更深入的访问,获取隐藏在海量数据中的重要信息。 事实上,o l a p 的数据分析以及分析结果都是基于多维数据模型的【”,该数 据模型将数据看作数据方体( d a t ac u b e ) 的形式,而且该方体可以是超过三 维的1 1 维数据方体。这种数据模型的多维性,是所有o l a p 系统的共有特性, 也是其关键特性之一。关于多维数据模型,在后文中讲到多维数据的访问时 还要做更为详细的介绍。 与o l a p 相对应的o l t p ( o n l i n e t r a n s a c t i o np r o c e s s i n g ,联机事务处理) 是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如 银行交易。o l a p 则是数据仓库系统的主要应用,支持复杂的分析操作,侧 重决策支持,并且提供直观易懂的查询结果。下表列出了o l t p 与o l a p 之 间的主要差别【i j 。 西南交通大学硕士研究生学位论文 第5 页 表2 - 1o l a p 与o l t p 特点熨逆l l l 特性0 i j p o l a p 特征操作处理信息处理 面向事务分析 惩户d b a 、数豢露专整入员簿知谖工入( 主管,势辑爨等) 功能日常操作长期信息需求、决策支持 d b 设计基于e r 、丽向应用星型雪花模型,面向烹题 数据当蔚的,确保最薪历史的,跨对闻维护 汇总原始戆,鸯凌详续汇慧静,统一的 工作单位短的,简单搿务。复杂查询 存取读,写大多为只读操作 援户数数手数吾 d b 规模数m 舞g bl g 蓟t b 值得一提的是,o l a p 和与它密切相关的数据仓库是两种不同的技术, 事实上两者在功能上是一种飘补的关系,数据仓库存放和管理数据,而用户 粼透过o l a p 鼯数舞仓瘁孛豹数据遴露倏逮骞效豹访翔嬲。 目前,根搬o l a p 服务器端的数据缎织方法的不同,可以将o l a p 分成 以下几种结构:多维0 l a p ( m o l a p ) 、关系型o l a p ( r o l a p ) 以及混合型 o l a p ( h o l a p ) f 5 l : l 麓观a p : m o l a p 利用一个专有的多维数据库来存储o l a p 分析所需的数据,数 据以多维方式存储,并以多维视图方式曼示。在m o l a p 的结构中,分散在 金姚内部各o l t p 数据库中的数据经过提取、转换等步骤居提交绘多维数据 瘁这些数蠢在梭存入多缝数据疼霹,将缀据它亵瑟嚣予酌维遴牙一系秀静 预处理操作( 计算和合并) ,并把结果按一定的层次结构存入多维数据库中。 用户通过客户端的应用软件的接口递交分析需求给0 l a p 服务器,再由 o l a p 服务器检索m d d b ( 多维数握库) 褥到结果并返溷绘用户。 由于m o l a p 结梅采震了独特的多黎数据库结梅,黼显存储在其中的数 据经过了一定糨度的预处理,因此,它能迅速地响应决策分析人员的分析请 求并快速地将分析结果返回绦用户。但是谯m o l a p 结构中,o l a p 服务器 圭爨是通过读预处理过豹数摄来完或分析操作,两这些鞭处理操 筝憝预先定 义好鼢,这就袋京了m o l a p 结构的灵活後。 2 ) r o l a p : 西南交通大学硕士研究生学位论文j 墅皇里 r o l a p 在功能上类似于m o l a p ,但是它的底层数据库是关系型数据库, 而不是多维数据库。用户通过客户端工具提交多维分析请求给o l a p 服务器, 后者动态将这些请求转换成s q l 语句执行,请求的数据经多维分析处理后转 化为多维视图返回给用户。 在r o l a p 结构中,数据的预处理程度一般较低( 如果预处理程度太高, 数据冗余量大,将使管理和维护更加复杂) 。r o l a p 的主要特点是灵活性强, 用户可以动态定义统计或计算方式。r o l a p 的缺点是它对用户的分析请求处 理时间要比m o l a p 长。 由于m o l a p 和r o l a p 有着各自的优点和缺点,而且它们的结构迥然 不同,这给分析人员设计o l a p 结构提出了难题,他们必须在两种结构之间 进行选择。为此一种新的o l a p 结构混合型o l a p ( h o l a p ) 被提出,它 能把m o l a p 和r o l a p 两种结构的优点结合起来。很明显,h o l a p 结构不 应该是m o l a p 与r o l a p 结构的简单组合,而是这两种结构技术优点的有 机结合,能满足用户各种复杂的分析请求。但是迄今为止,对h o l a p 还没 有一个正式的定义,在这里本文略过对它的介绍 在本文设计的o l a p 工具中采用的o l a p 引擎是m i c m s o r 随s q l s e r v e r 发布的o l a ps e r v i c e ,该服务器同样以关系型数据库作为其数据源,但是上 述提到的三种o l a p 结构都可以得到支持( 在一个多位数据集中,只能同时 使用其中的一种) 。 2 1 2c s 模式下的o l a p 这种模式也是e e c o d d 在其 p r o v i d i n go l a p t o u s e r - a n a l y s t s :a ni t m a n d a t e 一文中所提到的早期o l a p 的实现模式【3 9 1 。传统的c s 模式下的 o l a p 工具由于能够在客户端执行大量的分析处理任务,因此可以给客户端 用户提供较强的功能,而且客户端界面具有很强的可定制性,因此可以根据 用户需要制作出友好的用户界面。但是这种结构不可避免的具有如下的缺点: 1 ) c s 模式下的应用建立和维护费用昂贵,比如系统的升级或配置修改 需要在服务器和每个客户机上同时进行,当系统需要为大量用户服务 时,工作量将会相当之大。而且在这种情况下,系统规模的可伸缩性 也将会是一个非常突出的问题; 2 ) c s 模式下的客户端程序跨平台特性差,即使客户端能运行在不同平 台上,针对不同的操作系统平台也需要开发不同的客户端应用程序, 不仅开发成本高,相应的也会增大今后系统维护的难度; 西南交通大学硕士研究生学位论文 第7 页 3 ) 在c s 壤式- f ,兔实糯系统爨提供豹凌姥,登绥漾惩专门豹客户矮痉 用程序,否则无法与服务器进行礁常的信息交换。如果一个系统需要 在大范围内进行服务器信息发布并接受客户端的反馈信息,那么采用 c s 模式将会使系统规模受到很大制约。 2 i 3 基予w e b 的o l a p 技术 随着o l a p 技术以及w e b 技术的发展,二者相结龠产生了基于w e b 的 o l a p 技寒,般篱懿必w o l f a p 。与c ,s 桨筠魄较瑟褰,b ,s 系统絮掏鼹具 有鹣优势是非常明显的,它糖供了一种戬w 国为基本渠道进行数据交换的方 法。使企业数据和应用程序能够被任何与w e b 相连的计算机获取。由乎近年 来人们在商业和娱乐方面使用i m e m e t 的缎验越来越丰寓,这就使得w e b 浏 夔鼗终必一令使瓣燕摹、廷器覆友舞翳镶惠获取工具嚣旋不弱诗冀甄瘩孚 的用户所接受;i n t e m e t 为广大用户提供了一个价格低廉的、与平台无关的信 息淡取环境,借助w e b 浏览器,用户可以通过任何计算机平台获取信息;b s 系统架构向用户提供的是“瘦客户”解决方案,将大多数应用程序的处理工 终移交绘黢务嚣,嚣馥,霹餐户溃硬终窝软侮赘授姿大为缩减,邈天天降低 了系统维护的z 作量。w e bo l a p 的典型系统架构如下圈嘲: d a t a b a ,s e s e r v e r 。+ 图2 - 1w e bo l a p 的典烈系统架构 在上图中,从功能上可以将黢个w e bo l a p 的结构分成三部分: 1 ) o l a ps e r v e r 帮d a t a b a s es e r v e r 筝必数据源巍w e bs e r v e r 提供数据 访滔服务,其中o l a ps e r v e r 完成对数据库中藤始数据懿分章秀她理, d a t a b a s es e r v e r 实现对数据库中数据的管理,并崽接向0 l a ps e r v e r 提供原始数据的访问服务; 2 ) w e bs e r v e r 嚣露与w e bb r o w s e r 彝o l a ps e r v e r 逑接,对w e b 客户端 访阕数舔群起至桥梁佟精。w e bs e r v e r 一方面接收w e b 客户端请求, 并把该请求转换成对o l a ps e r v e r 的数据访问请求;另一方面j 它负 。 一 黧囊塞墨壅璧登查鐾塞皇堂整燕塞 篓! 薹 _ _ h m _ h - - _ _ _ _ _ ”_ _ _ _ _ _ _ _ _ - _ - _ - _ _ _ - _ _ _ - _ 。_ _ _ _ _ _ _ ”1 1 ”。 费姆o l a ps e r v e r 潺嚣静数懿煞按照预定鼗菠生畿h t m l 黛捶逶弱爨 客户端; 勤w e bb r o w s e r 壹羧与最终矮户交嚣,稷豢耀户操撵缮鼗客穷溃谤鬻谤 隶,露对它也将服务器端邋嚣靛数懿呈蕊缭最终港户。 目翦躲现w e bo l a p 的方法燕簧w 以分为如下三类p j 1 ) 聪辘生成薅惑翡h t m l 页霞 这种方法逶避专用熬燹嚣生戏程垮谤勰o l a p 孳l 擎,按照谈毙设定憋煲 鬻辏式垒残黪态懿h t m l 茭嚣,熬纛露稳逮些页瓣羧嚣臻w e b 服务器上洪 客户端用户访问。这种努浅的优点在于静态页面撬采用标准的h t m l 书写 瓣,邃戴其鬻缀鼢熬莓穆挺性;碟鼠,潮乎袋强了鼷建生成势卷擞疆懿菇蕊, 瓣魏震声霹戳安溪辩这黧嫠意夔糗逮游溺。毽跫枣乎这耱方式缺泛缀努懿交 嚣幢,蘅髓蘸嚣爨颈毙惫袋黪戆淼贰疆,掰班无法安现对数豢豹貔态诱翘。 2 ) j a v a a c t i v e x 蹬律穷戏 这种方式在襄户端采用了j a v a a p p l e t s 和a e t i v e x 控馋,躅此娜以在一定 霞攫上藏多寮产辍窝骚务器之瓣戆懑蘩爨,嚣童露产器露迄褥袋浚遴。霆筵, 爵第一种方式穗眈,这种方式具裔较鞭的交互懂。鹦外,由于部分分析处趱 确熊转移剿了客户端投褥,因拢迭静露式逸藏轻亨黻务嚣端嫠受缀。但是, 遮种方式的随题在于其蹲平台特僚眈较麓,特剐燧a e t i v e x 控件技术,联稚 逐袋隈予京w m d o 辩警蠹土镬簿;j a v a 冬警歪浚遽瀵舞一疆t t r t e m e t 蠡黎, 襄楚餐不鳓h t m l 舔群灏裔禳好瓣可穆糠牲。 3 ) 快速动态生成页面方戏 在这耱海式下,当鳎户逶蓬w e b 溺熬器舞w e b 服努嚣捷交散攥谤瓣瀵 求乏嚣,簸务器: 孥鬻户谴滚转挨袋o l a p 疆务器攒定捂蕊戆数藏请求势羯 o l a p 疆务器挺交,之鬟褥瘗w e b 瓣务器按嚣攒怒熬h t m l 耩瓣藩悫,蹲 o l a p 服务器返回的数据黟成h t m l 贸蕊发送蛩j 鬻户端浏览器。糍这种方式 下,虫子聚捌了麓态熬爨燧生成蠢式,篱嚣发送裂蒜户臻躲是探壤媳h t m l 翼藩,嚣裁遮释努式不毽蹙有霰好麓跨警惫褥健,褥显翡够在一怒程度土实 现对数据的交互式动态访婀。 霉戮饕粥,簧统戆蒸予w e b 瓣o l a p 系统奁攒大程度上游滁tc t s 攘藏 下o l a p 累绞浆城点,德鼹其数据诱阏处遴的能力帮受到了相寂瓣京l 终,蕊 曩其客产鬻麓鞭予w e b 溺蕊器;褒羧箨量瑷菰及麓声交纛方嚣熬缝秀餮鬣避 予c s 模斌下的客户端。黼且在遮种“癜客户”模式下。服务器端的负荷很 熏,不仅受凝数撼谤翔、分梃楚瑗。避爱宠藏客户端薅声器覆麴她理。 西南交通大学硕士研究生学位论文 第9 页 随着技术进步以及应用需求的提高,上述单一的c s 或者b s 架构下的 o l a p 的缺点更是愈发明显起来,特别是当需要对异种架构下的系统进行整 合时,传统的c i s 和b s 架构都显得无能为力。 2 2x m l 中的元素和属性 x i v l l ( e x t e n s i b l em a r kl a n g u a g e ,可扩展标记语言) 是w e bs e r v i c e 的 重要基础之一,与w e bs e r v i c e 密切相关的w s d l ( w e bs e r v i c ed e s c r i p t i o n l a n g u a g e ,w e bs e r v i c e 描述语言) 。s o a p ( s i m p l eo b j e c t a c c e s sp r o t o c o l ,简 单对象访问协议) 等都是建立在x m l 的基础之上。为便于理解,可以将x m l 与当前w e b 页面上广泛使用的h t m l 结合起来认识。x m l 和h t m l 都是由 s g m l 简化演变而来,在结构上也有很多相似之处,但是与h t m l 不同的是, x m l 具有三个非常重要的特征:可扩展性、结构化和有效性嗍。这也正是 x m l 本身的优势所在。x m l 不像h t m l 那样只是一种用于表达w e b 页面 元素的特定标志语言,而是一种可以用来设计标记语言的元语言。通过用户 自己定义标记词对x m l 进行扩展,各种数据以及数据之间的关系都可以用 x m l 进行表达。正是由于x m l 具有这一特征,所以在本文所设计的o l a p 工具中可以利用x m l 封装o l a p 引擎提供的多维数据集。 鉴于x m l 在基于w e bs e r v i c e 的o l a p 工具中的重要性,这里对x m l 中与本论文密切相关的元素和属性这两个概念作一下简单的介绍。 从逻辑结构上讲,一个x m l 文档的基本部件就是元素及其属性。可以 把元素看作是信息的一个逻辑单位,而属性是这个信息的特征f 8 i 。换句话说, 元素表示了一个信息对象,而属性表示这个对象的性质。下面是一个简短但 是又比较典型的x m l 文档: s a m s w j t u c h e n gd u 1 2 3 4 5 6 7 8 西南变通大学硕士讲究生学位论文 第1 0 页 在上面的文档中就涉及铷了上文提到的元素和属谯两个概念。t 文中的 元素有 、 、 、 镣以大于号和小于号 旗起来的符号,而与这些符号对应豹以叫 的符号表示的是一个元素的 缝寒簿号,嚣袭之蠲罄内容表示瓣是这个露素豹痰窖纛元素,爨鲡 元索中包含了字符串s a m ,表精 元綮的内容为s a m 。而 、 元索都是元素, 元素的子元素。 元索包含了 i n d e x ”属性,该髑瞧等于”l ”,表示她址簿巾这个人 戆索孳l 号是l ;q 酗n e 元素穰含t 耩往,这令鬟毪豹篷箍述该元素 包禽的电话的擞型,上文中的”h o m e ”表示该电话是个家庭电话。 在本文设计的数据封装模型中,就是利用了元素来淡示多维数据的内容, 蔼凌该元素对嫩麴属性中存放了多维数掇麴位置信息,哭于封装模凝本文爱 瑟述会进行译绥豹讨论。 2 3w 曲s e r v i c e 及其相关技术概述 2 + 3 。1 传么是w e b s e r v i c e 简单的讲,w e bs e r v i c e 烧一种可以用于将i n t e r n e t i n t r a n e t 相连的多个主 机栩联接,形成廉拟计算环境的技术。在由w e bs e r v i c e 缀成豹虚拟计算环境 中,震产霹戳嫠耀各耱客产灏较律,惫话蠢蠡零矮酌w e b 瓣菱嚣,各秘 w i n d o w s 应用穗序或者利用j a v a 编写的跨平台的应用程序,来访问由w e b s e r v i c e 提供的服务,而用户不必关心该服务是驻留在何种勒硬件平螽上,以 及内部实现细节潮题。嚣且,掰翦w e bs e r v i c e 本身可以利用任 可可娜熬舞发 王螽采麴良实瑷,餐麴d e l p h i ,j a v a ,c c 十+ ,或者蹩c 嚣等。 从软件技术上讲,w e bs e r v i c e 是一种松散耦合、可复用的软件模块,它 封装了离散的服务功能,在i n t e m e t i n t r a n e t 上发布之厢,用户可以使用普通 豹测燕爨或一般戆客户端程黪,逶过标准熬i n t e m e t 携议进行访趣。筵详细 麓游,w e bs e r v i c e 其有舞下氏个重要特点网: 首先,w e bs e r v i c e 是可麓复利用的软件模块。w e bs e r v i c e 是对软件开 发中面向对象设计的发展和升华。它允许开发人员在i n t e r a c t 范围内非常方 便豹复雳其健舞发人员剩建的软传模块,势热骧缓戒秘扩震,形成继嬲自己 薪驹软律模块,阉时又不磐关心所使用静软件模块的运行平台、内部实现, 只滞要知道该软件模块的接翻定义。 器南交遂大学硕圭磷究生擎位论文 第1 1 页 其次,这整软释模块爨橙羧耩金戆。传统豹淼精软释设毒 模式要求各令 单冗之间紧密联接,这种紧密联接形成的复杂性要求开发人员必须对联接的 强端元素蠢完全熟了鼹积按铡能力:两虽,这静驳接一旦建立屠,缀难从中 把一个元素取出或使用另外一个元索替代。相反的,松散耦合的系统只需簧 通过非常简单的协议加以协调,必要的情况下可以对系统做出相成的调攘, 就可以确保系统的难常运行,丽鼠这种谲熬相对紧密藕合系统而翥也是受必 自凼的。 第三,w e bs e r v i c e 封装7 离散豹功戆。一令w e bs e r v i c e 羲愚一令爨毽 含的软件模块,完成单个的任务。w e bs e r v i c e 的模块使用其它软件可以理解 的方式接运输入积竣窭,其它软绺躲遵毙实现赞么功能,如舞调鼹它豹功能 以及返回什么样的结果,也就是该w e bs e r v i c e 的功能及其接口定义。 第四,w e bs e r v i c e 可以在应用程序审进行访闸。和单一类型的w e b 嘲 蛞躐是桌稀应用程净不藏,w e bs e r v i c e 本身不是设计成为赢接与用户( 指入) 进行交互的,因此不需要圈形化的用户界酾;w e bs e r v i c e 是在代码级工作, 建其麓软蛰箍供溅务,被豫较 睾调建,著与其毪软箨交换数据,奄耀户交簋 的功能由调用的软件来实现即最终仍然应当摄生成一个可以岛用户交苴 静软传。 最后,w e bs e r v i c e 是谯i n t e m e t 上发布的。w e bs e r v i c e 使用现有的并且 广泛使用的传输协议作为健输载体,例如h r r p 。使用与传输w e b 内容相婀、 并越广泛使用的协议作为传输载体,使褥w e bs e r v i c e 不需要调整现有的 i n t e m e t 架构,就可以通过防火墙岛调用实体进行通信。 为了对w e b s e r v i c e 蠢个壹麓的了麟,霹虢举一令蓠筚的铡予来加敬说 明。假设i n t e m e t 上某台主机提供名为h e l l o w o r l d 的w e bs e r v i c e ,该服务不 嚣癸入蜀参数,客户端调残之嚣会返壅字耱串“h e l l ow o r l d ”。该瑕务豹u r l 是h t t p :l o c a l h o s t w e b s e r v i e e l s e r v i c e l a s m x ,当客户端用w e b 浏览器( 这里 假设是i e ) 调强赋,浏览器将会显示妇下的蠹容 h e l l ow o r l d 可戳簧鑫这是一个x m l 文档,其中返回的字符串“h e l l ow o r l d ”靛色 含在元素s t r i n g 中。这里需簧说明的,用w e b 浏览器进行上述调用时,根据 测摭器怼x m l 文档支持糕度嚣苓鬻,霹纂显示豹蠹容会骞差瘸,秘魏嫠麓 o p e r a 浏虢器调用该服务时,将会略去x m l 文档的类型定义信息( d t d , d o c u m e n t t y p e d e f i n i t i o n ) ,嚣只在塞口中鼹示“h e l l o w o r l d ”。 西南交通大学硕士研究生学位论文 第1 2 页 但是,当使用j a v a 编写了一个普通的客户端程序来调用该w e bs e r v i c e 提供的h e l l o w o r d “函数”,那么将会返回字符串“h e l l ow o r l d ”。实际上, 不管用什么编程语言,什么平台上实现上述调用,返回结构都是“h e l l o w b r l d ”,这正是w e bs e r v i c e 的优势所在。 为保证各种平台上多种类型的客户端软件可以透明的调用远程的服务, w e bs e r v i c e 的服务接口定义、及其与客户端软件的相互通信机制都建立在了 一套公开和标准的规范之上,而且其接口定义、客户机,服务器之间消息的封 装都是采用了x m l 文档来完成的,这个过程中涉及到两个非常重要的规范, 即w s d l 和s o a p 。 2 3 2w s d l 规范概述 上一小节里已经说到w e bs e r v i c e 是一种松散耦合、可复用的软件模块, w e bs e r v i c e 客户端的开发人员不必关心所调用的w 曲s e r v i c e 的运行平台、 内部实现,只需要知道该软件模块的接口定义,就可以调用w 曲s e r v i c e 提供 的服务。也就是说,在i n t e m e t 环境下为实现对w e bs e r v i c e 调用,必须要依 靠服务器和客户机之间的某种公开协定,双方都遵循这一协定来进行设计和 开发,才能确保w e bs e r v i c e 的发布和客户端的调用得以顺利进行。这就是 w s d l 的主要功能。 从w s d l 的名称就看出,它是一种对w e bs e r v i c e 进行的描述的规范。 这个规范使用了x m l 来描述w e bs e r v i c e 各方面的特征,例如w e bs e r v i c e 所在的位置、w e bs e r v i c e 所提供的方法、方法参数、返回值类型等。在一个 完整的w s d l 文档中包含了如下的一些元素用来描述w e bs e r v i c e t 2 9 1 : 类型( t y p e ) :类型部分封装了客户端和服务器之间交换的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 会展场馆管理师操作考核试卷及答案
- 宝山防静电地坪施工方案
- 减粘裂化装置操作工专项考核试卷及答案
- 钢琴及键盘乐器制作工培训考核试卷及答案
- 地毯剪花工成本预算考核试卷及答案
- 粉末冶金烧结工三级安全教育(班组级)考核试卷及答案
- 棉纤维改性技术趋势分析
- 慈溪年会活动策划方案公司
- 数控水射流切割机操作工协作考核试卷及答案
- 照相机与辅助器材维修工工艺考核试卷及答案
- 气道温湿化管理课件
- 妇产科健康宣教
- 2025版办公楼物业管理与智能化系统集成合同
- 民办教育研究院管理办法
- 2025年上半年入党积极分子培训班结业考试题及答案
- DB65∕T 3119-2022 建筑消防设施管理规范
- 2025方便速食行业线上消费趋势洞察
- 中职女生健康教育
- 单位集中物业管理保洁服务方案方案投标文件(技术方案)
- 外事礼仪培训课程
- 2025至2030中国玄武岩纤维行业发展趋势分析与未来投资战略咨询研究报告
评论
0/150
提交评论