XML模式匹配:整体连接算法TurboStack

来源 :北京大学 | 被引量 : 0次 | 上传用户:ilbgsm
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
经过多年的研究与应用实践,基于relation数据库引擎扩展XML管理功能已成为共识。目前,各大商用数据管理系统DB2,ORACLE,SQL SERVER以及开源数据管理系统(MonetDB,GALAXY,xlndice等)均支持XML数据的管理与查询。但是,随着各重点行业应用中XML应用的日益扩展,XML数据的查询越来越成为应用中的瓶颈。各种查询算法被陆续提出,有的注重性能要求却对XPath的部分重要功能不能支持,有的功能比较健全却性能表现一般。目前使用的XML查询算法,例如TwigStack(学术界提出的算法)和TurboXpath(DB2开发的算法,Oracle的查询算法思想也类似),它们的使用都有某些局限性。TwigStack算法的性能出众,但是功能有局限,它不能支持含有通配符*’的查询语句,不能支持小枝(Twig)之间是‘OR’关系的查询语句。TurboXPath算法针对XML数据流开发,访问数据流中的所有元素,对于存储在数据库中的XML而言,访问所有元素会大大降低查询性能。  本文在深入调研分析已有工作的基础上,提出了基于一种有效存储结构的XML查询算法TurboStack,并在双引擎数据库管理系统中进行了验证。具体工作包括:⑴设计了一种XML的存储结构:目前流行的XML的存储结构主要是nativeXML存储,它有利于建立索引从而提高查询性能,有利于XML数据的更新操作等等优点。本文设计的存储机制既可有效节省存储空间,又能提高XML查询算法对xml存储原始文件的访问效率,进而提高了查询效率;⑵提出了一种XML的编码方式:在XML的查询匹配过程中,要对不同元素之间的结构关联进行判断,常见的有parent/child,ancestor/descendant,sibling,preceding/following等。对这些关系的判断主要依靠XML的编码进行。XML的编码既要能满足对各种关系的判断,又要容易存储,不会浪费很大空间;⑶提出了一种XML的query算法TurboStack:TurboStack使用堆栈结构存储中间结果,使用倒排索引能迅速获取与XPath上的节点名字匹配的所有元素。Turbostack算法可在单个元素出栈时判定该元素是否满足XPath的结构过滤要求,只需将堆栈中所有元素处理完就可获得最终匹配结果,由此提高了XML数据的查询效率。
其他文献
Web InfoMall是一个历史网页的存储和展示系统,已经存储了从2001年至今的中国互联网上近50亿网页,并且数据量以每月3000万的速度增长着。当网页数据被收集到系统中后,需要经
许多大型网站、运营商和数据中心都采用Multihoming技术,使用多条链路与Internet相连以提高网络可靠性,加速网络访问。对不同的目标地址选用质量最高的链路出口可以最大限度
互联网从诞生以来一直遭受着黑客攻击和恶意代码的威胁,随着互联网成为人们日常生活不可或缺的一部分,由地下经济链等多种因素驱动,新形态的安全威胁不断涌现并持续演化,从计
当今社会化媒体正在获得越来越多的关注,并且已经成为许多网民日常生活的必要元素。不同功能的社会化媒体网站为用户提供上传信息、图片、视频等各种类型资源的平台。除资源上
随着近年来假币犯罪案件的高发,案件数量逐年增多,涉案金额越来越大,呈现出团伙性作案的特点,这极大影响了社会的经济秩序。由于案件数量的增多,传统的由警员手动分析案件的方式已
在纺织工业界,由于各种原因存在许多遗失原始设计稿件的织物样品。通常对遗失设计稿件的织物进行再生产,就必须先由经验丰富的设计人员对织物样品进行手工临摹来得到设计稿,
在印刷行业中,图像由于其直观性和广泛适用性,对印刷品的质量起着至关重要的作用,对于承印物为织物的纺织印刷业中来说就更是如此。因此,印前图像处理便成了印刷过程中不可或
随着XML数据被广泛应用于互联网服务、信息集成等各个领域,针对XML数据的结构化查询,尤其是作为其核心操作的多分支查询,已经在研究领域成为一个热点话题。虽然在最近几年,为
计算机辅助设计(CAD、Computer Aided Design)在工业界已经得到广泛应用,极大促进了汽车、航空、航天、造船、建筑等行业的发展。离散曲面形变是CAD领域的研究热点之一,但是
任务群计算(Many-Task Computing,MTC)是广泛应用于科学计算领域的一种大规模松耦合任务并行计算模式,目的是在较短的时间内完成大量资源需求相同的可独立调度任务。这种模式下