为文件共享使用较大的NTFS磁盘分配大小是否有所不同?


9

我正在使用NTFS格式化驱动器,该驱动器将专门用作文件共享,以便用户集中存储其文件。文件可能很大(10到100兆字节)。

有人建议使用比默认4k(例如64k)大的分配单元大小将使其性能更好。我想我了解它的基本原理,但是我不确定它在实践中是否有效。这是否真的会有所作为,或者这可能会导致更多问题而不是解决?

Answers:


9

使用较大的文件时,较大的分配大小将提高性能。如果它们都是大文件,则可能需要将分配大小增加到32KB或64KB。

请注意,分配单元的大小越大,浪费的磁盘空间就越大。无论卷上存储的文件大小如何,都是如此。如果分配单位大小为64K,而您保存的文件为50K,则将浪费14K。如果保存一个800K的文件,它将被分为13个块,但是第13个块将只有32K的数据,从而浪费了32K的磁盘空间。

可在以下位置找到用于NTFS驱动器性能调整的资源:http : //www.windowsdevcenter.com/pub/a/windows/2005/02/08/NTFS_Hacks.html

祝你好运,任何其他问题都请不要犹豫。

利马


请记住,这将导致文件使用更多的磁盘空间(会将文件大小四舍五入到最接近的完整块),因此,如果磁盘空间有问题,或者文件也较小,则应谨慎考虑。
凯瑟琳·麦金尼斯

1
观察到“文件[将]使用更多的磁盘空间”是绝对正确的,但是专注于是否会存在较小的文件而不是集中在卷上将存储多少文件并不准确。由于每个文件都会四舍五入到最接近的块大小,无论该文件的总大小如何,文件的绝对数量都会导致大量的浪费空间。
我说恢复莫妮卡2014年

1
要添加到@Twisty的评论中:预期的浪费空间=预期的文件数*分配单位大小/2。因此,如果我选择64k(65,536字节)的分配单位大小,并且我的文件都很大,那么我只有3,000个,我预计会浪费3,000 * 65,536 / 2 = 98,304,000字节,约合98 mb。这种浪费被称为内部碎片(感谢,必需的CS类)。
杰克

5

设置分配块大小可以提高访问大文件的性能,但是不太可能显着提高网络文件共享的性能,因为其他瓶颈将使任何本地利益相形见war。

有一些注意事项:

  • 文件将占用更多空间,因此,如果您有很多小文件,这将是一个问题
  • 由于系统一次读取整个块,因此访问小文件可能会变慢(因此,如果使用64Kb块,则为1Kb文件读取64Kb),尽管这可能不会引起注意,这取决于驱动器的预读行为
  • 您可能会发现,当访问模式非常随机和/或有许多并发进程通过网络访问资源时,它实际上会损害性能。

我的直觉表明您不会在必须使用的情况下注意到很多有益(或不利)的性能,而我的直觉很大,因此我不倾向于对此争论,因此我会坚持使用较小的群集大小以提高空间使用效率。


0

我认为总体思路是,更大=更好的性能是以磁盘空间为代价的。

在线上有一个嗡嗡声,更改默认大小将导致编码错误的磁盘实用程序出错或失败,因此,如果您计划不计划备份,则可能要牢记这一点;-)


1
除无法使用标准工具执行的灾难恢复操作外,请远离非标准磁盘实用程序。计划不计划备份正在计划灾难。
–carpy
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.