对关系数据库与XML数据库的比较研究
- 格式:pdf
- 大小:104.62 KB
- 文档页数:1
蠢 ! ! !曼!=! 薹 圜 对 关系 数据库与 数据库的比较研究 文◎ 董婧(曲靖师范学院计算机科学与工程学院 云南曲靖) 摘要:作为当今比较流行的二大数据 库,本文主要分析了XML数据库与关系数据库 之间的关系,结合实例论述了XML丈档的特 点,并对XML文档内容到关系数据库的转换提 出了一种可行的解决思路。 关键词:XML;关系数据库;转换 1、前言 关系数据库系统采用二维表格作为存储 数据的模型,关系数据是结构固定的信息, 通过表与表的关联关系来表达数据之间的关 系,由于其具有数据结构化、冗余度低、程 序与数据独立性强,易于扩充等特点,已成 为目前发展的一大主流,很多大型信息系统 都是建立在结构化数据设计之上。 而随着Internet的飞速发展,网络信息 量急剧膨胀,为了更好地进行信息管理和信 息交换,可扩展标记语言XML(eXtensible Markup Language)技术应运而生。XML是 SGML的一个简化版本,它将SGML的丰富功能 与HTML的易用性结合到web的应用中。XML较 传统关系数据库具有其自身的优势,如XML数 据是半结构化的信息,与传统的关系数据库 中的关系数据相比,元素之间的关系通过嵌 套方式表达,表现形式非常灵活:另外其数 据存储不需要使用数据库系统,在任何应用 程序中都可以读写数据,使用起来非常简单 方便,且数据格式统一,因其可以高效地操 作和维护Web上以指数增长的数据,目前已成 为网上传输数据的重要手段。 2、XML的特点 首先XML文档可扩展能力强[1],允许用 户自定义标签以及这些标签相关参数的属性 和值;其次其具有良好的数据可重用性:另 外使用XML文档具有较强的平台独立性。XML 可运行在任何平台和操作系统上,具有结构 化和标准化的文件模式;最后,由于数据可 被XML唯一标识,搜索软件无需了解类似传统 数据库的构建情况,因此搜索起来会变得f 分容易。但XML也有其自身的不足, ̄HDTD没 有采用XML的语法规则而是基于正则表达式 的,描述能力有限:约束定义能力不足;没 有数据类型的支持;不够结构化,重用的代 价相对较高。 XML文档主要由XML元素构成。每个XML 元素包括3部分:开始标记、元素内容和结束 标记。标记包括六个内容:元素(e1ement), 属性(att ri but e),实体引用(ent i t Y references),注释(Comment),处理指令 (processing instruction) ̄[ICDATA段。其中 标记是用一对尖括号来表示,元素内容可以 是文本数据,也可以是XML元素,甚至是该 元素本身。其语法和HTML类似,但是XML的 优势在于其允许用户可以根据需要自行定义 标记,具有十分强的可扩展性。下面是一个 XML文档的实例,描述了一・个歌手的姓名、性 别、所唱曲目等信息。 <?x m 1 v e r s i o n= 1.0 encoding= gb2312 ?> <Singer Tab1e> <Singer> <singer name> ̄菲</singer name> <gender>女</gender> <nationality>中国</nationality> <type>Pop</type> </singer> <song> <title>传奇<Itit1e> <composer>李健</composer> <length>4:20<Ilength> <year>2O10</year> </song> <song> <title>流年</title> <composer>陈晓娟</composer> <length>3:30</length> <year>20O1</year> </song> <ISinger Table> 都既要保持数据源内容的完整性,又要保证 数据源结构的可恢复性。因此可采用如下转 换规则[4]: ①单值属性和简单元素直接映射表的 列。 ②由复杂元素构成的表,对其内容分类 处理:单值属性和简单子元素映射利用上面 第一个规则;对于复杂子元素,形成对复杂 子元素对象的引用,关系数据库中,实体间 的关系通过外键引用来实现,而在XML数据库 中,实体间的关系通过IDREF或XML元素嵌套 来实现,因此当元素形成表后,把该引用改 成主键——外键(Primary keys——Foreign keys)的表示形式。 ③对于有多值属性需要创建一个单独的 表来存储这些值,包含外键和其父元素所在 表的主键形成的链接。 利用上述规则,可以很方便地将以上的 XML示例文档转换为如下二维表: singe1’nallle o.endel nationalib" b1)e 王菲 女 中国 Pop 表l Sinzel title sin.gel’llallle COillposel lell h Vear 传奇 王菲 李健 4 20 20lO 流年 王菲 陈晓娟 3:30 2001 表2 3、XML数据库与关系数据库的比较 xM L数据库与关系数据库系统相比 [2—3],有如F几方面的差异:1.存储形 式:XML数据存储在层次化结构化的文档中, 而关系数据库将数据存储在多个表中。2.存 储数据:XML结点具有元素和属性二种值,而 关系数据库中记录单元只有单一的值。3.存 储顺序:XML元素是有顺序的,而关系数据库 中记录 元是无序的。4.存储数据特点: XML中元素是可以嵌套的,而关系数据库中记 录单元是原子的。5.递归性:XML元素是可 递归的,而关系数据库[『l几乎不支持递归。6 .数据检索:XML中可以直接检索一个文件中 的数据,而关系数据库往往需要关联检索多 个表的数据。7.数据查询:XML用XML标准查 询语言Xpath或Xquery查询,而关系数据库用 标准查询语言SQL对数据进行查询。 4、XML向关系数据库的转换方案 由上可知XML与关系数据库进行数据转 换的最大困难是由非层次和层次的差别而导 致的。XM[ 数据是半结构化的信息,元素之间 的关系通过嵌套方式表达,有明显的层次结 构,而且表示形式非常灵活。而关系数据是 结构固定的平面化的信息,数据存储在二维 表中,数据之间的关系是通过表与表的关联 关系来表达的。在XML向关系数据库的转换过 程中,无论何种转换方案,在转换结果中, SOl蟮 5、结束语 通过以上对关系数据库 ̄HXML数据库的比 较,可发现XDB kLRDB具有更强的灵活性和可 扩展性,但XML还需解决数据存储、索引、冗 余和查询优化等问题。它和关系数据库之间 存在着大量的数据转换,实例证明本文所提 出的XML向关系数据库的转换方案是可行的, 应用XML作为Web数据交换的平台,能更好地 进行信息管理和信息交换,随着Internet的 不断发展,XML数据库的应用也必将越来越广 泛。 参考文献: 【l】翁畅平. 基于xM L的数字图书 馆信息组织[J]. 科技情报开发与经济, 2008.1 8(1 6):1 2-1 4. [2]邓华梅,李肖锋,袁海平.关于xML 数据的存储研究【J].科技情报开发与经济, 2008,18(24):1 5 3-1 55. [3】彭其华.网络环境下基于XML的异构 数据交换的研究[J].西南民族大学学报:自 然科学版,2003,29(6):756—7 58. [4】董东,马丽.x M L数据库和关系 数据库之比较[J]. 计算机工程与设 计,2005,26(8):2 092—2099
223