小编Mar*_*tin的帖子

ext4 中深层嵌套文件夹的“成本”是多少?

当我需要进行某些通配符匹配时,我遇到了单个目录中数十万个文件的性能问题。从我的应用程序的角度来看,一个简单的解决方案是将文件放在深度嵌套的文件夹中。

整个层次结构中文件夹总数的预期上限为 9^30。可以假设永远不会达到这个限制(见下面的评论)。文件夹的数量只会随着文件的添加而增加。

问题:当在 ext4 文件系统上创建大量文件夹时,从文件系统的角度来看是否有任何影响?例如消耗了多少空间。一个文件夹只包含另一个文件夹?我会因为元数据过多而遇到麻烦吗?

(从我的应用程序的角度来看,与更简单的层次结构中的基于哈希的文件夹相比,上述结构具有某些优势,我知道组织数据的“更好”方法)

filesystems ext4 directory-structure

11
推荐指数
2
解决办法
3043
查看次数

stat() 会导致实际的硬盘访问还是信息会被缓存?

在优化我的 PHP 操作码缓存时,我尝试交替 stat 设置(= 操作码缓存检查文件是否通过 修改stat(),然后再使用缓存结果)。但我没有发现我的应用程序基准有任何差异。正在使用的文件系统是ext4通过noatime选项安装的。

假设stat()stat()使用的元数据保存在内存中是否正确,或者使用 时是否总是存在某种硬盘交互?

linux filesystems

3
推荐指数
1
解决办法
1513
查看次数

标签 统计

filesystems ×2

directory-structure ×1

ext4 ×1

linux ×1