毕业设计外文资料翻译--用于XML处理的Java的性能分析

上传人:liy****000 文档编号:115247527 上传时间:2019-11-13 格式:DOC 页数:23 大小:526KB
返回 下载 相关 举报
毕业设计外文资料翻译--用于XML处理的Java的性能分析_第1页
第1页 / 共23页
毕业设计外文资料翻译--用于XML处理的Java的性能分析_第2页
第2页 / 共23页
毕业设计外文资料翻译--用于XML处理的Java的性能分析_第3页
第3页 / 共23页
毕业设计外文资料翻译--用于XML处理的Java的性能分析_第4页
第4页 / 共23页
毕业设计外文资料翻译--用于XML处理的Java的性能分析_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《毕业设计外文资料翻译--用于XML处理的Java的性能分析》由会员分享,可在线阅读,更多相关《毕业设计外文资料翻译--用于XML处理的Java的性能分析(23页珍藏版)》请在金锄头文库上搜索。

1、毕业设计外文资料翻译学 院: 专业班级: 学生姓名: 学 号: 指导教师: 外文出处:(外文) Bruno Trevizan De Oliveira.ISBN: 978-0-9853483-3-5 2013 SDIWC 附 件:1.外文资料翻译译文; 2.外文原文 指导教师评语:该同学的英文专业资料术语翻译较准确,体现了一定的专业英语水平。翻译材料能与原文保持一致,能正确表达出原文意思。翻译字、词数满足要求。翻译材料语句较通顺,翻译材料的格式符合要求。该同学较好的完成了外文文献翻译工作。签名: 2015年10月14日外文资料翻译译文用于XML处理的Java的性能分析 Bruno Oliveir

2、a1引言可扩展标记语言(可扩展标记语言)由于其结构简单,在许多应用中被广泛用于数据表示,因此可用于保证数据的可移植性。数据交换系统之间的异构性高,便于信息的交流和共享,它是平台独立的,这使得它的多数应用中很有吸引力美国与XML格式有其他语言补充这种格式的应用领域,如XSD,XSLT或XQuery。目前,XML格式用于几种发展软件类型,包括网页、Web服务、网络应用,完全基于XML的数据库访问和修改操作,一旦影响到XML文件的操作是必不可少的于任何增加的数据量,通过这些操作的复杂性,并在较短的时间内需要处理的。再加上这不断增长的数据,XML文档可以达到大数R兆(甚至千兆字节),限制和调节用于处理

3、XML数据的应用有吸引力的开发技术。还加上了可移植性的概念编程语言提供了一组允许的操作的结构化文档的接口,根据该格式。由于其便携性,Java和XML中常用的应用发展。本论文的主要研究重点是对应用编程语言进行语言处理的各种分析模型和API(应用编程接口)进行了研究,并对其进行了分析和研究提供刷新基准可用表示模型,确定哪些是最适合的访问和大型XML文档的转换。我们也将主要优势识别IED的每个表示模型,始终保持性能因素考虑。下一节(2)检查一些内存和流表示模型,识别文档如何处理根据每一个分析模型。3节和4的API,有些回忆的API和功能流。第5节比较内存为基础的API的性能和内存消耗下一步,在6节中

4、,我们比较了先前研究的最佳API的改性效果,终止了该论文的7节。2内存和流表示模型由于它的复杂性和重要性,分析过程是最关键的操作,在XML处理,直接处理时间和内存消耗。一些研究有蜜蜂用目标来测试和改进表示模型和API的处理。然而,有些人并没有把重点放在Java编程和其他人是过时的。这是主要由各种更新和执行环境的改善造成的,特别是在Java虚拟机的影响,我们知道,在操作运行和有效性。在处理XML文档的过程分四个阶段进行阐述:分析被认为是在性能上,迈出了关键的一步,访问、修改和系列化,其性能是方向通过解析模型直接影响。作为性能最关键的因素,分析其角色的转换,在转换成字符格式,主要涉及不是一种编程语

