哈希目录结构:效率高吗?有多少文件和目录?

时间:2018-07-09 10:39:14

标签: linux directory storage

最近,我最近开始从事一个将处理数百万个文件的项目。要存储它们,我需要一个好的目录结构。

因此,起初,我尝试按它们的上传日期来存储它们,例如2016/06/24/file_name.ext。但是我很快意识到这是一个非常糟糕的主意。

搜索Google并阅读了一些文章后,我们发现了有关哈希目录结构的信息。

为了测试这个想法,我获取了一个文件并创建了该文件的MD5哈希。然后添加一些随机字符/盐以避免将来发生哈希冲突。

所以现在目录结构看起来像这样: a/94a/8fe/a94a8fe5ccb19ba61c4c0873d391e987982fbbd3.ext

现在,我的问题是:

  1. 此方法好/有效吗? (操作系统:Linux)
  2. 2步深度够吗?
  3. 每个/最后一个目录最多包含多少个文件?

我知道我的根目录将具有最大的16目录,并且每个目录都将包含16^3 = 4096。该4096目录也是如此。但是我无法计算目录a/94a/8fe/包含多少个文件?是16^7吗?

修改: 文件大小可以从10MB到15GB不等。这些文件存储在服务器中,该服务器充当主站点的临时服务器。

如果您认为此方法不好,建议我使用其他结构。

提前谢谢你们。英语不是我的母语,所以对任何语法错误感到抱歉。

如果它是重复的或已经讨论过,请删除此问题。

0 个答案:

没有答案