欢迎来到天天文库
浏览记录
ID:22333623
大小:32.17 KB
页数:8页
时间:2018-10-28
《xml数据库技术》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、XML数据库技术摘要:XML是一种非常好的数据交换语言,经被用于系统之间的通信。对XML数据库,用户和应用程序需要把XML加载到数据库中,用XML传输数据,从关系数据库中把数据检索为XML,从XMLDBMS中检索数据,并且把关系型和XML型数据结合成XML。关键字:XML、数据库、体系结构1.数据库技术的发展数据处理的发展经历了三大阶段:1950年代中之前的无管理阶段、1950年代末到1960年代末的文件系统阶段、1970年代初至今的数据库系统阶段。数据库系统的前身是文件系统,文件系统是数据库系统发展的基石。但与数据库系统
2、相比,文件系统的冗余大(数据不能共享、重复浪费)、缺乏数据独立性(数据和程序相互依赖、改变困难)、数据未集中管理(无统一管理,无法保证安全性和完整性)。早期数据库的结构种类丰富,如:l层次数据库——如1968年IBM推出的世界上第一个数据库管理系统IMS(InformationManagementSystem,信息管理系统)l网络数据库——如1969年美国CODASYL(ConferenceonDataSystemLanguage,数据系数语言协会)下属的DBTG(DataBaseTaskGroup,数据库任务组)发表的D
3、BTG报告l关系数据库——由IBM的E.F.Codd与1970年提出,如IBM的SanJose实验室1977年推出的SystemR和加州大学的Berkeley分校于1973年推出的INGRES2.XML与数据库2.1XML是数据库吗?如果仅按数据库这个术语的本质来看,XML文件就是数据库,它是数据的集合。作为一种“数据库”格式,XML有一些优势,如它是自描述的、可交换的(Unicode)、能够以树型或图形结构描述数据。同样它也有缺点,如它显得有些繁琐,由于要对它进行解析和文本转换,所以数据访问速度较慢。一个更有用的问题就是
4、在较为宽松的意义上,XML及其周边技术是否可以算作“数据库”——数据库管理系统(DBMS)?答案是“在某种程度上是”。从正面来说,XML提供了许多数据库所具备的东西:存储(XML文档)、模式(DTD,XMLschema,RElAXNG等等)、查询语言(XQuery,XPath,XQL,XML-QL,QUILT等等)、编程接口(SAX,DOM,JDOM)等等。从反面来说,它缺少一些作为实用的数据库所应具备的特性:高效的存储、索引、安全、事务和数据一致性、多用户访问、触发器、交叉查询多个文件等等。因此,尽管在数据量小、用户少和
5、性能要求不太高的环境下,可以将XML文档用作数据库,但是却不适用于用户量大、数据集成度高以及性能要求高的作业环境。2.2需要XML数据库吗?如果你要查询历史数据、存储Web页面、进行电子商务,而XML又在其中作为数据传输载体,则你就需要选择支持XML的数据库和中间件。例如,你有个电子商务的应用,将XML用作数据交换。那么你的数据最好有个非常规则的结构并且可供非XML程序使用。还有,XML文档所用的某些东西如实体和编码对你来说并不重要——总之,你感兴趣的是数据,而不是它在XML内如何存储。在这种情况下,你大概需要一个关系型数
6、据库以及在XML和数据库之间转换数据的软件。如果你的应用程序是面向对象的,你甚至还需要一个在数据库或XML中存取这些对象的系统。另一方面,假如你要从一些结构松散的XML文档建立一个网站。你不但要管理这个网站,还要提供站点内容搜索。你的文档看起来结构比较松散,其中的实体的使用对你来说可能更重要,因为它们是文档结构的重要部分。这种情况下,你也许需要一个纯XML数据库或内容管理系统。这使你可以保持文档的物理结构,支持文件级的事务处理,以及使用XMLQuery语言进行查询。2.3数据与文档在选择数据库时最重要因素大概就是你想在数据
7、库存储的究竟是数据还是文档。例如,是简单地把XML当作数据库和(可能不支持XML)应用程序之间的数据转换工具,还是用于集成,就像XHTML和DocBook中的那样?通常这是个偏好,但是却非常重要,因为这会影响到XML在数据库中如何存储。如果想保存数据,则需要的是主要面向数据存储的数据库,如关系数据库或面向对象数据库,也可以是在数据库和XML文档之间转换数据的中间件。如果想保存文档,则需要的是一个专门用来存储文档内容的内容管理系统(contentmanagementsystem)。XML文档可以分为两类:以数据为中心的(da
8、ta-centric)文档和以文本为中心的(document-centric)文档。(1)以数据为中心的文档以数据为中心的文档将XML用作数据的传输载体,文档只提供给机器使用。在此,XML通常并不是绝对必要的。也就是说,对于应用程序或数据库而言,(在某个时间段内)数据是否以XML文档的形式存储并不重要。
此文档下载收益归作者所有