具有大文件的 TempDB - 性能问题

TempDB with big files - Performance issue

我有一个包含 8 个文件的 TEMPDB 数据库,但它们的大小不同,因此不建议这样做,如下所示:

TempDB Files

我计划将大小调整为与推荐大小相同,每个大小为 20GB,TEMPDB 总大小为 160GB。我的问题是,如果 SQL 服务器正在执行需要 23GB 的操作,剩余的 3GB 是否会被拆分到另一个文件,或者文件会增长以容纳仅 1 个 tempdb 文件中的操作?

如果文件增长,而不是 160GB,我将以 184GB 结束,因为 3 GB..

My question is, if the SQL Server is executing an operation which need 23GB, will the remaining 3GB be split to another file or the files will grow to accommodate the operation in just 1 tempdb file?

SQL 服务器使用 proportional fill 算法来填充数据文件,这意味着它会尝试根据这些文件中可用 space 的数量将数据分散到所有文件中文件:空闲 space 最多的文件将接收大部分数据。

如果您的所有文件大小相同,并且您有 9 个文件,那么 23Gb 将平均分配给这 9 个文件,每个文件大约 2.5Gb。