论文部分内容阅读
[摘要]讨论如何利用关系数据库存储XML数据和文档,如何利用关系毅据库直接支持XML毅据查询,最终建立一个基于XML的、统一的Internet数据库平台的方案。XML存储管理和XML搜索引擎是实现XED的核心问题。
[关键词]XML 数据库 存储管理 搜索引擎
中图分类号:G2 文献标识码:A 文章编号:16717597(2008)0610046-01
一、综述
XML被称作是Internet上的世界语。XML技术的诞生就是为了统一不同格式的数据,实现不同系统之间的信息共享,增加系统价值。基于XML技术,还衍生出很多新的技术,如Web Service。和XML数据库等。基于以上原因,XML数据库自然成为一个研究热点。目前对XML数据库的研究主要有两种思路:一是研究纯XML数据库,称作NDX;二是依托于关系数据库来实现XML数据库的功能,称作XED.
XML数据库的典型应用包括以下六种:
数据交换:用XML统一表示来自不同数据源的数据,实现系统间的数据交换,实现信息共享。
Web应用和服务:用XML表述数据内容,通过XSLT将其转换成任何表现形式(HTMLPDF/Word等)。
信息集成:对遗留系统的整合集成是企业面临的一大难题。通过XML统一表示数据,完成对不同系统的信息集成。
内容管理:内容管理会涉及大量的半结构徘结构化数据,处理结构化数据的关系型数据库处理这类数据就显得束手无策。
电子商务:电子商务平台要完成和企业现有系统互联、不同交易方的数据交换,实际上是对以上应用的综合。国内外关于电子商务的XML标准包括ebXML,cnXML等。
电子政务:电子政务急迫要解决的问题是如何将各政府部门现有分离的系统互连起来,解决信息孤岛问题。
如何有效的解决“孤岛”问题使电子政务系统上的数据畅通无阻则是需要优先解决的问题。
二、XML数据库要解决的基本问题
Internet上的数据库各种各样,并且大部分都是关系数据库,由于数据库是异构的,所以给数据交换带来很多困难,而XML技术的诞生就是为了统一不同格式的数据,实现不同系统之间的信息共享,增加系统价值。那么随之而来的问题是大量新产生的XML数据和文档如何管理,又如何查询。答案当然是建立XML数据库。
如何利用关系数据库存储XML数据和文档,如何利用关系数据库直接支持XML数据查询,最终建立一个基于XML的、统一的Internet数据库平台是数据库研究者和数据库厂商这几年致力于研究的问题。
XML数据库的内部存储模型应该与XML文件层次模型一致,存取XML文件时,无需将其拆散重组,这样才更加灵活高效。同时还要具有事务管理、安全、多用户访问、编程API和查询语言等传统数据库技术,还要支持W3C关于XML技术的最新标准。
一般XMI‘数据库研究的具体内容包括以下几个方面:XML数据的存储技术,XML数据的索引技术,XML数据的解析和内容管理技术,基于XML的数据交互和数据集成技术及XML数据的查询和发布技术。
一般基于关系数据库的XML数据存储,在文档存入到数据库时需要将其拆解,取出时需要重新组装,这样做不仅耗时,文档的格式可能会发生改变,并且不能完全支持XML的特征。能否在XML数据的特征提取、数据分类、索引技术、查询技术和存储技术等方面做出新的研究和尝试,实现基于关系数据库的真正的XML数据存取和内容管理,是要解决的基本问题。
三、研究的思路和方法
XML数据库的研究方法主要分为两大类:一是研究纯XML数据库,称作NDX;二是基于现有的关系数据库来实现XML数据库的功能,称作XED。我们讨论第二种方案,这也是目前学术界比较认同的技术方案。
目前国内外关于XED的研究主要采取的方法是将XML文档映射到关系,这样做的结果是在XML文档存人到数据库时需要将其拆解,取出时需要重新组装,从而对XML的支持打了折扣,效率也比较低。我们提出虚拟数据库的方案,前台呈现在用户面前的是RDB+NDB,后台是RDB支持的XED。特别是后台实现的XED,不将XML文档映射到关系,直接实现XML文档的内容管理,从而可以获得关系数据库和XML数据库的全部特征和支持。
其中XML存储管理是实现XED的难点。对XML文档抽取的特征、规则等存储在关系数据库中,而对XML文档本身的存储则需要研究特殊的存储技术。例如可以借鉴一般数据库大对象的存储技术,建立操作系统一级的文件,使这些文件属于特定的数据集,并用特殊的ID来标志,在文件上进行适当的逻辑分块和物理分块。
XML存储管理要支持不同的存储策略。既要适应有模式的数据,也要适应无模式的数据。根据记录的粒度不同,存储策略可以分为基于节点的和基于子树的。如果没有模式信息,可以将记录按它在文档树的后序遍历存储;如果有模式信息,可以利用模式信息把同类记录聚簇存储,或者把它们映射到关系。
和XML存储管理相关的一个重要问题是模式管理。由于XML数据具有自描述特性,所以一般XML模式信息需要从XriI.数据中提取。虽然XML数据与模式信息之间并不具有完全对应的关系,XML模式信息不真正具有约束数据的功能,但是模式信息是查询和了解数据的重要依据,所以模式信息对实现XML文档的存储、管理和查询有着重要意义。
索引的生成和管理是XML存储管理的另一个重要问题。主题、内容和模式都与索引有关,中在实际应用中经常存在的XML数据的模式信息一DTD (Document Type Definition)是建索引的一个重要基础,从DTD出发构建索引,提取符合DTD的XML数据可能出现的路径结构。
四、小结
XML数据库的研究已经有几年的历史,但是针对我们国内的很多应用(如电子政务),基于关系数据库的XML数据库的研究还有很多工作要做。如何真正的把关系数据库和XML数据管理融为一体,为用户提供一个统一的Internet数据库环境,我们尚有很多深人、细致的工作要完成。
参考文献:
[1]htp://www-900.ibm.com/developcrWorks/cn/xml.
[2]Storing Querying XML Documents Using a Path Table inRelational Databases. Http://springerlink.metapress.com/app/home/cont
ribution.asp.
[3]http://msdn.microsoft.com/xml.
[4]http://www.ipedo.com.cn.
[关键词]XML 数据库 存储管理 搜索引擎
中图分类号:G2 文献标识码:A 文章编号:16717597(2008)0610046-01
一、综述
XML被称作是Internet上的世界语。XML技术的诞生就是为了统一不同格式的数据,实现不同系统之间的信息共享,增加系统价值。基于XML技术,还衍生出很多新的技术,如Web Service。和XML数据库等。基于以上原因,XML数据库自然成为一个研究热点。目前对XML数据库的研究主要有两种思路:一是研究纯XML数据库,称作NDX;二是依托于关系数据库来实现XML数据库的功能,称作XED.
XML数据库的典型应用包括以下六种:
数据交换:用XML统一表示来自不同数据源的数据,实现系统间的数据交换,实现信息共享。
Web应用和服务:用XML表述数据内容,通过XSLT将其转换成任何表现形式(HTMLPDF/Word等)。
信息集成:对遗留系统的整合集成是企业面临的一大难题。通过XML统一表示数据,完成对不同系统的信息集成。
内容管理:内容管理会涉及大量的半结构徘结构化数据,处理结构化数据的关系型数据库处理这类数据就显得束手无策。
电子商务:电子商务平台要完成和企业现有系统互联、不同交易方的数据交换,实际上是对以上应用的综合。国内外关于电子商务的XML标准包括ebXML,cnXML等。
电子政务:电子政务急迫要解决的问题是如何将各政府部门现有分离的系统互连起来,解决信息孤岛问题。
如何有效的解决“孤岛”问题使电子政务系统上的数据畅通无阻则是需要优先解决的问题。
二、XML数据库要解决的基本问题
Internet上的数据库各种各样,并且大部分都是关系数据库,由于数据库是异构的,所以给数据交换带来很多困难,而XML技术的诞生就是为了统一不同格式的数据,实现不同系统之间的信息共享,增加系统价值。那么随之而来的问题是大量新产生的XML数据和文档如何管理,又如何查询。答案当然是建立XML数据库。
如何利用关系数据库存储XML数据和文档,如何利用关系数据库直接支持XML数据查询,最终建立一个基于XML的、统一的Internet数据库平台是数据库研究者和数据库厂商这几年致力于研究的问题。
XML数据库的内部存储模型应该与XML文件层次模型一致,存取XML文件时,无需将其拆散重组,这样才更加灵活高效。同时还要具有事务管理、安全、多用户访问、编程API和查询语言等传统数据库技术,还要支持W3C关于XML技术的最新标准。
一般XMI‘数据库研究的具体内容包括以下几个方面:XML数据的存储技术,XML数据的索引技术,XML数据的解析和内容管理技术,基于XML的数据交互和数据集成技术及XML数据的查询和发布技术。
一般基于关系数据库的XML数据存储,在文档存入到数据库时需要将其拆解,取出时需要重新组装,这样做不仅耗时,文档的格式可能会发生改变,并且不能完全支持XML的特征。能否在XML数据的特征提取、数据分类、索引技术、查询技术和存储技术等方面做出新的研究和尝试,实现基于关系数据库的真正的XML数据存取和内容管理,是要解决的基本问题。
三、研究的思路和方法
XML数据库的研究方法主要分为两大类:一是研究纯XML数据库,称作NDX;二是基于现有的关系数据库来实现XML数据库的功能,称作XED。我们讨论第二种方案,这也是目前学术界比较认同的技术方案。
目前国内外关于XED的研究主要采取的方法是将XML文档映射到关系,这样做的结果是在XML文档存人到数据库时需要将其拆解,取出时需要重新组装,从而对XML的支持打了折扣,效率也比较低。我们提出虚拟数据库的方案,前台呈现在用户面前的是RDB+NDB,后台是RDB支持的XED。特别是后台实现的XED,不将XML文档映射到关系,直接实现XML文档的内容管理,从而可以获得关系数据库和XML数据库的全部特征和支持。
其中XML存储管理是实现XED的难点。对XML文档抽取的特征、规则等存储在关系数据库中,而对XML文档本身的存储则需要研究特殊的存储技术。例如可以借鉴一般数据库大对象的存储技术,建立操作系统一级的文件,使这些文件属于特定的数据集,并用特殊的ID来标志,在文件上进行适当的逻辑分块和物理分块。
XML存储管理要支持不同的存储策略。既要适应有模式的数据,也要适应无模式的数据。根据记录的粒度不同,存储策略可以分为基于节点的和基于子树的。如果没有模式信息,可以将记录按它在文档树的后序遍历存储;如果有模式信息,可以利用模式信息把同类记录聚簇存储,或者把它们映射到关系。
和XML存储管理相关的一个重要问题是模式管理。由于XML数据具有自描述特性,所以一般XML模式信息需要从XriI.数据中提取。虽然XML数据与模式信息之间并不具有完全对应的关系,XML模式信息不真正具有约束数据的功能,但是模式信息是查询和了解数据的重要依据,所以模式信息对实现XML文档的存储、管理和查询有着重要意义。
索引的生成和管理是XML存储管理的另一个重要问题。主题、内容和模式都与索引有关,中在实际应用中经常存在的XML数据的模式信息一DTD (Document Type Definition)是建索引的一个重要基础,从DTD出发构建索引,提取符合DTD的XML数据可能出现的路径结构。
四、小结
XML数据库的研究已经有几年的历史,但是针对我们国内的很多应用(如电子政务),基于关系数据库的XML数据库的研究还有很多工作要做。如何真正的把关系数据库和XML数据管理融为一体,为用户提供一个统一的Internet数据库环境,我们尚有很多深人、细致的工作要完成。
参考文献:
[1]htp://www-900.ibm.com/developcrWorks/cn/xml.
[2]Storing Querying XML Documents Using a Path Table inRelational Databases. Http://springerlink.metapress.com/app/home/cont
ribution.asp.
[3]http://msdn.microsoft.com/xml.
[4]http://www.ipedo.com.cn.