有关Sybase系统的数据同步与复制问题

sybase复制服务器(sybase replication server)用来满足日益发展的企业客户/服务器计算机环境的需要。自从复制服务器被广泛应用以来,已成为企业范围内客户/服务器应用模式的基础。

一个实用的复制系统必须考虑到以下的业务要求。

数据的高可靠性: 复制系统将使应用系统更加可靠,减少了计算机系统失败给业务处理造成的影响。

信息传递的一致性: 分布系统各节点内保护数据的一致性。

高的系统性能: 复制系统必须在不增加数据源节点的负担、有效使用网络的前提下,允许每个节点优化本地数据的存取方式。

方便数据集中管理: 系统管理员能够方便容易地管理分布与各节点的数据。

异构数据源访问: 复制系统有能力在不同厂商提供的数据源之间移动传递数据,如sybase、oracle、ms sql等系统间数据的复制和同步。

本地自治: 每个节点能够决定自己将接受的是哪些数据,以及访问和更新本节点数据。

复制服务器的工作方式

在这节中我们将描述sybase复制服务器产品的各个部份及它们的功能。复制数据操作可以分为四个部分:

对一个或多个数据源改变数据事务的监测;

在网络上传送事务;

将事务分发给各个目标数据源;

复制系统管理。

在sybase复制服务器环境中,对源数据库中数据的修改由一个称为日志传输管理(log transfer manager 简称ltm)的进程来实现。最典型的结构中ltm与源数据库放在同一个硬件平台上。

ltm将log传送给复制服务器进程,复制服务器进程可以在另一机器上。在一个复制系统中,若干复制服务器的配置,可以分布在不同的局域网上,根据复制系统的配置,改变数据的log从一个复制服务器传送到其它复制服务器,最后由这些复制服务器将数据改变传给目标数据库。完整的数据复制操作进程可以由一个基于gui环境的复制服务器管理界面来管理和监控。因为在复制系统中使用了稳定队列(stable queue),数据从源数据库到目标数据库的途径中,能够避免系统中任一部分失败发生的数据丢失现象。稳定队列是一个安全机制,容错环境失败。

日志传输管理

sybase复制服务器产品有一部分为log transfer manager(ltm).ltm是一个低调度进程,最典型的配置方法是将ltm运行在与源数据库相同的平台上。如果复制系统中将有多于一个节点的源数据被修改,则需要每个节点有一个ltm。

ltm的任务是监视并捕获与它相联数据库的事务,而且将这些事务传送给复制服务器,以便复制服务器将事务再传给其它的复制节点。

ltm有一个联接到sql server,读取主sql server的事务日志,监测它是否改变了主节点数据。事务日志是用来观察主节点数据变化的最好的信息来源,因为它包含已经提交给server的事务,可用来恢复事务。在图六中,当某应用程序修改了主节点数据时,这个事务被记在事务日志中,以保证数据一致性,当提交时数据改变写入磁盘。复制进程不干涉数据库功能,只是ltm在监测sql server中的事务,当发现某个事务应该被复制时,将它传送给sybase复制服务器。

ltm进程,是一个由sybase open server/open client编写的应用程序,并有一个联接到sybase复制服务器。这个进程可以驻留在单独的机器上。正是由于sybase复制服务器进程可以运行在与主数据源不同的机器上,才使用户将复制系统对主数据库施加的负担降低到最小限度。

ltm进程可以将独立于主数据源命令的事务翻译给复制服务器。例如,一个事务中完成的是“update”,ltm将把事务传送给复制服务器并且给予解释,翻译成主节点完成的update命令。这个源数据库事务到复制服务器翻译或映射所认识的命令的机制是sybase复制服务器技术的一个重要策略。从ltm到复制服务器的界面对用户来说是可见的。也就是说,如果你能获得数据源的事务,就可以将它映射到sybase复制系统环境并且复制它。与其它竞争厂家产品不同,sybase复制技术允许建立应用程序来复制异构数据源。

时间: 2024-10-03 22:52:05

有关Sybase系统的数据同步与复制问题的相关文章

MYSQL数据同步备份复制

mysql|备份|数据|数据同步 设置 MySql 数据同步 mysql从3.23.15版本以后提供数据库复制功能.利用该功能可以实现两个数据库同步,主从模式,互相备份模式的功能 数据库同步复制功能的设置都在mysql的设置文件中体现.mysql的配置文件(一般是my.cnf),在unix环境下在/etc/mysql/my.cnf 或者在mysql用户的home目录下的my.cnf. window环境中,如果c:根目录下有my.cnf文件则取该配置文件.当运行mysql的winmysqladmi

两台SqlServer数据同步解决方案

