一种原生XML数据库—Xindice的研究与改进

来源 :华东师范大学 | 被引量 : 0次 | 上传用户:javawm
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着万维网的飞速发展,XML的应用范围不断扩大,支持XML的数据库成为众人瞩目的焦点。关系型数据库不能很好地支持XML。关系型数据库将XML转换成二维表的形式存储,但XML与二维表存储形式的转换存在性能问题。原生(Native)XML数据库是当前数据库领域的研究热点之一。XML文档在Native XML数据库中的存储和查询策略,是十分重要的问题。本文以一个开放源代码的Native XML数据库产品—Xindice为对象,深入分析了它的分层存储模型,研究了它的页面存储策略以及B树索引结构。在此基础上,并阐明了Xindice存储策略和查询策略存在的不足。针对这些不足,本文作了以下分析研究工作。在存储策略方面,当集合中加入了新的XML文档时,Xindice数据库分配“空闲”页面用于存储文档的数据,如果没有空闲页面,则创建新的页面;但是系统在删除XML文档时,仅仅将其占用的页面标记为“空闲”而并不释放其占用的空间。随着文档的插入和删除,页面文件占用的磁盘空间将会不断的增大。本文在实验的基础之上,分析了Xindice数据库存储策略在“空闲”页面管理上存在不足的原因,提出并实现了尾部页面截断策略和页面移动策略,释放了“空闲”页面占用的磁盘空间,提高了系统对磁盘资源的利用率。而针对页面移动策略页面移动次数过多,本文又提出了尾部页面移动策略,减少了释放“空闲”页面所需要的时间。在查询策略方面,Xindice数据库的查询语言是XPath,不支持XQuery查询语言。而XPath的查询功能有限,如不能分组、排序、连接等,不能对多个文档进行联合查询,影响了Xindice数据库查询上的灵活性。本文设计了XQuery表达式的文法,利用JavaCC工具和JJTree工具对XQuery表达式的文法生成词法语法分析器,用来识别输入的XQuery表达式的语法结构,并生成相应的语法树。根据此语法树,对构成该查询的XQuery表达式的各子句分别进行相应的查询处理,得到XML文档的最终查询结果,实现了XQuery查询,提高了Xindice数据库的查询上的灵活性。最后本文通过实例验证了本文设计的XQuery查询在Xindice数据库中的有效性。
其他文献
本文通过分析电子商务环境中信任的需求,设计了优先信任模型PRTM (Priority trust model),对电子商务中信誉计算进行了研究,并在完全竞争的电力市场中应用信誉计算。首先,PRT
随着航空运输市场竞争的激烈,航空公司对航段运量预测的工作越来越重视。对于航空公司来说,航段运量预测关系到其对未来发展、运力安排和市场拓展等做出重要决策,关系到其科
Web已成为了网络信息的主要平台,是人们获取信息的重要来源。但是,由于Web页面的无结构性、超链接的自由无序以及Web内容的海量性、多样性和动态变化,人们从Web上搜索真正想要的
随着数据库技术的成熟应用和Internet的迅速发展,从大量数据中挖掘有用的信息成为一个迫切需要解决的问题,数据挖掘的研究应运而生。数据挖掘经常要面对一些有噪声、杂乱、非
特征提取和描述是基于特征的图像处理和计算机视觉的基础环节,特征检测算子的检测性能和描述算子的表针性能直接决定了图像处理的效率和精度。在实际问题中图像可能受到噪声
语义解析是指将自然语言句子转化成计算机能推理的逻辑表达式。近年来,英文语义解析方面的工作硕果累累,有很多语义解析方法被相继提出。其中,基于机器翻译的语义解析方法已
容忍入侵是第三代网络安全技术“生存技术”的核心,与传统的防火墙和入侵检测技术不同,容忍入侵关注的是入侵造成的影响,而非入侵的原因。本文针对目前面向通用服务的容忍入侵系
工作流技术是实现业务过程自动化的关键技术,这些年来逐渐成为研究热点。现有的工作流产品大多庞大复杂、使用困难,而且架构封闭,自成体系,很难与业务应用无缝集成,不适用于
数字水印技术为在网络环境中传播的数字作品的版权保护提供了一种解决方案。在数字水印技术中,如何提高水印鲁棒性是研究的重点与难点。文中介绍了数字水印技术的背景、研究
在计算机技术发展过程中,仿真一直是一个重要的研究领域。指令集仿真器(ISS:Instruction Set Simulator)是在指令集体系结构的层次上对目标机进行模拟,ISS不仅有助于验证处理