XML数据查询工具的性能测试

来源 :科学时代·综合版 | 被引量 : 0次 | 上传用户:shazishidaoo
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】XML已逐渐成为网络上的主流语言。本文使用XMark数据集测试了三种主流XML解析工具的性能。
  【关键词】XML;XMark;解析
  Performance Evaluation of XML parse tools
  Lei Jie Xia LingLin
  【Abstract】XML is becoming the dominant network language. In this paper we use Xmark(a kind of dataset) to test the performance of third mainstream parser tools.
  【Key words】XML;XMark;Parser
  【中图分类号】TP319
  【文献标识码】B
  【文章编号】1005-250X(2007)12-0105-02
  
  随着XML成为Web上信息表示和数据交换的国际标准,对XML的查询受到人们越来越多的关注,先后出现了很多以XML数据为查询对象的查询工具。如何从众多工具中选择合适的一种,性能是主要考虑的问题。因此,提出适当的评价指标,评价方法及实验设计,比较不同存储方式对性能的影响,进行定性和定量的研究,对于在不同应用要求下选择何种查询工具具有一定的参考意义。
  
  1 XML查询工具
  
  目前主流的XML数据查询工具主要有二种:JDOM、Dom4j和MSXML。JDOM是对一个MXL文档及其简单的Java表示法。从它们得介绍来看,它们三种工具运行平台都十分广泛,都有很强的适用性,下面我们对这些XML数据查询工具的性能进行分析。
  
  2 评价方法
  
  一般系统把查询响应时间作为衡量性能的指标。影响查询时间的因素可能来自多个方面,譬如主机软硬件环境,查询语言及其实现方式,查询数据的大小,查询目标的位置等,我们通过XMark[1]基准来屏蔽它们的差异,从而使测试结果更具有说服力。图1为XMark文档的DTD结构图。
  


  图1 XMark的DTD结构图
  
  XMark项目组提供了共20个查询的XQuery[2]表达式,分别测试系统对不同种类查询的响应情况,反映系统不同方面的性能。目前完全支持XQuery的查询器并不多,理论上也可以才用其它查询语言实现其查询语义,比如XPath[3]
  为了让测试更容易操作,结果的意义更明确,在测试中我们不考虑实际应用中可能会有的网络负荷、通信代价和结果输出的转换,全部工作都在同一台机器上完成。
  
  3 实验设计
  
  实验在同一软硬件环境下(MS Windows XP Professional 2002,Intel CPU Pentium 1.6GHZ,256MB Memory)进行。在XMark框架下对不同数据量进行测试。实验选用了XMark查询中的4个查询语句,这四个查询语句具有一定的典型性,Q1为带有条件的查询语句,Q8为同时查询多个XML元素的查询语句,Q15为查询路径较长的查询语句。下面分别给出了它们的XPath表达式:
  Q1[4](精确匹配):返回ID为“person0”的人名。
  XPath:/site/people/person[@id=“person0”]/name
  Q8(修整参考):列出人名和他们所购买物品的数量。
  XPath:/site/people/person/name|count(/site/closed_auctions/close_auction)
  Q15(路径遍历):打印已结束拍卖的注解中的关键词。
  XPath:/site/closed_auctions/closed_auction/annotation/description/parlist/listitem/text/emph/keyword
  我们编程实现了上述三个语句的测试。其中JDOM的测试代码关键部分如图2所示。
  
  SAXBuilder sb=new SAXBuilder();
  Document doc=sb.build(new FileInputStream(“test.xml”));
  List els=XPath.selectNodes(doc.getRootElement(),query);
  图2 JDOM的测试代码
  
  Dom4j的测试代码关键部分如图3所示。
  
  SAXReader reader=new SAXReader();
  Document doc=reader.read(new File(“test.xml”));
  List els=doc.selectNodes(query);
  图3 Dom4j的测试代码
  
  MSXML的测试代码关键部分如图4所示。
  
  CoInitialize(NULL);
  MSXML2::IXMLDOMDocumentPtr pDoc;
  HRESULT hr=pDoc.CreateInstance(_uuidof(MSXML2::DOMDocument40));
  pDoc->load(“test.xml”);
  MSXML2::IXMLDOMNodeListPtr pNodeList= pDoc->selectNodes(query);
  图4 MSXML的测试代码
  
  4 实验结果及分析
  
  执行图2,图3,图4的代码后,我们得到了表1,表2和表3的执行结果,通过对结果分析我们可以观察出MSXML解析工具是最快的。而且三个工具不管文档的大小如何变化也无论测试语句如何变化,总体来说执行时间相当。
  


  5 结束语
  
  通过对JDOM、Dom4j和MSXML三个工具的测试,我们可以知道MSXML的性能在它们中间是最好的。如果并没有指定特定的编译语言,MSXML是一个不错的编译工具。
  
  参考文献
  [1] Albrecht Schmidt.XMark:A Benchmark for XML Data Management[C].In:Proceedings of the 28th VLDB Conference,Hong Kong,China,2002:1236~1247
  [2] D.Chamberlin,D.Florescu,J.Robie,J.Simeon,and M.Stefanescu. XQuery:A Query Language for XML[P].http://www.w3.org/TR/xquery,February 2001:1475~1486
  [3] XML Path Language(XPath) Version 1.0[DB/OL]. W3C Recommendation 16. http://www.w3.org/ TR/xpath,1999-11
  [4] 於志勇、杨志义、 於志文、李长德.XML数据存储方式的性能评价研究[J].计算机工程与应用,2006.17:171~173
  收稿日期:2007-12-10
