为什么不建议采用数据库写入的方式集成不同系统

标签: 数据库 系统 | 发表时间:2014-03-06 23:40 | 作者:caowf
出处:http://www.iteye.com
今天参加一个项目方案沟通会,实施方是一个外部公司,需要我帮忙确定内部系统和本次开发系统的接口需求。实施方提出的方案是直接写入内部系统的数据库,我给出的建议是通过交换一个XML文件实现数据同步。理由有三个:
1.审计跟踪。直接写入数据库,很难记录访问日志,一旦出现问题,很难界定责任。
2.数据完整性。一个单据是否有效,单靠数据库提供的约束机制是很难准确描述的,在很多情况下,是由应用逻辑负责检查验证。如果通过数据库直接写入,应用逻辑的检查功能很难触发,数据完整性保证会有问题。
3.灵活性。对方的方案相当于建立了对于我方系统实现的依赖,如果将来内部系统实现有变化,对方的逻辑就需要修改,会引起一些列不必要的麻烦。

已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [数据库 系统] 推荐:

8种Nosql数据库系统对比

- xcv58 - 伯乐在线 -博客
  导读:Kristóf Kovács 是一位软件架构师和咨询顾问,他最近发布了一片对比各种类型NoSQL数据库的文章. 文章由敏捷翻译 - 唐尤华编译.   虽然SQL数据库是非常有用的工具,但经历了15年的一支独秀之后垄断即将被打破. 这只是时间问题:被迫使用关系数据库,但最终发现不能适应需求的情况不胜枚举.

在数据库层面分析系统性能(原创)

- - ITeye博客
按照OracleDocument中的描述,v$sysstat存储自数据库实例运行那刻起就开始累计全实例(instance-wide)的资源使用情况. 1>.事件发生次数的统计(如:user commits). 2>.数据产生,存取或者操作的total列(如:redo size). 3>.如果TIMED_STATISTICS值为true,则统计花费在执行操作上的总时间(如:CPU used by this session).

Oracle、Db2、SqlServer、MySQL 数据库插入当前系统时间

- - CSDN博客推荐文章
例如有表table,table 中有两个字段:name 、makedate. 插入系统时间应为sysdate:. insert into table (name,makedate) values('测试',sysdate);. 插入系统时间应为current timestamp并且makedate数据类型为timestamp.

ActiveMQ系统之——消息持久化到MySQL数据库中(二)

- - CSDN博客推荐文章
关于这一节的程序,需要使用到《 ActiveMQ系列之——安装、运行及事例代码(一)》中的示例代码. 本文主要介绍关于消息持久化的配置. ActiveMQ默认情况下是基于文件的存储,使用的是kahaDB,当然还有其它的持久化方式,例如LevelDB,这个是在5.8的版本中引入的,本文主要介绍数据库持久化,使用的数据库是MySQL,其它数据库类似.

数据库系统load飙高问题解决思路

- - BlogJava-qileilove
数据库服务器器load 飙高的报警,比如:.   如何处理load 异常飙高的报警呢. 本文尝试从原理,原因,解决方法来阐述这类问题的解决思路.   CPU作为服务器的关键资源经常成为性能瓶颈的根源,CPU使用率高并不总是意味着CPU工作繁忙,它有可能是正在等待其他子系统. 在进行性能分析时,将所有子系统当做一个整体来看是非常重要的,因为在子系统中可能会出现瀑布效应.

某物流系统数据库故障诊断

- - SQL - 编程语言 - ITeye博客
某物流公司新上一套软件系统,数据库CPU占用率基本维持在80%以上,业务高峰期数据库宕机. 重做日志缓冲区的已使用的空间达到三分之一时. 当dbwn进程向磁盘写入已修改的缓冲区的时候. 用户提交事务处理时的一条提交记录(经常commit会及时刷新重做日志缓冲区空间). 重做日志缓冲区的已使用的空间达到三分之一时.

MySQL企业级数据库灾备(备份)系统-DMB v2.1发布

- 彦强 - MySQL 实验室(BLOG) - MySQL性能、MySQL Cluster集群、MySQL HA高可用等研究 - MySQL实验室
为了这系统宅了很多个周末,又一个小长假过去了, DMB v2.1终于可以那得出手了,现在分享出来让朋友们使用,希望能得到更多更好的建议. DMB 对InnoDB存储引擎支持在线热备(ibbackup, xtrabackup等),还可以根据用户需求选择备份模式,是否加锁获取Master信息等. “DMB数据库监控及灾备系统(监控、备份) for MySQL” 简单介绍见 http://www.mysqlab.net/tool/dmb/.

淘宝开源的PB级分布式数据库系统OceanBase简介

- Linker Lin - 弯曲评论
[ 编者注: OceanBase是一个支持海量数据的高性能数据库系统,实现了数千亿条记录、数百TB数据上的跨行跨表事务,由淘宝网核心系统研发部、运维、DBA、广告、应用研发等部门共同完成. 其源代码已于8月31日遵照GPL2开源. 本文第一部分转载于淘宝网核心系统研发部博客, 原始链接位于http://rdc.taobao.com/blog/cs/?p=956.

Oracle数据库系统工程师培训视频教程下载

- - Oracle - 数据库 - ITeye博客
   分享一套穆远龙老师的Oracle数据库系统工程师培训的视频教程下载,一共57讲,教程涉及到内存结构、物理结构、备份和恢复、安全审计、性能调优等等技术点.    该课程系统详细的介绍了Oracle数据库的整个过程,让您从基础入门到精通,贯穿整个学习.      第一讲:Oracle数据库系统基础.

为什么不建议采用数据库写入的方式集成不同系统

- - 企业架构 - ITeye博客
今天参加一个项目方案沟通会,实施方是一个外部公司,需要我帮忙确定内部系统和本次开发系统的接口需求. 实施方提出的方案是直接写入内部系统的数据库,我给出的建议是通过交换一个XML文件实现数据同步. 直接写入数据库,很难记录访问日志,一旦出现问题,很难界定责任. 一个单据是否有效,单靠数据库提供的约束机制是很难准确描述的,在很多情况下,是由应用逻辑负责检查验证.