5、言理解,词法分析,这是一个过程,识别XML元素,例如开始节点,结束节点或字符,应用世界范围内定义的正则表达式B联盟(W3C)。分析阶段的最后一步是对文档进行语法分析,如果文档符合一个XML文档的构造规则,就要检查它,在分析过程中,该接口实现了对数据的访问和修改操作。2.1基于内存的表示模型大多数基于内存的API在数据处理中使用一个通用的模型,其中的XML文档完全以树的形式存储在多个节点上,从一个单一的节点上降下树的根。这种模式允许使用不同的方法来定位和操作包含在节点中的数据。对于每一个搜索,或者其他类型的操作,它是必要的由根元素继续在结构层次结构中的处理,以访问剩余的数据(图1)。由于所有的信

6、息都在内存中可用,我们可以在运行时遍历图1.内存树表示的例子树DOM的秩序,改变节点的定位在一个非常简单和容易的方法执行数据转换。考虑到其存储结构表示,这些API,方便应用发展,提供一个广泛的搜索方法,让您可以轻松地执行树的组成节点上的操作,然而,内存为基础的蜜蜂消耗,平均四至五时间比文件大小更大。例如,一个20 MB的文件的需求,根据不同的表示模型,为约100兆字节是存储在内存中,这可能是处理大文件的问题。2.2流媒体模式基于流媒体的应用程序使用最少的内存资源对文档进行顺序扫描,通常,这种类型的API使用了XML文档的深度(嵌套元素的数目)和最大在XML元素中存储的数据。这两个都是比内存为基

7、础的分析树方法的大小总是小于。然后,文档的一小部分提取序列uentially不需要加载整个文档的结构。通常,解析器读取XML文档,它将调用一个特定的方法来处理它的对象。图2介绍了E SAX(XML处理简单的API)的XML处理模型,这是类似于其他的基于流的API。图2.SAX解析模型该分析器被配置为输入源,它与一组确定的内容管理方法相关联,例如,该文件的开头或结束,以及数据的元素可能包含在分析步骤期间发生的错误。程序运行时,通过内容管理方法捕获的事件triggersare。每次解析器检测XML的重要组成部分外触发以适当的方法读取相应的数据块。基于流媒体的API更适合处理大数据文件,因为,在理论

8、上,他们可以处理无限大小的文件。3基于记忆的API为了得到一个基于内存的XML处理的API的概述,我们进行了一项具体的研究,以确定哪些API更有效的内存管理,这是更快的惯性导航与制导我们涵盖了以下的API:DOM,XOM,ojxqi,VTD,JDOM,DOM4J和Xerces2,包括在JAXP包,DOM API是一个类的集合,一组Java方法,内存中的XML处理允许一个结构类似图1。在一些情况下,DOM API的基础是新的API构建,修改它的一些特征,服务于特定目的的要求。例如,JDOMAPI允许Java XML文档的操作通过一个树结构表示,因此类似于DOM。然而,这个应用程序已经开发了专门为

9、Java语言,使它亩更直观的一个典型的Java程序员。例如,没有文本类,因为Java编程语言提供它自己的类(字符串类)。JDOM利用Java功能苏用相同的名称、反射、弱引用和使用集合,如列表和迭代器的方法创建方法。JDOM API不同于DOM API使用类而不是国米面,简化了API,但限制了灵活性。对于他的部分,dom4j是一个开源的基于DOM、JDOM API的概念,使用接口和抽象类的方法,具有广泛的U集合类的硒。dom4j是比JDOM更完整的解决方案,更加重了接口的使用,增加了一点复杂性增加成本更大的灵活性。受DOM和JDOM,XOM API被设计为是最好的两个世界。在哈罗德的演讲,XOM

