Tempdb 文件在同一驱动器上是固态的?

0 performance sql-server sql-server-2012 tempdb performance-tuning

我们目前在固态驱动器上有 tempdb(8 个文件)。

我们知道建议主 mdf 和事务日志 ndf 位于不同的驱动器上,以减少争用。tempdb 文件应该在不同的驱动器上以保持一致的原则,还是可以都在同一个驱动器上?

以下文章指出它们都在同一个驱动器上,但正在寻找背景技术解释。 对多个 tempdb 文件的建议

ALTER DATABASE [tempdb] ADD FILE ( NAME = N'tempdev2', FILENAME = N'G:\tempdb2.ndf' , SIZE = 12288000KB , MAXSIZE = UNLIMITED, FILEGROWTH = 0 )
GO
ALTER DATABASE [tempdb] ADD FILE ( NAME = N'tempdev3', FILENAME = N'G:\tempdb3.ndf' , SIZE = 12288000KB , MAXSIZE = UNLIMITED, FILEGROWTH = 0 )
....
Run Code Online (Sandbox Code Playgroud)

Tib*_*szi 5

有几个因素在这里起作用:

设备(在这种情况下是您的 SSD)一般可以处理多少 I/O ?假设 tempdb 的总数为 100%,日志 (ldf) 满足 30%。购买新的 SSD 并将 ldf 放在那里将为您提供更多的 IOPS,并且 ldf 的 30% 不会从 mdf/ndf 所在的驱动器中取出。

当我们有单个磁盘并且顺序和随机 I/O 之间存在巨大的性能差异时,“分离日志”很有意义。事务必须等待 ldf 记录写入磁盘(硬化)。ldf(几乎)只是顺序 I/O。将 ldf 隔离到单独的磁盘意味着磁盘处于下一个写入操作的位置,这意味着顺序 I/O(磁盘臂不移动)。SSD盘的顺序I/O和随机I/O有多大区别?我不知道,但可能很小。因此,这方面可能与现代磁盘子系统无关。

因此,IMO 归结为容量。您的 SSD 能否以合理的响应时间处理 I/O 负载?如果没有,那么您需要更多容量 - 更多 SSD 驱动器。


归档时间:

查看次数:

597 次

最近记录:

7 年,2 月 前