我将把文件存储在我的服务器中的一个文件夹中。文件数量将超过200 万. 每个文件大小介于5MB – 100MB。
什么样的文件系统可以很好地处理那么多的数据?
我知道 XFS 可以处理非常大的单个文件,它可以处理大量文件吗?
答案1
XFS 可以处理这种情况,但如果您针对用例进行规划,它会处理得更好。如果操作系统需要遍历的 inode 较少,则访问该数据(STAT 和 OPEN 操作)会更快。如果您在给定目录中的文件/目录少于 30K,则无需担心此优化。
但是,如果您要增大 inode 大小,则可能需要考虑使用选项-i size=512
来增大 inode 大小。这样每个 inode 可以容纳更多目录条目,因此操作系统需要浏览更少的条目才能遍历树。考虑到如今的 SSD,这不会比过去那些老旧硬盘时代改善太多;但这是一个值得考虑的优化。
我曾经管理过一个基于 XFS 的文件系统,里面有超过 2000 万个文件,平均文件大小约为 100KB。我设计这个特定的文件系统是为了处理超过 1 亿个文件,当我离开那家公司时,它正朝着这个目标前进。这是我在此处描述的系统的产品版本:高目录与文件比率对 XFS 的影响
XFS 是最佳选择吗?很难说。但我比其他人更信任它。ext4对于您描述的大型文件系统。文件系统也许能够接受它,但更保守的系统运营商派系并不认为它已经准备好投入生产。