- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
XML 数据库技术
摘要:XML 是一种非常好的数据交换语言,经被用于系统之间的通信。对XML 数据库,
用户和应用程序需要把XML 加载到数据库中,用 XML 传输数据,从关系数据库
中把数据检索为XML,从XML DBMS 中检索数据,并且把关系型和XML 型数据结
合成XML。
关键字:XML、数据库、体系结构
1.数据库技术的发展
数据处理的发展经历了三大阶段:1950 年代中之前的无管理阶段、1950 年代末到
1960 年代末的文件系统阶段、1970 年代初至今的数据库系统阶段。
数据库系统的前身是文件系统,文件系统是数据库系统发展的基石。但与数据库系
统相比,文件系统的冗余大(数据不能共享、重复浪费)、缺乏数据独立性(数据和程
序相互依赖、改变困难)、数据未集中管理(无统一管理,无法保证安全性和完整性)。
早期数据库的结构种类丰富,如:
层次数据库——如1968 年IBM 推出的世界上第一个数据库管理系统IMS(Information
Management System,信息管理系统)
网络数据库——如1969 年美国CODASYL(Conference on Data System Language ,数据
系数语言协会)下属的DBTG(Data Base Task Group,数据库任务组)发表的DBTG 报告
关系数据库——由IBM 的E.F.Codd 与 1970 年提出,如 IBM 的SanJose 实验室 1977
年推出的System R 和加州大学的Berkeley 分校于1973 年推出的INGRES
2.XML 与数据库
2.1 XML 是数据库吗?
如果仅按数据库这个术语的本质来看,XML 文件就是数据库,它是数据的集合。
作为一种“数据库”格式,XML 有一些优势,如它是自描述的、可交换的(Unicode)、
能够以树型或图形结构描述数据。同样它也有缺点,如它显得有些繁琐,由于要对它
进行解析和文本转换,所以数据访问速度较慢。
一个更有用的问题就是在较为宽松的意义上,XML 及其周边技术是否可以算作“数
据库”——数据库管理系统 (DBMS)?答案是“在某种程度上是”。从正面来说,XML
提供了许多数据库所具备的东西:存储(XML文档)、模式(DTD,XML schema,RElAX NG
等等) 、查询语言(XQuery, XPath, XQL, XML-QL, QUILT 等等)、编程接口(SAX,
DOM,JDOM)等等。从反面来说,它缺少一些作为实用的数据库所应具备的特性:高效
的存储、索引、安全、事务和数据一致性、多用户访问、触发器、交叉查询多个文件
等等。
因此,尽管在数据量小、用户少和性能要求不太高的环境下,可以将XML 文档用
作数据库,但是却不适用于用户量大、数据集成度高以及性能要求高的作业环境。
2.2 需要XML 数据库吗?
如果你要查询历史数据、存储Web 页面、进行电子商务,而XML 又在其中作为数
据传输载体,则你就需要选择支持XML 的数据库和中间件。
例如,你有个电子商务的应用,将XML 用作数据交换。那么你的数据最好有个非
常规则的结构并且可供非XML 程序使用。还有,XML 文档所用的某些东西如实体和编
码对你来说并不重要——总之,你感兴趣的是数据,而不是它在XML 内如何存储。在
这种情况下,你大概需要一个关系型数据库以及在XML和数据库之间转换数据的软件。
如果你的应用程序是面向对象的,你甚至还需要一个在数据库或XML 中存取这些对象
的系统。
另一方面,假如你要从一些结构松散的XML 文档建立一个网站。你不但要管理这
个网站,还要提供站点内容搜索。你的文档看起来结构比较松散,其中的实体的使用
对你来说可能更重要,因为它们是文档结构的重要部分。这种情况下,你也许需要一
个纯XML 数据库或内容管理系统。这使你可以保持文档的物理结构,支持文件级的事
务处理,以及使用XML Query 语言进行查询。
2.3 数据与文档
在选择数据库时最重要因素大概就是你想在数据库存储的究竟是数据还是文档。
例如,是简单地把XML 当作数据库和(可能不支持XML)应用程序之间的数据转换工
具,还是用于集成,就像XHTML 和DocBook 中的那样?通常
文档评论(0)