假设恒定内存(32gb)和CPU(4),2个磁盘阵列,我有以下磁盘
- 2 x 150(10k)
- 6 x 150(15k)
它们都是本地磁盘。
我的要求
- 我的数据库是350gb,并设置为默认10%增长
- 我的OS和SQL Server是Server 2k8R2(C:驱动器OS +页面+应用程序= 55Gb)
- 日志要求约为70gb,默认设置为10%的增长,并且通常会被截断
- 我的TempDb当前约为12gb,默认设置为10%的增长
我的问题是我试图了解将TempDB和OS以及Log放在哪里的最佳方式。我的经验仅限于这两个的最佳配置
这不是一个在线交易系统。它具有大量的数据写入(新数据+索引重建/重组),然后具有大量的数据读取(我估计约为50/50),处理大约13个小时,然后安静下来。
我的理解是,与日志相比,TEMPDB在正常处理期间被大量使用。
我的想法是以下
- 适用于OS + TempDB的2 x 150g(15k)突袭1 = 150g
- 2 x 150g(10k)RAID 1 = 150g for LOG(请注意此处的磁盘较慢)
- 4 x 150g(15k)突袭5 = 150g用于数据
听起来像个好主意吗?然后,如果需要,我可以交换Log + TempDB。
我是否违反基本原则,例如由于分页问题而从不将TempDB放在OS磁盘上,或者也许从不将日志放在比数据慢的磁盘上?
编辑:
我们的系统上也有一个SSAS,最终用户只能访问多维数据集。上面的50%是根据处理SSAS数据库所需的时间得出的。