论文部分内容阅读
扩展标记语言(eXtensible Markup Language,XML)是一种能够以统一格式描述信息的文本语言,它能将不同系统来源的信息按照统一的格式表示,是信息标准化进程的有力工具。随着应用的广泛和深入,对XML的高性能数据管理要求越来越迫切,特别是用于信息交换的XML流数据。但传统意义上的数据库,包括关系、对象数据库、XML本源数据库(Native XML Database,NXD)存储的是相对静止的数据,在这类数据库系统中,某一时刻数据的快照都是固定的“当前视图”,即存储的信息是一个指定时刻的瞬像,无法满足复杂应用的需求。以XML数据格式为载体的XML流数据及从流数据管理系统(Data Stream Management System,DSMS)中演化出来的XML流数据检索系统,是XML技术和DSMS技术的结合,是当前数据交换和信息处理的热点研究课题。 对未解析的XML流数据进行高性能数据管理,首先需要解决的是最基本的信息检索问题。首先从整体的角度提出了XML流数据检索技术研究平台DM-XIDS系统整体架构,为XML流数据检索和优化技术的研究提供了整合环境,并对其工作方式及关键组成模块的划分、功能实现做出相应设计。 与DSMS中平面结构数据流不同,结构化的XML数据流含有更加丰富的语义信息,但这使得其信息查询变得更加复杂,特别是在常规查询表达式中包含反向导航操作的情况下,该问题显得尤为突出。在深入研究XML数据分析处理算法及XML路径语言(XML Path Language,XPath)查询语义模型的基础上,针对结构化XML数据的上下文相关的语义表示特性,及XML流数据检索中影响或阻碍XPath查询直接应用的导航关系,提出了一系列XPath表达式基本等价变换和与反向关系轴、步进相关联的等价变换的定理和定义,设计了树模式扩展相对层次编码,并在此基础上开发了XPath地址路径表达式前向重写算法,从水平和垂直两个方向上消除了XPath表达式中的反向导航关系轴。前向重写算法是一种基于等价变换的静态重写优化方法,目标是将含有反向轴的XPath查询表达式重写为不含反向轴的查询表达式;这样一来,只对XML数据流中的每个节点访问一次,且不需要进行回溯,更适合于流数据检索应用。从处理反向轴关系来说,XPath地址路径表达式的前向重写是一种最直接且有效的方式。 选择有效的信息及查询计划表示模型是XML检索技术研究中的关键问题。从XML文档底层数据模型出发,针对树模型中的无限阶和有限阶两种树模型,提出了相应的树自动机模型,包括针对XML流数据查询的自上而下和自下而上的并行树自动机模型,设计了XML流数据检索中自上而下和自下而上树自动机模型的执行分析策略,并仔细地对两者在流数据检索中性能上的差异进行了分析和研究。 树自动机理论是建立在有限阶树的基础上,对于有限阶树来说有着良好的计算特性。作者对XML文档及查询进行了逻辑学描述,并在一元二阶谓词逻辑(Monadic Second-Order logic,MSO)的基础上,提出了对无限阶树自动机有限阶化的二叉模型,即建立在WS2S上的二叉树自动机,为无限阶树模型自动机建立了统一的有限阶化模型。 为了进一步提高系统的效率和可伸缩性,研究了XML数据处理中分析型算法,包括可用于XPath查询集优化的表达式可满足性问题、等价问题和包容性问题等,并提出了在有DTD文档类型定义下的XPath地址路径表达式的相对包容性问题算法,该算法采用树自动机模型来描述DTD约束和XPath表达式,通过相应乘积树自动机的计算及其对应正规树语言的可空性的判断来确定在满足指定DTD下的不同XPath表达式之间的包容性关系,进一步提高了XML流数据检索系统对于查询集的执行效率。同时,还对不同的XPath查询计划所带来的XML流数据检索实现中空间开销的原因和相应解决方案进行了分析和研究。