上传、存储和浏览数百万个小文件 - 最佳实践

上传、存储和浏览数百万个小文件 - 最佳实践

我正在处理一个每天生成数千个小文件的应用程序。然后,这些文件应上传到 NAS,并从 Windows 计算机的网络共享中进行浏览。

虽然该过程在技术上可行,但上传和浏览文件都非常非常慢 - 在 Windows 计算机上,浏览速度太慢而无法顺利进行。

这些文件的大小非常小 - 其中数百万个文件的大小远低于 100MB。

我想到了几种可能的选择来解决这个问题:

  • 压缩文件gz(尝试过,没有太大帮助)
  • .tar根据年龄将文件收集到多个存档(这会将它们分成大约 10 个存档)
  • 使用 ZFS 将它们上传到另一台 NAS(当前的 NAS 没有)。

运行此应用程序的服务器在 XFS 上运行,我无法将其重新格式化以使用其他任何东西。

虽然我不确定这些是否会有帮助,但我很好奇根据您的经验,处理这种情况的最佳方法是什么。

处理许多小文件时有哪些最佳实践?

如有任何反馈,我们将不胜感激。

谢谢!

更新:谢谢大家的建议。我将文件分组到 tar 存档中,并用 NFS 替换了共享,现在事情顺利多了。谢谢你!

答案1

不要将所有文件存储在一个目录中。无论您使用哪种文件系统,浏览速度都会非常非常慢。创建子目录或者可能创建两层或三层子目录。这取决于什么对您的特定情况有意义。

相关内容