我需要在使用NTFS的Web服务器上存储大约600,000张图像。我最好将图像存储在子文件夹中的20,000个图像块中吗? (Windows Server 2008)
我担心在图像检索过程中会产生操作系统开销
答案 0 :(得分:6)
去吧。只要你有一个外部索引,并且每个文件都有一个直接的文件路径,而没有列出目录的内容,那么你没事。
我的文件夹大小超过500 GB,文件夹超过400万(文件夹和文件更多)。我总共有大约1000万个文件。
如果我不小心在Windows资源管理器中打开此文件夹,它将被卡在100%的CPU使用率(对于一个核心),直到我终止该进程。但只要您直接引用文件/文件夹性能很好(意味着我可以访问任何这些1000万个文件而没有开销)
答案 1 :(得分:3)
根据NTFS是否有目录索引,它应该可以从应用程序级别开始。
我的意思是,以编程方式按名称,删除,重命名等打开文件应该可以很好地工作。
但问题始终是工具。第三方工具(例如MS资源管理器,您的备份工具等)可能很糟糕,或者至少在每个目录中有大量文件时无法使用。
任何进行目录扫描的东西都可能很慢,但更糟糕的是,其中一些工具的算法很差,每个目录的文件数量甚至不能达到适度(10k +)。
答案 2 :(得分:1)
NTFS文件夹存储一个索引文件,其中包含指向其所有内容的链接。对于大量图像,该文件将会增加很多并对您的性能产生负面影响。所以,是的,仅凭这个论点,你最好将子块存储在子文件夹中。索引中的碎片很痛苦。