论文摘要
XML作为Internet上信息表示和交换的一个标准,如何在关系数据库中有效地存储和查询这些数据已成为XML研究领域的一个重要问题。目前几乎所有的商业数据库产品(如三大商业RDBMS产品SQL Server,Oracle及DB2)都进行了扩充,支持对XML的存储、查询和发布。通常,RDBMS提供的XML数据存储功能有:将XML文档的内容或数据存储于数据库中;或以文本文件的形式对XML文档进行存储,并在数据库中保留对相应文件的索引或链接。然而随着XML应用的不断扩展,XML数据的大量出现,由于XML数据可能来自各个不同的数据源,它们所遵循的文档模式(DTD或XML Schema)可能不同,文档之间存在一定的异构性,如果采用目前的RDBMS存储这些XML数据,则存在一定的局限性,即无法实现来自不同DTD的多个XML文档的有效集成存储。本文研究来自不同DTD的多个XML文档的集成存储问题。主要工作包括:1、提出了一种有效的XML文档频繁子树挖掘方法,具体做法是:首先对XML文档进行预处理,提取XML文档的有效结构SST(Simplest Structural Tree最简结构树);然后提出SSTMiner算法,用于挖掘SST中的所有嵌入频繁子树。SSTMiner算法不但继承了TreeMiner算法的优点,而且针对TreeMiner算法存在的瓶颈问题,以及结合当前所处理的SST的结构特点,对TreeMiner算法进行改进,提高了算法执行的效率;实验结果表明了该方法的有效性。2、研究基于频繁结构的XML文档聚类方法,其频繁结构包括频繁路径和频繁子树,具体做法是:首先对XML文档进行频繁结构挖掘,获取最大频繁结构集,由于SSTMiner算法是一种非常有效的频繁子树挖掘算法,对SSTMiner算法稍加修改,即可得到FrePathMiner算法和FreTreeMiner算法,分别用于挖掘XML文档中最大频繁路径和最大频繁子树;然后提出一种凝聚的层次聚类算法XMLCluster,分别以最大频繁路径和最大频繁子树作为XML文档的特征,对文档进行聚类;实验表明本文提出的FrePathMiner和FreTreeMiner聚类方法,与传统的ASPMiner聚类方法相比,其聚类效果具有更大的优越性。3、提出了一种XML文档集成存储方法,即在聚类的基础上,对XML文档进行集成存储,集成存储过程分为两个阶段进行:第一阶段为模式映射阶段(Schema Mapping),生成集成模式;第二阶段为数据存储阶段(XML Storage),从XML文档中抽取数据存入数据库,从而实现对来自不同DTD的多个XML文档的有效集成存储。最后,本文给出了基于聚类的XML文档集成管理系统的整个框架,并通过具体实例来说明基于聚类的XML文档集成存储方法。