2008-09-04 87 views
4

在我工作的业务中,我们讨论了减少主数据库读取负载的方法。SQL Server 2005单向复制

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

  • 应用读取从站
  • 应用程序写入主
  • 主要更新从自动

什么是这种方法的主要优点和缺点?

回答

2

几个缺点:失败的

  • 2点
  • 应用程序逻辑将不得不考虑从二级立即以书面的东西,然后读它,因为它不会提供之间的延迟数据库

我使用了一个策略是关键报告数据从发送到辅助数据库每晚去正常化的道路上它,这样健壮的查询可以在数据库上运行,而不是锁定表和窃取资源OLTP服务器。我没有使用任何正式的数据仓库或复制工具,而是在没有最新数据的情况下确定问题查询正常,并在专用于这些查询的辅助服务器上创建数据结构。

有一定优点的“复制所有”的方法:

  • 您可以在二次运行任何即席查询,因为它所有的数据
  • 如果主服务器死机的,您可以快速重新指定辅助接管
1

我们使用的是单向复制,但不是来自同一个应用。我们的应用程序正在读写主数据库,数据与replca数据库同步,并且报告工具正在使用此副本。

我们不希望我们的应用程序从不同的数据库中读取数据,所以在这种情况下,我会建议在主数据库上使用文件组和分区。使用文件组(特别是在不同的驱动器上)以及文件和索引的分区可以帮助提高性能。