SQL Server 2005单向复制

时间:2020-03-05 18:47:32  来源:igfitidea点击:

在我从事的业务中,我们正在讨论减少主数据库读取负载的方法。

建议的一种选择是从主数据库到从数据库进行实时单向复制。然后,应用程序将从从属数据库读取并直接写入主数据库。所以...

  • 应用程序从从设备读取
  • 应用写入主数据库
  • 主更新自动从属

此方法的主要利弊是什么?

解决方案

回答

一些缺点:

  • 2点故障
  • 应用程序逻辑必须考虑写入和读取之间的延迟,因为它将无法从辅助数据库中立即获得

我使用的一种策略是每晚将关键报告数据发送到辅助数据库,然后对其进行规范化,以便强大的查询可以在该数据库上运行,而不必锁定表并从OLTP服务器上窃取资源。我没有使用任何正式的数据仓库或者复制工具,而是确定没有最新数据就可以的问题查询,并在辅助服务器上专门为那些查询创建数据结构。

"复制一切"方法肯定有优点:

  • 我们可以在辅助服务器上运行任何即席查询,因为它具有所有数据
  • 如果主服务器死了,则可以快速地将辅助服务器重新用作接管服务器的用途

回答

我们正在使用单向复制,但不是从同一应用程序复制。我们的应用程序正在对主数据库进行读写,数据已同步到replca数据库,并且报表工具正在使用此副本。

我们不希望我们的应用程序从其他数据库读取,因此在这种情况下,我建议在master数据库上使用文件组和分区。使用文件组(尤其是在不同的驱动器上)以及对文件和索引进行分区可以极大地提高性能。