论文部分内容阅读
XML(eXtensible Markup Language)已经成为一种Web数据交换和信息集成的工具。随着XML应用的普及,解决好XML文档的存储、管理和查询等问题特别是查询问题,构造一个能在应用中管理和控制XML文档的数据库系统,已经成为一个急待解决的问题。论文分析了当前的研究现状,由于XML通用的数据表示能力、XML数据的半结构化性、XML文档是否有模式定义、XML在不同应用领域的特定需求等,使得XML存储问题至今难以找到一种通用的数据表示能力。当前已有的XML存储方式大致可分为三类:(1)在文件系统中以文件方式存储XML;(2)在传统的数据库系统中存储XML;(3)开发XML专用库来存储XML。论文还研究了XML查询技术的现状,指出目前大部分查询技术的研究都集中在各种区间编码和索引技术。在比较研究了XML索引技术的基础上,提出了目前各种索引技术的优缺点,阐述了模式对于XML查询的重要性。论文研究了XML模式语言――DTD和XML Schema的技术特点,特别是XML Schema的强大功能以及它与XML的关系,阐述了XML Schema在XML查询特别是结构查询中的重要作用;举例说明了XML查询语言――XPath和XQuery的语法特点;比较研究了XML文档存储方法中的支持XML的数据库和XML本源数据库。论文在比较研究了现有的区间编码方式和XML索引技术的基础上,提出了一种基于Schema的XML索引技术SBXI (Schema-Based XML Indexing)。SBXI充分利用了XML Schema建立XML索引从而提高路径查询的效率,它采用两种区间编码方式Dietz编码和Li-Moon编码,分别对XML Schema和XML文档进行编码,并采用编码方式和逆序列表相结合的方式分别对XML Schema和XML文档分别建立索引,并在此基础上提出了SBXI的关系存储模式。同时,论文还给出了基于SBXI的查询处理方式,它是先在XML Schema寻找匹配结构,然后在XML文档中查询,这种方式使得XML查询可以在规模较小的XML Schema上进行预处理,从而提高了SBXI的查询效率。由于SBXI充分利用了XML Schema的信息,使得SBXI在进行更新操作的时候首先要验证更新的XML文档是否符合其对应的XML Schema的结构描述。论文还通过设计和实现SBXI的原型系统比较了SBXI和XISS索引方法在索引大小、索引建立时间、查询响应时间等方面的性能指标,实验表明,SBXI的路径查询效率特别是对于无效查询的效率较XISS都有不同程度的提高。