server|sqlserver|解决|数据|数据同步 前些天遇到特殊需求,两台SqlServer服务器天隔一方,需要实效性很高的数据同步.     大家知道通过internet网,要高准确性和高实效性的实现两台数据库数据同步是个棘手的问题.     网络上找了些资料,有一篇文章可供参考http://www.sxsoft.com/technology_test/show_news.asp?id=450,文章中介绍了Sqlserver的出版和订阅方法来同步数据.根据文章做了下试验,是可以的,有以下

利用数据库复制技术 实现数据同步更新

数据|数据库|数据同步 利用数据库复制技术 实现数据同步更新复制的概念复制是将一组数据从一个数据源拷贝到多个数据源的技术,是将一份数据发布到多个存储站点上的有效方式.使用复制技术,用户可以将一份数据发布到多台服务器上,从而使不同的服务器用户都可以在权限的许可的范围内共享这份数据.复制技术可以确保分布在不同地点的数据自动同步更新,从而保证数据的一致性.SQL复制的基本元素包括出版服务器.订阅服务器.分发服务器.出版物.文章SQL复制的工作原理SQL SERVER 主要采用出版物.订阅的方式来处理复

sybase复制服务器中数据同步与复制技术

美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或WindowsNT平台上客户机/服务器环境下的大型数据库系统. Sybase提供了一套应用程序编程接口和库,可以与非Sybase数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用.系统具有完备的触发器.存储过程.规则以及完整性定义,支持优化查询,具有较好的数据安全性.Sybase通常与SybaseSQLAnywhere用于客户机/服务器环境,前者作为服务器数据库,后者为客户机数据库,采用该公司研制的PowerB

SymmetricDS 2.5.10发布 数据同步/复制软件

SymmetricDS 是一个基于Web的独立数据库的数据同步/复制软件.它采用Web和数据库技术,在实时的http://www.aliyun.com/zixun/aggregation/22.html">关系数据库和表格之间进行复制.该软件设计目的是用于大量的数据库规模,跨越工作低带宽连接,网络中断期间.它支持Oracle,MySQL,PostgreSQL,H2,HSQLDB,Derby,MS SQL Server,Firebird,IBM DB2,Informix和Interbase数

file-linux下的文件从一个电脑上拷贝到另外一个linux系统上时候有哪些数据一起被复制了?

问题描述 linux下的文件从一个电脑上拷贝到另外一个linux系统上时候有哪些数据一起被复制了? copy实现的机制是什么?拷贝一个文件的时候有哪些数据一起被复制了.(我的.sh文件拷贝到u盘上,然后又拷贝回来的时候,执行权限就丢失了) 解决方案 实现的机制不知道..肯定没有权限的,用chmod 加上就好. 解决方案二: 正常情况下是需要访问权限,读写权限的,但是拷贝到新的系统时可能当前系统没有执行权限,因为用户环境已经发生了变化.修改权限即可. 解决方案三: 缺省是不会复制的,你可以用tar

cas-单点登录系统怎样与其它应用之间数据同步?

问题描述 单点登录系统怎样与其它应用之间数据同步? 单点登录系统里有用户的基本信息可以修改.第次登录都修改数据库,不是太合理.是否有什么更好的解决方法? 解决方案 设计模式里面有一种 模式, 观察者模式,可能实现你要的结果.

关于win10系统删除游戏同步数据的问题。

问题描述 关于win10系统删除游戏同步数据的问题. 我的电脑以及周边设备(台式机,笔记本,lumia920)在第一时间升级了win10系统. 在玩age of empires:castle siege时发现所有设备均可以同步游戏进度.这点我认为很好.因为之前不会玩,走了些弯路,发展的不好,所以我想重头玩一次这款游戏,我尝试重装这款游戏,还是会自动载入之前的游戏进度,我尝试将三部设备上的此款游戏全部卸载重装.问题依旧.我想xbox或个地方应该有可以删除游戏进度的地方,可一直没有找到. 解决方案

异构系统,双向同步数据解决方案

问题描述 目前在做老系统的重新工作,目前已经完成了新系统的开发.但是两个系统需要并存上线一段时间,两边都有可能有查询和修改数据的操作,新老系统的底层数据库结构设计不同,需要两边互相同步业务数据,数据不允许丢失,且延迟不能太长,几秒内可以接受.板上各位前辈.大牛,有否成熟方案或成熟产品? 解决方案 思路貌似不大对头.新旧系统并用的目的,除了让用户慢慢转向新系统以外,还在于发现新系统的问题所在.所以,新老系统不应该有数据同步发生!在并用期间,应该是1. 用户需要双重作业.新系统做一遍,旧系统再做一遍