我应该如何在 SQL Server 上为 BI 配置配置这些磁盘?

Pre*_*gha 8 disk-structures business-intelligence sql-server-2008-r2

假设恒定内存 (32gb) 和 CPU (4),2 x 磁盘阵列,我有以下磁盘

  • 2 x 150 (10k)
  • 6 x 150 (15k)

它们都是本地磁盘。

我的要求

  • 我的数据库是 350gb 并设置为默认的 10% 增长
  • 我的操作系统和 SQL Server 是 Server 2k8R2(C:驱动器操作系统 + 页面 + 应用程序 = 55Gb)
  • 日志要求约为 70gb,并设置为默认 10% 的增长,并定期被截断
  • 我的 TempDb 目前约为 12GB,并设置为默认 10% 的增长

我的问题是我试图了解最好将 TempDB 和操作系统以及日志放在哪里。我的经验仅限于这两个的最佳配置

这不是一个在线交易系统。它有大量数据写入(新数据 + 索引重建/重组),然后大量数据读取(我估计约为 50/50)处理了大约 13 个小时,然后就安静了。

我的理解是,与日志相比,在正常处理期间大量使用 TEMPDB。

我的想法如下

  • 2 x 150g (15k) Raid 1 = 150g for OS + TempDB
  • 2 x 150g (10k) Raid 1 = 150g for LOG(注意这里的磁盘较慢)
  • 4 x 150g (15k) Raid 5 = 150g 数据

这听起来是个好主意吗?如果需要,我可以交换 Log + TempDB。

由于分页问题,我是否违反了基本规则,例如永远不要将 TempDB 放在操作系统磁盘上,或者永远不要将日志放在比数据慢的磁盘上

编辑:

我们在系统上还有一个 SSAS,最终用户只能访问 Cube。上面的 50% 读取是基于处理 SSAS 数据库所需的时间。

Mar*_*ith 7

2 * 10k RAID1 用于操作系统,6 * 15k RAID10 用于其他一切。老实说,有这么多磁盘 1 阵列是最安全且通常最快的赌注。

如果您有时间进行测试并拥有真实的、可重复的、可测量的工作负载,那么一定要在操作系统驱动器上使用您的 tempdb 进行测试运行(警告:限制 tempdb 文件增长以确保您不会影响操作系统) . 另一方面,如果时间允许,您可能会看到数据加载和维护的适度改进,而不是日志在那里,因此值得一两次测试运行。

  • 如果您可以测试和衡量您的工作负载的各种场景,那么它可能会被证明是正确的。当/如果你不能,一个尽可能快的存储池将比在黑暗中射击更好地吸收肿块和颠簸。如果您想四处交流想法,请随时进入 [chat](http://chat.stackexchange.com/rooms/179/the-heap)。有几个比我拥有更多 SSAS 经验的常客可能会建议您确定如何/是否应该从数据库中拆分多维数据集。 (2认同)