在事务复制订阅服务器上启用延迟持久性是否安全?



在事务复制环境中,事务复制环境中的发布者 SQL Server 从应用程序接收频繁的插入和更新,订阅服务器 SQL Server 具有拉取复制作业,在订阅服务器上启用延迟持久性是否安全?

Microsoft表示事务复制不支持延迟持久性,但不清楚这是与复制中涉及的任何服务器有关,还是仅与发布者有关。

虽然启用延迟持久性始终存在风险,但为复制订阅者启用延迟持久性是否有任何额外的风险?如果它不受支持或存在额外的风险,有没有办法减少订阅者的 WRITELOG 等待?订阅服务器是报表服务器,由于应用程序在发布服务器上频繁插入和更新(在 345.1 小时的正常运行时间内等待 45.3 小时的 WRITELOG(,因此其头号等待始终是 WRITELOG。

首先,谁在乎? 写入日志等待由分发代理而不是用户承担。

其次,您是否考虑过复制的正常性能优化,即增强事务复制性能,特别是订阅流?

–订阅流参数可以大大提高聚合 复制吞吐量。它允许与订阅者的多个连接 并行应用批量更改,同时维护许多 使用单个线程时存在的事务特征。如果 其中一个连接无法执行或提交,所有连接 将中止当前批处理,并且代理将使用单个流 以重试失败的批处理。在此重试阶段完成之前,有 可能是订阅服务器上的临时事务不一致。 成功提交失败的批处理后,订阅服务器 恢复到事务一致性状态。

并行写入订阅服务器将提高复制吞吐量,并应减少聚合 WRITELOG 等待时间,因为并发事务可以在每个日志文件 IO 上大篷车。

它当然不受支持,因为分发服务器在失败后不会知道订阅服务器的正确状态。 因此,在计划外关闭后,您将缺少数据,并且不会有任何其他指示。 基本上,您必须在任何失败后重新初始化订阅者。

相关内容

  • 没有找到相关文章

最新更新