文件夹中文件最佳重新分区的良好做法

Good practice on optimal repartition of files in folders

我有一些名称为编号的文件,我想以优化的方式放入文件夹中,例如每个文件夹的文件数量大致相同等。

在数字的模数之后选择文件夹是个好习惯吗?模数和除法一样昂贵吗?需要多少条指令?

更准确地说,我想使用估计文件数平方根的模数。

Number of files > 5'000'000

您可以使用任何您喜欢的散列解决方案,但要遵守通常的限制条件,其中最重要的是所有散列值的可能性相同。如果文件按顺序编号,模数可能完全没问题。

即使您使用加密散列(不推荐),与文件系统创建文件所需的成本相比,成本也是微不足道的。模数很好。

但您可能还想考虑人类用户。他们(您)将如何找到文件?按范围划分更容易管理。然后你可以通过范围的开头命名每个目录,找到正确的目录是一个简单的任务。

当您使用数字作为文件名时,有时您会希望 zero-padded 它们的长度都相同,以便字母顺序和数字顺序相同。我强烈建议你从一开始就做好这件事。注意到问题的最常见时刻是需要批量检索备份时。