生产环境中的SQL Server体系结构

时间:2014-04-18 09:39:56

标签: sql sql-server sql-server-2008

我想了解生产环境中SQL Server架构的最佳方法。

这是我的问题:

我有数据库,平均每秒在各种表中插入约20,000条记录。

我们也为此报告实施了报告,现在发生的事情是用户搜索报告,其他应用程序的性能下降。

我们已实施

  • 表格分区
  • 索引
  • 以及所有其他需要的东西。

我的问题是:有人可以建议一个架构,它有不同的SQL Server数据库用于报告和应用程序,每次在主SQL Server中输入新数据时,它们都可以在线同步吗?

有些像Master和Slave Architecture的东西。我了解Master和Slave架构,但需要更多地了解它。

我们的主表有大约4千万行(表格分区完成)

1 个答案:

答案 0 :(得分:1)

在SQL Server 2008R2中,您可以使用数据库镜像和复制,这将使两个数据库保持同步。

对于大容量报告,对OLTP有效的模式不太可能有效。 '直播'和'报告'数据库应具有不同的模式,ETL过程将数据从一个移动到另一个。我想与业务部门协商报告数据库需要的同步程度。如果报告正在处理大量数据,那么它们将需要一些时间来运行,因此不会注意到数据复制的延迟,我建议。 在extremis 中,您可以使用Service Broker构建解决方案,以便在报表服务器上移动数据并进行处理,以便将其分发到报表中。

您引用的数字(每秒20,000次插入,最大表中的4,000万行)表明记录不会长时间驻留在数据库中。执行DELETE会有很大的负担。在高峰时段优化这些可能足以解决您的问题。