| 问题:三年前的一个问题,问了很多高手都没答案,最后是一个高人给出了答案 ( 积分:0, 回复:82, 阅读:1372 ) 分类:数据库-文件型 ( 版主:hbezwwl, bubble ) 来自:longling1979, 时间:2004-10-29 10:59:00, ID:2871068 [显示:小字体 | 大字体] 现在我把答案给忘记了,只是记得难倒了很多人,最后一个博士几句话就给出了答案。时至今是我还记得当时在场人员的苦想的情景,最后得到答案时的惊讶,原来答案如此简单! 问题: 如何保证两个不同的数据库(不同的服务器,如ORACLE,SQL-SERVER)之间的原子特性, 简单点就是说:比方说一个相同的数据库同时装在两台数据库服务器上,一个客户端要 这两台服务器同时提交数据,即要想办法让客户修改的数据能同时存在两台服务器上, 最后一定要保证这两台服务器在同一时刻(当然是指极短的时间内了)数据是相同的。 请大家想一想倒底有什么方法可以达到,如果你可以得到答案,我想你真是高手了,至少 在当时我们公司问了软件园其它几家公司的系统分析及设计人员都拿不出答案。朋友,如 果你拿出了答案,如果你的工资还低于5000的话,请你大胆的跳吧!因为你的思维能力不 是一般的技术人员能达到的。 (注意:本系统是给军方使用的,所以你不能简单考滤环境) |
来自:hfghfghfg, 时间:2004-11-3 14:39:36, ID:2878299 |
绝对的一致就是唯一
两台服务器的合成一个不就行了。就是 A,B 是两个服务器,查询时联合查询(即有效数据)。原子特性你了解原子特性的意义吗。数据库保存的数据是用来查阅和统计的。我们首先要明白这一点。由此原子特性的体现是在查阅和统计的。所以你要保证原子特性统一就是联合查询。你不要被书本上的东西迷惑,你首先要搞清楚,数据库是如何处理这些数据的原子特性。所谓的原子特性只不过是内存或硬盘,磁带的一些信号而已,数据库只不过是管理这些信号而已。关于这个问题就是两台服务器A,B,你只要做到 查阅和统计的结果一致。实际上就是将A,B认为的合成一个虚拟的服务器。你就做到了保持原子特性一致。这样实际上只有一份原子特性,只有一份自然是一致的。其实真正的绝对的保持原子特性,是无应用意义的。我们使用备份服务器,或者多服务器就是要做到原子特性不同。举一个例子,实际的服务器数据丢失了,备份服务器得数据不能同时丢失。这时他们的原子特性就不同。
ps:我个人觉得,这个博士,不懂数据库的基本运行模式,特别是对运行模式中的虚实概念不懂,将数据库理解为 ORACLE,SQL-SERVER。 这些只是对数据进行存储检索的 方法而已。而且居然不明白理论模型和实际应用的区分。绝对的一致就是唯一的道理都不懂。
一个人不能两次踏入同一条河流。但是我爱啃的永远是猪脚。
两者 的 差别 在于,实与虚。其实我们所说的都是虚 的。
我身高真的是175cm吗?应该有0.1cm的误差吧。
你看到的数据真的在吗?不过是 800*600的bmp,85赫兹的刷新。
你的眼睛看到是真的吗,据说眼睛会进行凹凸欺骗。
就是做到了绝对的一致有如何,不同的人看到的又不同,朋友你不要用肉眼看世界,要用心看世界。或者 你就是世界,又或者没有世界。
很多问题,我们都遇到过,分布数据的一致性早就有定论,就是如果绝对的一致就不是分布,只有,没有数据差异,就没有存在的意义。
如果绝对的一致,就不能 异地,脱机。还有执行速度的问题,用异步(或线程),只是让用户感觉到快而已。还有报表,动态生成或者数据整合的方法也是虚实转化而已。
数据库端 在哪?
机器上,网络上流动的数据包,还是cpu 的电子运动。
江湖在哪里, 哪里没有江湖。
*^-^*
文章讨论了一个关于如何在两个不同数据库服务器之间保证原子特性和数据一致性的难题。一位博士提出将两个服务器视为一个虚拟服务器,通过联合查询来实现一致性。然而,另一位读者指出,这种方案可能并不完全理解数据库的运行模式和分布数据一致性的本质,强调在分布式系统中绝对一致性往往不切实际,且有其固有的挑战,如速度、异地操作和数据差异。
1万+

被折叠的 条评论
为什么被折叠?



