- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于树模型的XML数据匹配查询算法的研究.pdf
基于树模型的XML 数据匹配查询算法的研究
蔡德山
河海大学计算机及信息工程学院,南京(210098 )
E-mail :2cds@163.com
摘 要:提出一种新的XML 数据查询算法,Part-TreeMatch 算法。Part-TreeMatch 算法采用
空间换时间的策略,运用一种新的存储方法,并在此基础上建立查询索引,在一定程度上简
化了XML 模式树,最后在查询索引中找到过程结果集,并根据Part-TreeMatch 算法进行模
式树匹配,从而减少了匹配结点的个数,从根本上对查询算法进行了优化。并通过具体的性
能分析阐述了算法的优点。
关键词:XML ;模式树;模式树匹配;过程结果集
中图分类号:TP301.6
1. 引 言
随着可扩展标记语言XML 迅速成长为Web 上数据表示和数据交换的标准,XML 数据
的查询变得越来越重要。可扩展性、灵活性、自描述性和简明性是XML 的重要特性[1],正
是这些重要的特性使得XML 数据可以在不同的系统中进行传递交互,从而成为一种网际语
言。目前,Internet 平台上每天都会产生大量的XML 数据[2],并不断地增长。大量XML 数
据的存在,使得如何管理,如何在这个庞大的数据集中查询到指定的信息成为尤为迫切的问
题。
目前,Bruno 提出了TwigStack 算法[3],它将过程结果集保存在一个堆栈链中,每次匹
配都从堆栈链中取,这样TwigStack 算法解决了在分解-匹配-合并步骤产生的大量无用的中
间结果,当匹配的元素为祖先孩子关系时,匹配的路径很明确,不会产生大量无用的中间结
果。但是TwigStack 算法在匹配某一个同时包含在几个路径中的节点时,会对该节点进行重
复的匹配。
H. Jiang, W. Wang 等人[4]提出了结构化连接算法Twig Join,它是一种路径匹配算法,可
以很方便的进行带分支路径的XML 查询,尤其是只包含祖先子孙关系的路径匹配时,不会
产生任何的重复匹配,效率较高,但是,当查询路径较为复杂,尤其是在查询路径中包含分
支时,很容易造成重复的匹配操作,降低XML 查询的效率。
使用索引是一种有效处理路径表达式查询的方法,它可以减少查询语言处理数据时连接
操作的次数。但是从路径表达式的计算从本质上来说,尽管这些查询语言在具体的处理路径
表达式语法上都不甚相同,但是它们都有一个共同的特征:不但查询XML 文档中具体的数据
而且查询具体的结构,这些查询语言的查询语句都可以表示成相应得查询模式树,然后使用
查询模式树去匹配XML 文档中的数据,这也是查询模式树在XML 查询中广泛使用的重要
原因。本文讨论了一种新型的存储模式,并在该存储结构基础上建立索引结构的方法在XML
文档模式树中进行查询树匹配的问题。
2. 模式树概念与模式树匹配
2.1 模式树概念
每一个 XML 文档都可以对应一颗模式树,模式树是树和条件的组合 P=(T,F) ,其中F
是和整个模式树对应的条件字符串,T=(V,E)是一棵结点和边都做了标记的树,V 是结点集
- 1 -
合,E 是相应的边集合。
具体说明如下:
(1)树V 的每个结点都有一个标签(label)和一个索引号,代表结点;
(2)每一条边都有类型,如PC(parent-child) 、AD(ancestor-decendant)关系,它们表示连接
的两个结点之间关系;
(3)F 是条件表达式,对于查询匹配来说,F 是所有条件的集合;
(4) ‘//’表示祖先—子孙边,‘/’表示有着父子关系的边。XML 查询语言的查询使用(带标
签结点)模式树来匹配XML 数据库中相关部分的数据。模式树结点标签包含元素的标签tag ,
属性一值对或字符串值。模式树匹配边是父-子边(用单线表示)或者是祖先-后代边(用双线表
示) 。
2.2 模式树匹配
当前,模式匹配作为模式间的一项基本操作已成为信息集成、数据仓库、
文档评论(0)