有了"数据库"为什么还要用"xml" ?

转载 2015年11月17日 21:15:01
有了数据库为什么还要用XML?XML与数据库各自的特点、他们的应用与区别我想你从Google上可以查到一大堆,那么在这里
我只说说自己的体会:
1:尽管XML和数据库都可以定义数据模型并存储数据,然而,XML更加通用、更加标准化,前些年我们公司的软件要与其他公司软件做接口传输数据时,采用了最简单的接口数据库方式,开发最容易,带来了些问题:
  一是这个接口数据库是某种数据库产品(DB2/MSSQL/MYSQL),接口代码在更换了数据库产品(我们公司的软件要经常面对不同厂商的应用系统)后需要修改或重写;
  二是如果接口需求变动的话,可能要改动数据库结构,导致还要改接口代码,这是致命的。
  三是接口的稳定取决于这个数据库管理系统本身要稳定,你得考虑维护管理(自动化日志清理等)问题;
  四是为了穿过防火墙(电信、网通公司可能会关闭某些端口)及安全性考虑,你不能直接通过TCP/IP去访问远程接口机器上的数据库,需要将数据再编码发布(比如之前的Remoting或现在的WCF)
  那么现在我们改用XML来做程序接口,我们给其他公司的是一些XML Schema、Web Serivce的URI、业务流程说明,我们不再需要一个接口电脑、接口数据库等,现在上述的四个问题不再困扰我们。

2:我们之前的业务数据库大概有二百多张表,一年左右会因需求变动对表结构做些调整,当然也影响到了应用程序代码的调整,现在我们的业务数据库大概有不到五十张表,因为一些容易发生需求变动的表和一些半结构化、非结构化的数据被存储为数据库表内的XML字段,需求变动仅影响我们去修改一下Schema,不用去动数据库结构,这对已经部署到用户那边的系统来说是非常重要的改进。不仅如此,表数量的减少对开发人员、业务人员、数据库管理人员非常有益。

3:说了两点XML的好处,那么我再说说它作为数据存储方面目前无法替代 数据库的地方:
  XML缺少数据库具备的特性:高效的存储(即使是数据库内XML字段还是没有传统字段的速度快)、索引和数据修改机制(DB2等数据库产品对XML内的元素和属性可以加索引,内建在数据库中的XML字段享受了数据库带来的一些好处);严格的数据安全访问控制;完整的事务和数据一致性控制;多用户访问机制;触发器、完善的并发控制等因此,用户量大、数据集成度高以及性能要求高的数据环境中还是需要数据库来完成任务,IBM的DB2工程师也在讨论时建议我们统计类数据还是用传统字段为好。

  总之,现在XML对数据库是一个很好的补充,大的数据库厂商都在数据库产品里内置了对XML的支持,这样将XML与数据库配合使用,将让他们相互配合利用各自发挥出威力,也提高也我们信息产品的灵活性。



来自:http://blog.csdn.net/e_forrest/article/details/6098813

相关文章推荐

XML与数据库

pre{border:1px solid silver;padding:0.5em;}XML与数据库copyright 1999-2005 by Ronald Bourret 原作最后更新: 2005...

XML和数据库之间的关系

1.0 简介    本论文简要的探讨了XML和数据库之间的关系,同时列出一些可以使用数据库处理XML文档的软件。 虽然这里不打算详尽地介绍这些软件,但是笔者希望它能够描述使用数据库处理XML文档中的主...

XML是什么,它可以做什么?——写给XML入门者

XML即可扩展标记语言(eXtensible Markup Language)。标记是指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际...
  • cds27
  • cds27
  • 2006-05-18 00:44
  • 87815

xml与数据库的区别

这是风牛马不相及的两个概念,他们的结构,应用范围是完全不同的,目前的数据库基本上都是关系型数据库,以sql与oracle为代表,都是非常大型的,可以进行数据的海量存储;而xml主要解决的是数据在网上传...

C++之tinyXML使用

tinyXML一款很优秀的操作C++类库,文件不大,但方法很丰富,和apache的Dom4j可以披靡啊!习惯了使用java类库的我看到这么丰富的c++类库,很高兴!它使用很简单,只需要拷贝几个文件到你...
  • L_Andy
  • L_Andy
  • 2014-10-30 10:22
  • 32474

XML基本概念解析(二) XSLT、XPath、XQuery和XQueryX

XML基本概念解析(二): XPath、XSLT、XQuery和XQueryX作者:雨水 日期:2007-03-22  转载请保留此处 XML涉及一系列的技术规范和相关技术,概念较为多且复杂。这里主要...

四个主流的Native-XML数据库

四个主流的Native-XML数据库作者:雨水  日期:2007-03-22  转载请注明出处http://blog.csdn.net/gobitan  随着XML日益广泛的应用,XML数据存储的问题...

使用XML封装数据库操作语句的实现

在项目开发的过程当中,项目组开发成员的编程风格差异和数据库操作语句SQL的灵活性给项目组带来了越来越多的操作和维护难度。比如:从user表中取出所有数据,有的人会写成 ’ select * from ...

介绍几个XML数据库中容易混淆的概念

介绍几个XML数据库中容易混淆的概念,当开发人员谈及XML数据库时,他们往往指的是两个概念:存储XML数据的数据库,利用XML数据库的DBMS。   当开发人员谈及XML数据库时,他们往往指的是...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)