其他文献
在文中,所确定的220kV及以上电网继电保护研究范围主要指的是220kV、330kV、及500 kV电网。这三个等级的电网继电保护可以通过线路、母线以及与电网保护配合有关的变压器等电力设备继电保护运行整定。但文章以自动重合闸保护、纵联保护和零序电流保护方法为研究对象,主要是由于这些方法的运用可以保证220kV及以上电网继电保护实施的快速性、正确性及有效性,从表1可以很直观的看出结果。  1220k
期刊
摘要:旨在对公路桥梁减隔震技术进行介绍,在阐述一般公路桥梁减隔震系统设计流程的基础上,通过实例分析了减隔震系统设计的具体相关环节。  关键词:公路桥梁 减隔震系统 概念 数值 细部结构 设计  中图分类号:TU74文献标识码:A 文章编号:1007-3973 (2010) 01-001-03    在公路桥梁工程设计中,为了应对地震的影响,一般采用的对策是“抗震”技术的应用,该技术主要从如何为公路
期刊
摘 要:从色彩的角度入手通过对乡土景观的客观分析,将配色美学应用于景观环境设计,即发挥景观环境中自然色彩与人工色彩的各自特点,重新认识乡土景观中,区域性的自然与人文特征,关注其原生态下,色彩的视觉特性、演化规律、精神内涵等,提炼出环境基调色彩,从而为和谐地域内乡土景观的视觉感知提供色域基础。  关键词:乡土景观 景观环境色彩 基调色彩  中图分类号:X22文献标识码:A 文章编号:1007-397
期刊
摘 要:面对席卷全球的金融危机,世界各国大量企业面临倒闭压力。从汽车巨头的破产重组风波联想当今各种管理模式的企业在应对金融危机的表现,从中发现家族管理模式的企业在金融危机中受到影响较小。对比与其他性质的企业,严峻的形势更迫切的需要我们分析金融危机中家族企业的优势与困境,并针对家族企业怎样走出困境提出完善方式,在金融危机后带动经济复苏。  关键词:金融危机 家族企业 优势与困境 完善方式  中图分类
期刊
摘 要:当代大学生有着鲜明的时代特征,高职院校的学生相对于本科院校的学生又有很多的特殊性,这给班主任的管理工作带来不小的难度。本文从高职院校学生的特征入手,着重阐述了高职院校班主任管理工作容易出现的问题及解决方案。  关键词:高职 班主任 学生管理  中图分类号:G64文献标识码:A 文章编号:1007-3973 (2010) 01-156-02  1高职院校学生特征  高职院校的学生与其他本科院
期刊
摘 要:经济要发展,物流要先行;物流要发展,人才是关键。而目前大多数高职物流管理专业培养目标定位不准确、课程设置不科学导致学生的知识、能力和素质结构不能适应市场需求。在广泛调研的基础上,以物流企业的工作岗位为出发点,以工学结合、校企合作为基石,融合物流师国家职业标准,推行“三循环”工学交替的人才培养模式,合理构建课程体系。  关键词:物流管理 工学交替 岗课证融通 课程体系  中图分类号:G64
期刊
摘 要:全球化带来了本土化——全球化的弥漫,让我们重新用理性的眼光去反思传统文化和区域特性,人类对特性表现的需要唤醒了城市个性的觉醒。人们更加珍视从传统内部衍生出来的东西,有意识的表达和发展自己的独特性,不断寻找城市中自我发现和自我认证的新道路。本文以思考“江城”武汉如何塑造“桥城”文化和特质景观为切入点,从城市环境艺术设计的角度,来探索体现时代精神的,21世纪城市发展的本土性设计语言。  关键词
期刊
【摘要】选好切合实际的主题,是一节探究活动课的首要问题。题目选择要有其研究价值及针对性,同时要能调动学生的参与热情,并切合学生的认知能力与可达到的实际情况。教师要在这种探索活动中担当幕后总导演的角色。把握其全局与方向,并调控探究的进程。  【关键词】历史;教学;探索性学习;活动设计  The Chinese modern times science and technology backwardn
期刊
【摘要】网络传媒时期,报业竞争日益激烈,通过做精做强报纸的独家新闻,以吸引读者、增强“卖点”、赢得受众,是报纸在报业竞争中无往不胜的法宝。做好独家新闻要树立“独家”意识、要深入挖掘、还要构建完善的信息收集供给网络。  【关键词】独家新闻;卖点;个性化  Enable the exclusive report to become the newspaper main “to sell the spo
期刊
【摘要】广义吉祥数是一种十进制数,广义吉祥数可从十进制推广到K进制,并且它有更一般的计数方法和重要应用。  【关键词】K进制广义吉祥数;计数定理;应用    K enters the system generalized propitious number to count the theorem and its the application  Feng Xiaofeng  【Abstract】
期刊