10、归类为一个易于使用的API,快速和简单的。公司利用现有的Java一个机制(如JDOM),揭示了一个更受限制的API,不允许畸形文件创建,迫使验证通过继承。在这样的一些缺点概述ES JDOM的提出,即认为这不因为有几种方式完成相同的任务(一个喜欢读书的孩子元),由于在Java的使用一些空白约定(如设置方法不总是返回空白)。另一个缺点是,指的是使用对象表示的文档的元素,产生小的内存开销。在此外,还提供了比较与使用接口而不是导致更复杂的API类dom4j。简要的介绍,我们可以说,dom4j是一个API基于DOM(和扩展),一个D XOM API以简化XML处理的主要目标对DOM的原则。JDOM do

11、m4j和XOM已被专门开发的Java语言的优势,不像其他R的API(如DOM),这是在多种编程语言通用开发。XQuery是从XML文档中提取数据,允许一个高级代码创作中提取数据的一种语言,类似于关系数据库的SQL语言发生了什么。T他的语言的需要,应该把XQuery语言产生命令的API的原生支持。ojxqi(Oracle Java XQuery API)是一个API提出的Oracle这是纳入在XQuery语言支持库,简化了XML转换通过一个简单的语言的使用,这是非常相似的建筑语言。Oracle支持XQuery两个不同的层次:数据库和中间层。第一个应用于数据库环境和源二运行查询,而不是数据库。因此

12、,它是可以编译的几个条款允许XQuery执行,从而导致一系列新的结果。数据从ojxqi API是完全在内存处理,允许为DOM对象的创作表现新台币的数据。最后,分析了API,表示一个对象树结构的XML数据,命名为Xerces2,包括一套解析器使用DOM和SAX的数据模型。我们测试的DOM实现,自然遵循相同的准则,作为先前的API的架构。另一方面,VTD(虚拟令牌描述符)API使用不同的方法,有前提对象的创建是低性能的主要因素。VTD API实现了基于整数数组结构来表示数据在内存中创建对象,消除我的成本NG的提取过程中,通过对64位整数数组的使用(VTD记录)。VTD是二进制格式,指定如何分配令牌

13、(识别码)在非萃取法。概念解析“萃取”意味着XML文本保持完整的记忆而令牌代表独家使用范围和大小的位(字符串的内容不复制)。过程与其他提取的XML处理模型进行对比的方法(如DOM和SAX),分配内存块的文档内容分配,直接操纵数据。此操作只能在分析过程完成之后才能进行,将文档大小作为数据访问性能的最大瓶颈。4基于流的API基于流媒体的不保存在内存中的文件的长期结构。这种类型的API读取数据作为一系列代表他们中的一种形式,对象的事件(如DOM API),使用一个小的内存中的一部分,以顺序处理文档。对象是与不同类型的事件相关联的,并且在内存中不保持太长,而不像基于内存的方法美国的JSR(Java规范

14、请求)173定义了Streaming API for XML(StAX),允许在流模式的要素分析,并提取信息通过应用控制事件(拉模式),不同于SAX APIJAXP的包,有一个经理,以事件作为解析器方便(推模型)。而StAX API允许你丢弃信息文件中的恰当的解析(调用nextevent法),SAX解析器提取所有元素即使你不需要他们。此外,StAX有两个不同的抽象层次的API集成:诅咒的API,这是一个较低的级应用程序,专注于效率和简单的使用,这相当于一系列的事件,和基于迭代器的API,提供了一个更高层次的抽象允许流水线,并代表通过对象的事件。这个实现允许程序员问(peek()法)没有阅读活动

15、。这是可能的,跳过的光标和事件的方法的输入。在这研究我们测试了被诅咒的API,因为这是最有效的方式来读取数据XML。此外,我们还测试了SAX和StAX API允许nodefactory XOM implementation.nodefactory解析XML文档作为流像SAX和StAX。SAX,StAX和XOM(流模式的实现)在解析过程完成后,允许访问数据。此功能允许内存消耗由于处理过的数据,而不再需要,可能会释放内存,从而保持内存的使用率低作为分析过程所得。表1总结了之前的所有API。表1.API分析汇总APIParsing ModelJAXP: SaxStreaming events: push model.JAXP: StAXStreaming events: pull model.JAXP: DOMMemory: tree object.XOMMemory: tree object.OJXQIMemory: tree obje

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号