- 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文件本身进行存储或者读取的功能,并不能从 DOM 树检索部分文档或节点。因而就产生了原生XML数据库,XML数据不经任何转换而按原结构形状直接存入数据库内,因而对XML的应用来说是最优的。该文即是在这个方向上做了一些初步的探索。
关键词:XML;数据库;关系数据库;数据库映射
中图分类号:TP311文献标识码:A 文章编号:1009-3044(2010)19-5143-02
1 XML与数据库
现在对XML数据库的应用一般分为支持XML的数据库系统和原生XML数据库。现在很多企业都把XML作为数据库的一个补充,大的数据库厂商都在数据库产品内置了对XML的支持,这样将XML与数据库配合使用,这样的相互配合利用可以使它们各自发挥出威力,也能提高信息产品的灵活性。但是基于关系型数据库管理系统的支持XML的数据库系统也存在着一些问题:映射过程复杂繁琐;对较复杂的数据结构,映射的速度很慢;映射过程中会丢失元数据信息;存入和取出的XML文件可能不一致;数据必须有严格的结构;不支持包含混合内容的文件;灵活性、扩展性较差。如果你要查询历史数据、存储Web页面、进行电子商务,而XML又在其中作为数据传输载体,则你就需要选择支持XML的数据库和中间件。原生XML数据库为XML文档定义了一个(逻辑)模型,并根据该模型存取文件。它有一个XML文档作为它的基本的逻辑存储单元,就像关系型数据库在表格里也有一行作为基本的逻辑存储单元。原生XML数据库并不需要一些特定的潜在的物理存储模型,例如它可以建立一个关系型、层次型或面向对象的数据库,或使用专有的存储格式,例如索引,压缩文件。
2 XML数据库与关系型数据库的比较
如表1所示,XML数据库有其自身的优点:可存储以文档为中心和以数据为中心的XML;有很大的灵活性;适用于处理结构复杂、深层嵌套的数据,适于处理半结构化数据和非结构化数据;它是多种异构数据源的数据共享和集成;异构系统间的互操作。但XML数据库也有自身的缺点:产品不成熟;许多标准仍处于发展过程中;技术不为大家所熟悉;不适合事务处理;支持的工具较少;产品间的可互操作性较差。
3 XML与数据库映射
为了在数据库和XML文档之间传递数据,必须在文档结构和数据库结构之间建立映射,这种映射可以有两个分类:模板驱动和模型驱动
1) 以模板驱动映射
模板驱动就是通过在XML文档中嵌入可以被中间层功能代理支持的sql指令来实现数据的映射。值得注意的是,当前基于模板驱动的映射只能应用于在关系数据库和XML文档之间传递数据。
2) 以模型驱动映射
模型驱动就是通过在DTD/Schemas中定义数据模型的方法,建立数据库中数据与XML文档中数据的映射。模型驱动的映射是一种深层次的映射,是模式和模式之间的映射。XML文档和面向对象数据库的结构都是树型结构,这两者的映射相较XML与关系数据库的映射来得简单。所以采用模型驱动。将XML文档映射到面向对象数据库,也就是根据DTD/Schemas生成数据库模式过程。具体实现步骤为:
① 按照深度有限原则从XML文档树的树叶往树根进行遍历;
② 每当碰到除叶结点和根结点以外的内部结点,就查看数据库中是否存在对应的抽象数据类型,若不存在,则创建,并保证该结点所有子结点是该抽象数据类型的域;
③ 循环遍历XML文档树也就是重复2),直至根结点的直接子结点(次根结点);
④ 创建基于次根结点所对应抽象数据类型的对象,该对象是根结点所对应的对象;
⑤ 将XML文档中各元素的属性值填入对象的相应域。
3) 对DOM对象的操作
查找DOM对象的例子
? document.getElementById()
? document.getElementsByClassName()
? document.getElementsByName()
? document.getElementsByTagName()
操作dom对象的例子
? node.appendChild()
? node.removeChild()
? None.innerHTML = ‘test’
总而言之,现在人们正在尝试通过把XML文档映射到不同数据库模型的模式定义的方法来表示层次化的数据。
4 XML数据库技术的应用
XML文档有两种用途,分别是:以数据为中心的文档(data-centric documents)和以文档为中心的文档(documen
您可能关注的文档
最近下载
- 2025年秋人教版英语八年级上册Unit 1 Happy Holiday 教案教学设计.docx VIP
- 消除“艾梅乙”医疗歧视-从我做起!.pptx VIP
- 《饮用水源保护区》课件.ppt VIP
- 2025医疗器械偏差管理规程.docx VIP
- 三、功(教学课件)物理苏科版2024九年级上册.pptx VIP
- 2025年巩固拓展脱贫攻坚成果同乡村振兴有效衔接总结15篇 .pdf VIP
- 糖尿病合并高血压患者管理指南2025解读.pptx
- 石家庄空港工业园规划.pptx VIP
- 以中国式现代化全面推进中华民族伟大复兴PPT新时代坚持和发展中国特色社会主义的目标任务PPT课件(带内容).pptx VIP
- 大数据分析师(高级)试题(含答案).pdf VIP
文档评论(0)