Monday, February 14, 2011

xml数据库

xml via RDB
XML 数据以层次结构组织,元素可嵌套、可递归、可有序访问。
使用xml标准的查询语言(如xpath)
RDB
数据存储在多个表中,行和列都是无序的,不支持递归元素。对XML的访问需要大量的表操作
使用SQL语言查询。

XMLDB 使用XML document 作为 (logical) storage 的基本单元 (就像RDB使用row作为基本单元); 不要求特定的物理存储模型 (可以用关系型/层次性/OO/任何其他私有存储模型)
Native XMLDB 存储 XML文档的策略有4种:
1. 用文本形式存储整个文档
2. 在文件系统中以"修改过的形式"存储整个文档
3. 把文档结构映射到数据库中
4. 把数据结构映射到数据库中
通常Native XMLDB 使用方法2/3, 而XML-enabled DB 一般用方法4

XMLDB 查询方法包括: Xpath; Xquery; 私有语言
XMLDB 修改方法: DOM/SAX 或 XML:db Xupdate
API: JAVA or C++

XMLDB2种用途:
1. 文档为中心: 用以描述书本、电子邮件等;面向人工处理;具有不规则结构,数据颗粒比较大。
2. 数据为中心,用作结构化数据的存储和交换,如时刻表,订货单;面向机器操作
XMLDB存储策略也分为:
1. 文档为中心: Native XML; 内容管理系统
2. 数据为中心, 如面向对象数据库的半结构化数据;

No comments: