在需要交换的数据中,尤以数据库中的数据最为突出。目前对数据库之间一致性维护或者数据交换的研究多数都集中在连接条件下的分布式数据库系统中,所提出的方法,例如事务控制法、复制控制法等都有一定的适用局限性,因此,如何适应物理隔离条件下的数据库数据一致性维护以及数据交换和在此条件下灵活的应用要求,是本文需要解决的问题。作者以实际项目开发为背景,借鉴了一些分布式数据库数据一致性维护理论,探讨了在非连接网络条件下同构或异构数据库之间的数据一致性和数据单向追加方式中的表间关系一致性的维护方法以及冲突的解决方法,并提出了具体的实现方案[2]。
非连接网络条件下数据库间数据交换的设计方案
1 在实际的工作中,常常会出现这样的情况,考虑到安全因素而将连接从物理上断开的两个网络,在业务处理中存在必要的数据逻辑联系,例如,在电子政务的建设中,政务办公网络必须要与进行物理隔离,而办公数据有很大一Internet 部分来源于,如何解决物理隔离带两端网络中的数据Internet 库之间的数据交换,便成了本文讨论的出发点,而对于数据交换中的另一重要因素——安全性,超出了本文涉及的范畴,将在其他文献中予以体现。
在两个物理隔离的网络(假定“网络”和“网络”)I II 中,各存在一个应用数据库,其中一端数据库内容发生某种变化,可以以两种维护模式将这种变化反映到对方数据库中。一种模式是,两端数据库的内容在一定延时范围内保持数据的同步,二者互为镜像,数据维护的方向是双向的,称这种方式为镜像模式;
另外一种是只需将一端增加的数据追加到对方数据库中,这种方式下的数据维护是单向的,称之为单向追加模式。
无论是镜像模式还是单向追加模式,我们都是对引起源数据库中数据变化的操作进行操作,即将对源数据库表中记录的增、删、改或对表的创建、修改、丢弃等操作同样追加到目的数据库中,使目的数据库同步成为源数据库的镜像
库,本文的“同步”概念如不作特殊说明,皆是指在操作内容上是同步的,而在时间上是异步的操作。
总体设计如图所示,在物理隔离带的两端网络中都会1存在一个数据库数据维护程序。在一次数据交换中,它负责感知所在端数据库的变化,根据维护模式将更新的数据提取并以数据包的方式发送给另外目的端的维护程序,该维护程序从数据包中解析出更新数据和维护模式,将这些更新数据按其维护模式更新到目的数据库中,再提取该端数据库更新数据,此时,上次的单向交换中的源数据库和目的数据库互置便完成了一次数据交换。
洛克王国魔法阿凡达
图总体设计图
1 非连接数据库间的数据交换方法
邵宝军,王延章
(大连理工大学信息与决策技术研究所,大连)
116023摘要: 为了实现在物理隔离条件下非连接数据库之间的数据交换,该文将数据交换分类为双向镜像和单向追加两类,重点论述了镜像数据库数据一致性的方法、数据更新冲突的类型和解决以及单向追加时表间链接关系一致性的维护方法。并结合“电子政务数据安全交换平台”的开发经验,探讨了具体的实现方案。
关键词:数据交换;数据一致性;物理隔离;电子政务
Data Exchange Between Disconnected Databases
,SHAO Baojun WANG Yanzhang
( Institute of Information and Decision Technology, DUT, Dalian 116023)
【Abstract 】In order to exchange data between the disconnected databases in the condition of physical isolation,this paper classes that as bidirectional mirror exchange and unilateral superadd, and emphasizes on discussing the method of data consistency between mirror database , the types and resolvent of conflict caused by data update, and the method of relation consistency among tables in unilateral superadding. Based on the project of "data security exchange platform in E-government", this paper discusses the realization scheme.
【Key words 】;;;Data exchange Data consistency Physical isolation E-government
第30卷 第17期Vol.30 № 17计 算 机 工 程Computer Engineering
2004年9月September 2004
无法访问您要使用的功能所在的网络位置・软件技术与数据库・
中图分类号:TP311
文章编号:1000—3428(2004)17 —0077—02
文献标识码:A
在跨物理隔离带实现准实时的数据交换是由另外一个系统完成,数据传输的安全性、实时性和可靠性等是由该系统保障,不在本文讨论范畴。
本文将主要在以下几个方面进行讨论:
在镜像模式中,对数据一致性的维护,其中包括对同型数
(1)
据库数据一致性的维护,异型数据库通过数据类型的映射完成对数据一致性的维护。
在镜像模式中,在对记录进行添加、修改和删除操作时产
(2)
生的冲突的分析和解决方法。
在单向添加模式中,对作为索引的主键的重构,以及表间
(3)
通过外键带来的链接关系的重构。
镜像方式中数据库数据一致性维护
2
在数据库的镜像方式中,网络两端的数据库互为对方的镜像,即一次数据镜像操作是由两次单向同步操作构成的,一端数据库在一次镜像操作中先后为对方的源和目的,经过两次单向同步操作后两端数据库的数据保持一致。
镜像方式的数据一致性维护可以按两种粒度进行,以表为单位的数据同步构成的粗粒度和以字段为单位的数据同步构成的细粒度,不同粒度的维护决定了不同范围的一致性。
一次单向同步操作的处理流程,如图所示。
2
图一次单向数据同步处理流程图
2
将镜像操作的描述通知维护程序。“镜像操作的描
(1)
述”通常包括源数据库的连接属性、需要镜像的表和参加镜像操作的字段、目的数据库的连接属性、异构数据库的类型映射描述和冲突解决策略描述等。
拷贝源数据库中需要镜像的表。在维护程序的工作
(2)
数据库中建立这些表的临时的拷贝,以便计算差异。拷贝表是临时的,当差异计算完成后就丢弃。
计算差异。
(3)
如果初始状态的目的数
1) 据库为非空库即在第一次同步之前
,
目的网络中需要镜像的数据库表中有数据则需要手动在源网络的工
,
作库中建立目的数据库表的镜像表将初始数据导入到镜像表中。
,
计算的方法是采用类似于图所示的语句,对工作数据
2) 2SQL
库中的源表拷贝和目的表的镜像进行逐行对比计算便得到拷贝表
,
清朝历代帝王顺序表中有而镜像表中没有的记录集,即新添加的记录集;将此条语句的比较表与被比较表互换,便可以得到镜表中有而拷贝表中没有的记录集,即新删除的记录集;再通过对删除和添加的记录集进行交集运算就可以得到修改记录集。
对不同数据类型使用不同的对比方法。例如,字符型、数值
3)
型等可以直接根据值判断是否相等,而日期等类型则需要进行适当的类型转换才能进行判断是否相等。
对于二进制长字段类型,如中的、、
4) ORACLE raw long raw
等和中的等,采用长度和内容摘要混合blob MS-SQLSERVER image
匹配策略。如果用户数据库表中存在长字段,则在表拷贝和生成镜像表时加入相应的附加字段,用来记录长字段的长度或内容摘要(这些附加字段只存在于工作数据库中的拷贝表和镜像表中)。内容摘要是截取长字段固定长度并按十六进制表示的字串。
例如,下面是在环境下形成差异计算语句,
Oracie SQL
”是“工作库”用户名,”为源数据库搘orkshop揙rcCopy
中表的拷贝,”为目的库中表的镜像,”和揇esMirror揤
“”则分别是参与差异计算的类型为和
N VAR Char2Number 的字段。
SELECT * FROM workshop.OrcCopy WHERE (NOT EXISTS (SELECT * FROM workshop.DesMirror WHERE ((workshop. DesMirror.V IS NULL AND workshop.OrcCopy.V IS NULL) OR ( workshop.DesMirror.V IS NOT NULL AND workshop.OrcCopy.V IS NOT NULL AND workshop.DesMirror.V=workshop.OrcCopy.V)) AND ((workshop.DesMirror.N IS NULL AND workshop.OrcCopy.N IS NULL) OR (workshop.DesMirror.N IS NOT NULL AND workshop. OrcCopy.N IS NOT NULL AND workshop.DesMirror.N=workshop. OrcCopy.N))))
差异消除。首先将的计算结果追加到目的数据
(4) (3)
库中表的镜像中,使目标数据库的镜像库中的数据同步。
差异发送、接收,是由物理隔离数据安全交换平台
(5)
完成的,此平台的研制工作也已完成。
差异消除。在目的网络中,将接收到差异追加到目
(6)
的数据库和源数据库的镜像中。
一次单向的数据同步完成。此时目的数据库与源数
(7)
据库数据同步,同时两个镜像库的数据也保持同步。
镜像方式中数据同步冲突的解决
3
单向数据同步操作需要一定时间延迟,即数据的一致性维护在时间上是异步的。如果在这段时间延迟中,两端网络对同一条记录进行操作,就会产生数据同步的冲突。
数据添加冲突,例如,两端网络各添加一条主键相同的记
(1)
录产生的冲突。
数据删除冲突,例如,一端网络删除一条记录,而另外一
(2)
端网络对该条记录进行修改产生的冲突。
数据修改冲突,例如,两端网络对同一条记录进行不同的
(3)
修改产生的冲突。
这种由于时间上的异步而产生冲突的存在性是不可避免的,只能在逻辑上牺牲一方的操作或者在应用上按一定策略进行操作内容的合并。五一贺词
主从表机制。对两端网络需要镜像的数据库表按其数据的
(1)
重要程度设置主从表,当冲突发生时,数据更新操作总是按主表进行,而从表的更新被舍弃。
逻辑合并机制。当冲突发生时,按预先设定的合并机制对
(2)
两端的更新操作合并成新的更新操作,以新的更新操作更新两端数据库表,这种合并机制的描述与实际应用的业务逻辑密不可分。
分组机制。将更新操作权按表或记录进行分组,分配给两
(3)
端网络,使两端网络不能同时对同一个表或者同一条记录进行更新,这种分配是由应用的业务逻辑完
成的,而非维护程序。
单向追加模式中表间链接关系一致性维护
4
在实际的应用中,常有这样的需求,外网上报一条记录给内网,内网对该条记录进行办公处理后不需要反馈或者以
(下转第页)
156
续性指数间的关系,这个软判决关系对提高算法的稳健性很重要;图是处理后的视频中的相应的一帧。
6
图未受污染指数
5
与连续性指数间的关系图经过去除污点噪声处理的6
视频中相应的一帧
σητ
实验中分别取值、、。从图中可以看
,
,80.090.1
出,本文的方法能够很好地去除污点噪声。
结论
3
本文用分析被测点连续性的方法,利用它估计最平滑的方向及相应的未被污染指数,用这个指数来控制滤波器的响应达到去除污点噪声的目的。这样就避免了运动估计的环节,还结合污点噪声的特点优化了滤波器的设计,同传统的运动估计污点检测硬判决的方法
+[11]相比,本文的方法能有效去除污点噪声而对细节只带来微小的降质,而且不会在污点边界留下明显的痕迹,提高了算法的稳健性,便于实现,对于保护我国的优秀电影文化资源具有积极的意义。
参考文献
1 Joyeux L, Buisson O, Besserer B, et al. Detection and Removal of Line Scratches in Motion Picture Films. IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 1999, 1: 548-553
2 Joyeux L, Bouker S, Besserer B. Film Line Scratch Removal Using Kalman Filtering and Bayesian Restoration. Fifth IEEE Workshop on Applications of Computer Vision, 2000: 8-13
3 Takahiro Saito, Takashi Komatsu, Tomohisa Hoshi, et al. Image Processing for Restoration of Old Film Sequences. International Conference on Image Analysis and Processing, 1999-09: 709-714
4 Kokaram A C, Godsill S J. MCMC for Joint Noise Reduction and Missing Data Treatment in Degraded Video. IEEE Transactions on Signal Processing, 2002, 50(2): 189-205
5 Tenze L, Ramponi G, Carrato S. Blotches Correction and Contrast Enhancement for Old Film Pictures.International Conference on Image Processing , 2000, 2: 660- 663
6 Buisson O, Besserer B, Boukir S, et al. Deterioration Detection for Digital Film Restoration. Conference on Computer Vision and Pattern Recognition, 1997: 78-84
7 Biemond J, Van Roosmalen P M B, Lagendijk R L. Improved Blotch Detection by Post-processing .IEEE International Conference on Acoustics, Speech, and Signal Processing , 1999, 6: 3105-3108
8 Kokaram A C, Morris R D, Fitzgerald W J, et al. Detection of Missing Data in Image Sequences. IEEE Trans. on Image Processing , 1995, 4(11): 1496-1508
北京:清华大学出版社,9 Tekalp A M. Digital Video Processing.
1998
10 Boyce J. Noise Reduction of Image Sequences Using Adaptive Motion Compensated Frame Averaging . IEEE ICASSP,1998, 3: 461
11 Kokaram A C. Motion Picture Restoration-digital Algorithms for Artifact Suppression in Degraded Motion Picture Film and Video. Great Britain, Springer-Verlag, 1998
(上接第页)
78
其他方式进行反馈,即数据的传输是单向的,同时记录报到内网以后,外网就不再需要这条记录了。这样就不需要将两端数据库进行镜像操作,而只需将源数据库端记录追加到目的数据库端,并将源数据库端的被追加的记录删除即可。这就是单向追加模式的工作过程。这里没有了上面讨论的操作的复杂性和冲突的复杂性,但却存在下面两个问题。
问题:
1关键词字段或者具有记录标识信息的字段(以下简称标识字段)数据追加时发生的冲突。由于采用的是追加并删除的方式,因此源数据库端的记录条目与目的端数据库的不一致,在源数据库端生成一条新的记录时,它的标识字段很有可能在本端是唯一的,但是,当追加到目的端时,可能目的端存在相同的标识字段而发生冲突。
解决方法:本文采用标识字段重构的方法解决上述冲突,预先定制好目的数据库的标识字段生成策略,维护程序将新追加的记录按此生成策略重新生成该字段内容,使新加入的记录在目的数据库端保持唯一,生成策略也保持一致。
问题:
2使用上述重构方法将会使源数据库的记录在追加到目的数据库中后某些字段的值发生改变,这种改变可能会对源数据库表与其他表的链接关系造成破坏,而这种链接关系是依靠此字段来体现的。例如,在表中的标识字段与
A
表的某个字段一一对应,用来在应用中表达两个表记录的B
链接关系。
解决方法:当一条记录在追加时作为记录链接关系的标识字段重构后,维护程序将记录该条记录重构前后的值,并按预先设定的表间链接关系描述,将被链接表中的响应字段的值改变为重构后的新值,使之保持与链接表的链接关系。
结束语
5
本文从系统开发实践的角度,讨论了非连接数据库间
数据镜像的方法、更新冲突的解决以及数据的单向追加方法
的实现。有关研究结果在“电子政务数据安全交换平台”的
开发实践中得到应用和检验,并取得了良好的效果。
本文所研究的一致性维护方法是基于应用层面实现的,
而非利用数据库底层机制实现,因此,存在数据类型处理的
复杂性和执行效率等问题。但是,具有很好的灵活性,能够
方便地为应用服务。
参考文献
封明玉赵政张钢分布式环境下数据冲突及其解决方案计
1 , , . .
男人和女人亲爱算机应用研究,2002
陈珉喻丹丹涂国庆分布式数据库系统中数据一致性维护方法
2 , , .
研究国防科技大学学报
. , 2002,24(3)
贾焰王志英韩伟红等分布式数据库技术北京国防工业
3 , , . [M]. :
出版社, 2000神情恍惚
熊雪飞熊平刘锦得异构数据库互操作性的概念以及面临的
4 , , . 问题计算机科学
[J]. ,1994,(6)
5 Ceri S, Owicki S. On the Use of Optimistic Methods for Concurrency
Control in Distributed System [Z] .Proc.6th Int. Conf.On Distributed
Data Management and Computer Networks,Berkeley, California ,1986
6 Elmagarmid A K .Database Transaction Modelsfor Advanced Applica-
tions. CA, USA: Morgan Kaufmann,1992
7 Gray J, Helland P, O'Neil P E. The Dangersofreplication and Asolu-
tion.In:Proc. ACMSIGMO DInternational Conferenceon Managemen-
tof Data, Montreal,Canada,1996:173-182
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论