论文部分内容阅读
由于不断增长的网络应用需求,以及在通过网络进行交互时的可靠性与互操作性需求,XML已经成为Internet上信息表示和交换的事实标准,支持XML动态更新已经成为现实应用中越来越重要的需求。设计出XML动态编码来支持文档动态更新,是使XML真正成为Internet上信息表示和交换标准的关键。由于之前学术界对XML的研究主要集中在XML文档查询方面,因此.XML更新领域还存在很多问题,包括不能完全避免重编码、无法兼顾查询效率、及编码存储代价太大等。
针对这些问题,本文首先介绍了XML及其研究现状,包括XML文档模型、XML文档查询、XML存储策略和XML索引技术。然后重点介绍了XML编码,分析了目前XML编码在XML更新中存在的问题,提出了动态xML编码的衡量标准。
针对Dewey编码在XML更新中重编码计算量大的问题,在定义儿子名字索引基础上,本文提出了扩展Dewey编码。扩展Dewey编码包括局部扩展Dewey编码、基于最大值的局部扩展Deweyr编码和全局扩展Dewey编码,它有效地减少了XML更新中重新编码的计算量,提高了更新效率;设计了回指树的数据结构,并基于回指树,提出了xML文档中单个节点的插入和删除算法。对于现有的Dewey编码,本文作了充分全面的实验,用于验证结果并比较其性能。
扩展Dewey编码只能在一定程度上减小重编码,不是真正意义上动态编码。为此,本文提出了能够完全避免XML文档更新中重编码的CDOEX编码。在任意两个相邻的CDOEX编码之间插入无限多个新的编码,不会引起已有编码的重编码,而且保持了这些编码的字典顺序。同其它能够完全避免重编码的动态编码相比,CDOEX编码在XML频繁更新、尤其是倾斜频繁更新时,编码大小增长较慢,这不仅仅提高了存储效率,也避免了查询效率的降低。实验证明,CDEX编码是目前存储代价最小的能够完全避免重编码的XML动态编码之一。