我有一个包含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/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。