论文部分内容阅读
XML以其扩展性、结构性、平台独立性和自描述性等诸多特性,越来越多的信息采用XML格式进行存储和交换,XML已经成为Web上信息表示和交换的标准。大量XML数据的出现给XML的存储和管理带来了巨大的挑战。为了更容易的操作XML文档中的数据,专家和学者们在两个方面做了积极深入的研究:一个是更新模型的研究;另一方面是基于某种编码的更新方案和算法研究。目前已经提出了大量的编码方案和索引技术,这些方案大多数在提高对XML数据的查询性能方面取得了很大的成就。但是当XML数据需要频繁地更新时,由于这些编码方案和索引技术大都不支持XML数据的动态更新,需花很大的代价去重新编码和建立索引,严重影响了它们的效率。为此,本文在支持XML数据动态更新的编码方案和索引技术方面进行了有益的探索。
CSSU编码改变了传统编码方案主要采用数字序号进行编号的特点,采用字母、数字和下划线对结点进行编码,且按字典序来表示节点的顺序。由于插入和删除结点,不影响其他结点的编码,不需要重新编码,能满足XML动态更新的需要。但是CSSU编码长度比较大,而且当一个结点的孩子结点非常多时,会导致编码长度非常长,编码效率低,并影响查询速度。
本文在CSSU的基础上进行了改进,主要体现在两个方面:
1).将原有的基于字母的编码方案调整为基于浮点数与整型数字进行编码,这样可以在一定程度上减小编码的长度;同时采用延迟更新策略,在系统资源空闲的时候对浮点数编码进行调整为整型编码。由于整型进行比较的效率较高,这样可以有效提高XML处理的效率。
2).结合改进后编码方案,给出了新的基于路径索引的查询处理方法,可以加快查询速度,并减少早期处理过程中的搜索空间。结点编码保存了孩子双亲元素的详细信息,提高了访问元素双亲的速度。
实验表明,所给出的编码方案当XML数据需要频繁的更新时,可以很大程度上提高结点编码的效率,同时能非常有效地支持索引的更新,给出的索引算法在大多数测试查询中性能较好。