Username: Password:

xml数据库中几个容易混淆的概念_xml技巧
来源:作者:网友供稿 发布时间:2007-12-07 05:40:51

  当研发人员谈及XML数据库时,他们往往指的是两个概念:存储XML数据的数据库,利用XML数据库的DBMS。绝大多数主要的DBMS产品允许您无需改变现有的数据库就能够集成XML数据到程式中。现在让我们讨论一下XML数据库并探讨其特性。

  原始的XML数据库

  一个原始的XML数据库(NXD)能够是很简单,也能够是很复杂。我这样定义一个数据库的概念:永久稳定数据的集合。在这样的定义下,一个NXD能在逻辑上存储一个XML文档。当XML:DB initiative对一个NXD更有更多的需要时,我想以上的定义也能够满足。

  以下的代码行能够用作于一个NXD:

  〈?xml version=”1.0”?〉
  〈diet〉
  〈meal mealName=”breakfast”〉
  〈item itemName=“toast” unit=”slice” quantity=“2” /〉
  〈item itemName=“bacon” unit=”strip” quantity=“2” /〉
  〈/meal〉
  〈/diet〉

  很显然,数据的集合以XML格式存储。假如他被存放在一个flat文档,他也会满足我们对NXD的定义:永久稳定数据的集合。

  一个NXD使用相同的方式来存储XML文档(比如:flat文档,关系数据库或级别数据库,对象数据库)。

  Flat文档

  一个简单的flat文档是个最简单的XML数据库模型。作为一种“变种”,您能够存储很多XML文档在一个目录层次。为了扩展前面的范例,看看以下的模型:

Diets\
Diets\Atkins
Day1.xml
Day2.xml
Day3.xml
Day4.xml
Diets\3DayDiet
Day1.xml
Day2.xml
Day3.xml

  Diets目录包含了子目录,并且每一子目录很多XML的flat文档。

  关系数据库

  关系数据库中的XML数据库能够分为三种模型:coarse-grained(粗糙纹理型), medium-grained(中等级别纹理型),或 fine-grained(优良纹理型)。

  coarse-grained(粗糙纹理型)模型在逻辑上和flat文档模型有些不同。您能够使用一个关系数据库来存放每一个XML文档。例如,以下的代码能够存放一个XML文档:

  Create table diets
  ( dietName varchar2(30),
   xmlDocument varchar2(32000)
  )

  fine-grained(优良纹理型)模型将XML文档的每一成分映射到关系数据库中。为了能够将flat模型转移到关系数据库,您必须使用两种改变方式。对以上的范例,您不能再使用子目录名来代表diet的名称,您也不能再使用文档的名称来传递diet的日期。表A显示了diet的XML文档的文档类型定义(DTD);表B显示了将DTD映射到关系表的数据定义语言(DDL)。除此之外,表C还包括了相应的XML语法。

  medium-grained(中等级别纹理型)模型介于coarse-grained(粗糙纹理)模型和 fine-grained(优良纹理)模型之间。使用这一模型,您能够将信息存储在meals 表的xml_items列中。

  对象数据库

  您也能够通过使用一个对象数据库来执行NXD。有些对象数据库是基于文档对象模型(DOM),这允许XML和数据库有紧密的结合。例如,一旦您提供一个食物方面的DTD,您能够开始保存这些食物,而无需额外的配置。

  数据库管理系统

  对于DBMS,您能够有多种选择。您能够通过使用开放程式如eXist或Ozone来建立自己的DBMS,或购买商业产品如Tamino XML Server。

  绝大多数关系数据库卖主都使他们的数据库能够使用XML,至少的,XML数据库(XEDBs)能够返回XML文档查询的结果。另外很多也能够保存XML数据。例如,Oracle 提供了一个XML剖析器,一个Xpath引擎,一个XSLT处理器,一个XMLSQL工具,连同使用XML的方法。

  所以,使用关系数据库存储的NXD和存储XML数据的XEDB有什么区分呢?一个NXD是基于XML文档概念而建立,而XEDB和其他没有过多的关联。而且,很多规范适用于NXD,而DBMS只适用标准的查询和存储数据的XML文档,比如Xpath。

  XML数据库不是新概念

  XML数据库在逻辑观点上不是新概念,虽然在逻辑执行上是新的。假如您想要执行一个XML数据库,您能够使用NXD,XEDB,或是二者的结合。然而,假如您所在的公司对现有的数据库已有一定的投资,您所做的第一个调查就是核实您的DMBS卖主是否提供使用XML的工具。无论您使用的哪一种XML数据库方式,您都要很理解每一种数据库的特性,这才是最重要的。

喜欢本文,那就收藏到:

    Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘 和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网
相关评论  我也要评论
还没有关于此文章的相关评论!
  • 昵称: (为空则显示guest)
  • 评论分数: ★ ★ ★★★ ★★★★ ★★★★★
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
  • 导航
    赞助商
    文章类别
    订阅