存储&在Linux中访问多达1000万个文件
我正在编写一个需要存储大约1000万个文件的应用程序。
它们目前以UUID命名,每个大约4MB,但总是相同。从/向这些文件读取和写入将始终是顺序的。
我正在寻找2个主要问题的答案:
1)哪种文件系统最适合这种情况。 XFS还是ext4?
2)是否有必要将文件存储在子目录下以减少单个目录中的文件数量?
对于问题2,我注意到人们已经尝试发现可以存储在单个目录中的文件数量的XFS限制,并且没有找到超过数百万的限制。他们注意到没有性能问题。在ext4下怎么样?
在人们做类似事情时,有些人建议将inode编号存储为文件的链接而不是文件的性能(这是在数据库索引中。我也在使用)。但是,我没有看到用于按inode编号打开文件的可用API。这似乎更像是在ext3下提高性能的建议,我不打算顺便使用它。
ext4和XFS限制是什么?从一个到另一个有什么性能优势,你能看到在我的情况下使用ext4而不是XFS的理由吗?
没有找到相关结果
已邀请:
2 个回复
购藏盗码韦
或
这样的目录上运行工具,那么您将很高兴将这些文件放在1,000到10,000个文件的可管理块中。 inode号是为了提高EXT文件系统的顺序访问性能。元数据存储在inode中,如果您不按顺序访问这些inode,则元数据访问将被随机化。通过以inode顺序读取文件,您也可以按顺序访问元数据。
屠创氓读叔