存储470万个二进制文件的最佳方式

时间:2015-08-26 04:47:30

标签: database file filesystems wikipedia ext4

我已经解析了整个英文维基百科并将每个解析的文章保存在一个单独的协议缓冲区文件中。每个文件都有一个唯一的ID(wikiid)。我现在有470万条解析文章,总大小为180 gb。我知道ext4可以处理这么多文件,但这是一个好习惯吗?或者我应该使用数据库?我不需要经常更新它。

1 个答案:

答案 0 :(得分:2)

将其保存为文件 - db的扩展和维护成本相对较高。 虽然您可能需要小心如何命名/存储它们 - 而不是一个包含所有4.7M文件的目录 - 有一个目录结构可以说是4个级别。预处理4.7 M文件以存储在目录结构中。说一个文件的ID为D1D2D3d4fewmorechars.txt - 所以现在将此文件存储在/D1/D2/D3/D4/D1D2D3D4fewmorechars.txt中。

或者另一种选择是使用诸如XFS,ext3 / 4之类的文件系统 - 它们使用目录索引技术,例如散列目录。 请查看此链接 - https://serverfault.com/questions/43133/filesystem-large-number-of-files-in-a-single-directory