硬盘空间会影响性能吗?

几年前我看到一个演示文稿说硬盘驱动器在它们出现时具有最佳性能. 50%已满,而对于繁忙的服务器,您希望保留驱动器< 80%使用.原因是轨道是从里到外编写的,内部轨道的访问速度尤其是随机访问速度比外部轨道快.旋转延迟较低. 另一方面,对于今天的缓存,有时在SQL Server等产品中预读,更长的外部轨道,没有跟踪移动的轨迹,可能是否定因素. 这是真的?是否有理由在现代硬盘系统上保持空间? Windows与* Nix不同吗?
最佳答案
根据我的经验,担心外线跟内线不再值得努力.当考虑到影响其他性能的事物(RAID,缓存,文件系统碎片等)时,性能差异太小.

但是,要直接回答您的问题,仍然有理由在现代硬盘(特别是旋转(非SSD)磁盘)上保留相当大的可用空间,这就是文件碎片和寻道时间.当有足够的可用空间时,可以按顺序写入文件,允许在没有多次搜索的情况下读取文件.这使得文件的检索速度比磁盘头必须遍历以获取文件的小块要快得多.

这篇文章/博客文章更多地针对文件碎片而不是磁盘性能,但它提供了我发现的文件碎片的更好解释之一以及为什么可用的可用空间会影响它:Why doesn’t Linux need defragmenting?

磁盘填满的越多,文件(特别是大文件)就会变得多碎,读取和访问速度也越慢.这也是Linux文件系统保留一定百分比空间(通常为5%)的原因,该空间仅对root用户可用.这个保留空间对于紧急情况非常有用(因此用户无法完全填满磁盘并导致问题),但主要是为了在磁盘填满时减少磁盘碎片.在处理非常大的文件时,如数据库中常见的那样,可以通过预分配数据文件来减少碎片问题(假设数据库(或其他应用程序)支持它).

在这些非常大且相对便宜的磁盘的日子里,很少有理由让文件系统达到容量.在性能很重要的情况下更是如此.

转载注明原文:硬盘空间会影响性能吗? - 代码日志