Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1502556
  • 博文数量: 3500
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 43870
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-03 20:31
文章分类

全部博文(3500)

文章存档

2008年(3500)

我的朋友

分类:

2008-05-04 19:59:24

一起学习

随着XML 作为一种新的通用数据格式的日渐繁荣, 管理XML文件的工作变得非常的关键. 现在已经出现 了很多新的技术使得企业能够更好的将它们的信息作为XML 文件进行管理. 在本文中, 我们将考察XML仓库技术并学习它们是如何帮助我们追赶可扩充的共享数据的 未来的.


概览
一个XML 仓库是一个储存和提取XML 数据的系统.这些数据通常以XML文件和与它们相联系的文件类型定义 (DTD) 或者 XML模板的形式出现. 因为 XML 数据本身是以级联的结构出现的, 而不是一个关系结构, 所以要把XML 数据保存到传统的关系数据库里可 能有些困难. 仓库本身可能是一个关系数据库系统, 但是它更可能是一个专门为XML(或者级联数据)定制的存储系统.

数据存储的方法会因为特定的系统而有所不同. 而存储和提取数据的方法也有可能不同. 数据可以通过使 用基于关键字索引的系统或者是基于查询的系统来提取和存储.

最后, XML 仓库可能使用多种不同的访问方法. 一些系统使用基于COM, CORBA , 或者JavaBeans 企业版 (EJB) 的专有的API, 而另一些则使用ODBC标准. 大多数仓库提供对网络访问的良好的支持.


保存XML 数据
保存XML数据的过程包括两个内容: 在仓库中添加一个新的XML文件和修改已经存在的文件. 在仓库中删除 一个文件被认为是修改一个已存在文件的特别的例子.

因为XML 数据不是基于传统的关系模型, 使用这样的数据库实现XML 仓库将会是复杂而麻烦的. 例如, XML 级联结构中的每一层都需要一个新的关系表单. 当你的XML 文件变得更加复杂的时候, 你的关系数据库也会变得更加复杂.

围绕一个级联结构建立的存储系统能够更容易的接收XML 数据而且在接收XML 数据的时候不需要像它们在 关系模型中的那样做许多关系的和索引的工作. 级联的系统还能让你使用XQL和XPath语句来访问整个和部分文件.


读取XML 数据
用来读取XML 文件的方法是和存储的方法相联系的. 对于关系数据库来说, 这个工作是通过SQL或者存储 过程来实现的. 这些结构的缺点是它们将数据作为关系集合而不是XML 级联结构进行访问并返回.

级联的系统通常会为访问XML数据提供XQL或者XPath 方法. 这些技术更加准确的反映了根据XML 数据进行 的数据查询的类型. 它们还用一种级联的方式提供数据.


索引XML 数据
在一个关系数据库里保存数据的时候, 可能将XML 文件和一个外主关键字联系起来用以维护主文件关键字 . 数据的保存和提取过程使用这些主文件关键字来确定哪个文件被保存或者提取. 更先进的系统从一个XML 元素或者属性里提取出一个主关键字.

在关系表单里保存的数据的索引是基于一个单一的表单(或者单一的级联层次)的. 级联的系统也允许你将 一个元素或者属性作为主关键字, 但是它们还让你在不同的级别根据这个级别的数据创建索引.


验证数据
XML 文件最重要的方面之一就是能够验证数据. 使用不同的技术, 包括DTD和模板, XML 解释器就能够确 定一个XML 文件是不是符合特定的数据标准. 因为仓库了解DTD 或者XML 模板, 所以它们能够在数据保存和修改的时候对数据进行验证.


选择一种关联方式
随着XML 文件变得越来越普通, 许多企业会需要创建一个仓库来管理级联的数据. 这些仓库会为保存, 访 问, 和优化XML 文件提供新的技术. 这里我们讨论了这种新技术是如何实现的和它与传统的数据管理系统的对比.

 

下载本文示例代码


XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术XML仓库管理技术
阅读(179) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~