数据不一致性

来源:互联网 发布:微商城软件 编辑:程序博客网 时间:2024/06/06 02:25
数据不一致性是指数据的矛盾性、不相容性
产生数据不一致的原因主要有以下三种:一是由于数据冗余造成的;二是由于并发控制不当造成的;三是由于各种故障、错误造成的
第一种情况的出现往往是由于重复存放的数据未能进行一致性地更新造成的。例如教师工资的调整,如果人事处的工资数据已经改动了,而财务处的工资数据未改变,就会产生矛盾的工资数。
第二种情况是由于多用户共享数据库,而更新操作未能保持同步进行而引起。例如,在飞机票订购系统中,如果不同的两个购票点同时查询某张机票的订购情况,而且分别为顾客订购了这张机票,就会造成一张机票分别卖给两名顾客的情况。这是由于系统没有进行并发控制,所以造成了数据的不一致性。
第三种情况下,当由于某种原因(如硬件故障或软件故障)而造成数据丢失或数据损坏,要根据各种数据库维护手段(如转存、日志等)和数据恢复措施将数据库恢复到某个正确的、完整的、一致性的状态下。
数据库系统考虑了各种破坏数据一致性的因素,并采取了一些相应的措施来维护数据库的一致性。例如提供了并发控制的手段,提供了存储、恢复、日志等功能。
由于数据面向整个系统,是有结构的数据,不仅可以被多个应用共享使用,而且容易增加新的应用,这就使得数据库系统易于扩充,可以适应各种用户的要求。可以取整体数据的各种子集用于不同的应用系统,当应用需求改变或增加时,只要重新选取不同的子集或加上一部分数据便可以满足新的需求。
0 0