代码改变世界

SQLServer数据库同步准实时解决方案

2009-05-13 17:02  周国选  阅读(7014)  评论(0编辑  收藏  举报
1. 需求
     1)如何将在线运营的SQLServer数据库数据及时同步到另外一个SQLServer数据库。
     2)数据仓库系统的数据抽取会对源系统造成巨大压力,严重影响性能和响应速度。如何将生产数据快速抽取到历史数据仓库,改善业务系统的性能。
     3)分布式数据库,如何将分部的数据库数据复制到总部数据库,以利于总部汇总统计。
这些业务应用中常见的SQLServer数据库同步需求,都需专业的复制系统来完成。

2. 同步方案
   浪擎·镜像系统简介
    浪擎·镜像系统是业界成熟的应用系统复制解决方案,无需源和目标硬件规格或配置相同,具有准实时复制、系统和网络资源占用少、应用方式灵活等特点。浪擎·镜像系统支持SQLServer数据库、Oracle数据库、文件系统等应用系统的准实时同步和备份容灾。

    产品组件
     SQLServer 数据库镜像代理(For SQLServer 2000、2005)。
     镜像存储服务器(For Windows 2000、2003)。

    复制原理
     浪擎·镜像系统 SQLServer数据库镜像代理实时监控源SQLServer数据库和捕获其变化事务,并将捕获结果传输到目标SQLServer数据库,再通过存储进程执行到目标SQLServer数据库。
     目标SQLServer处于运行状态,能读能写,运行的目标系统保证了业务数据的一致性和完整性。系统不受操作系统、硬件平台及存储设备的影响,且无需源和目标保持一致。

    应用部署


部署架构图

     在源SQLServer数据库服务器上安装SQLServer镜像代理;在目标SQLServer数据库服务器上均安装镜像服务器。
系统管理员可通过管理端配置镜像策略、全量和增量作业等。

    配置策略:第一次运行基准同步后,以后实时地将源SQLServer数据库数据复制到目标数据库。
    第一次运行基准同步:对SQLServer可先进行数据库备份,然后在备用SQLServer上进行恢复即可;对于文件系统则进行“完全镜像”将所有文件复制到目标服务器上。
    SQLServer准实时增量镜像:镜像代理的监控事务变化,并实时捕捉数据库操作,再将该操作传输给镜像服务器。镜像服务器收到后,提交给备用SQLServer服务器,完成一个镜像流程。

 

    SQLServer同步技术参数

技术参数 说明
复制原理 捕获SQLServer的增量事务进行复制
复制粒度 数据库记录
复制DDL语言 复制数据库定义语言,如:
1) 增加、删除、修改表
2) 增加、删除、修改字段定义
3) 增加、删除、修改触发器、存储过程
复制DML语言 复制应用程序提交的数据
保存事务日志 系统保存捕获的事务日志
源与目标硬件规格要求 无需一致
网络带宽占用 远小于存储层复制
复制时延 异步复制,秒级延时
复制最大距离 无限制
对系统性能的影响 源系统CPU占用率不超过5%
支持应用方式 一对一、一对多、多对一
事务完整性 完整、一致
目标应用系统状态 运行状态,能读能写
复制方向 单向,从源至目标
支持过滤 可设置过滤条件
支持版本 SQLServer 2000、SQLServer 2005