c – 在包含500,000个文件的目录中快速访问文件
发布时间:2020-12-13 19:11:16 所属栏目:Linux 来源:网络整理
导读:我有一个包含500,000个文件的目录.我想尽快访问它们.该算法要求我重复打开和关闭它们(不能同时打开500,000个文件). 我怎样才能有效地做到这一点?我原本以为我可以缓存inode并以这种方式打开文件,但是* nix没有提供通过inode打开文件的方法(安全性或其他一些
我有一个包含500,000个文件的目录.我想尽快访问它们.该算法要求我重复打开和关闭它们(不能同时打开500,000个文件). 我怎样才能有效地做到这一点?我原本以为我可以缓存inode并以这种方式打开文件,但是* nix没有提供通过inode打开文件的方法(安全性或其他一些方法). 另一个选择是不要担心它,并希望FS在文件查找目录中做得很好.如果这是最好的选择,哪个FS最好.某些文件名模式是否比其他文件模式更快?例如01234.txt vs foo.txt 顺便说一句,这完全在Linux上. 最佳答案
假设您的文件系统是ext3,如果启用了dir_index,则会使用散列B树索引您的目录.这将为您提供与您在应用程序中编码的任何内容一样多的提升.
如果目录已编制索引,则文件命名方案无关紧要. http://lonesysadmin.net/2007/08/17/use-dir_index-for-your-new-ext3-filesystems/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |