SQL Server 高可用性(七)复制

  复制是一个开发范畴的技术,但是也可以像日志传送一样作为高可用技术的一个后备选项。


一、复制的拓扑

wKiom1OxYJCSlDs3AABFVO2RDGA093.gif


二、复制的冲突处理

  在执行复制时,源数据库与目标数据库都是敞开式的,因此在写入记录时可能发生冲突。为解决冲突,常用的方法有以下两种:

1. 合并复制

  合并复制允许存在冲突。当冲突发生时,合并复制将比较这些记录的时间戳,仅保留最新的记录(时间戳最后的那条记录)。


2. 专用的写入区

  一种方式是将read请求随机发送给任意一个数据库,而将write指定只写入发布服务器。

  另一种方式是设置专用的写入区,所有写入被事先隔离,从而避免冲突。例如,一个table被分割成3个table,分别保存3个分公司的数据。



三、复制在负载均衡中的应用

  在一些稍微容忍数据同步存在延迟的场合,复制可以作为负载均衡的手段。这种实现方法,其实质是通过复制实现分布式数据库。

  例如:工厂的流水线生产过程中的数据采集,可以根据车间与流水线的分布情况,部署多套SQL Server,然后通过复制实现数据的分布式存储、查询。

wKiom1OxYx7C1X0lAAIyYDMeH_0324.jpg


本文出自 “我们一起追过的MSSQL” 博客,谢绝转载!

你可能感兴趣的:(sql,高可用)