如何加快在Linux上阅读固定的一组小文件?

如何加快在Linux上阅读固定的一组小文件?,第1张

概述如何加快在Linux上阅读固定的一组小文件

我有100000个1kb的文件。 而一个读取它们的程序 – 它真的很慢。 提高性能的最好办法是把它们放在虚拟硬盘上。 但这是一个脆弱的解决scheme,每次重新启动都需要重新设置虚拟磁盘。 (并且文件复制也很慢)

我的第二个最好的想法是连接文件和工作。 但这不是微不足道的。

有更好的解决scheme吗?

注意:我需要避免程序中的依赖,甚至Boost。

如何获取btrfs subvol的recursion快照?

PATH_NOT_FOUND和name_NOT_FOUND有什么区别

windows文件系统:当删除并重新创build时,文件的创build时间不会改变

如何不进入文件系统设备驱动程序的死锁?

在ext4上覆盖一个小文件primefaces?

如何:检查不可用networking共享时防止超时 – C#

有什么办法可以强制快速的文件系统的内容types确定

未能修改NTFS的主文件表(MFT)中的文件logging

linux文件系统基准testing的最佳实践

切丝:不适用于日志FS?

您可以通过存储磁盘上连续的文件进行优化。

在一个有足够空间的磁盘上,最简单的方法就是读一个tar归档文件。

除此之外,还有一个用于预读的debian软件包。

您可以使用该工具

剖析软件的正常运行

编辑访问的文件的lsit(由readahead检测)

然后,您可以使用该文件列表调用readahead(它将按照磁盘顺序排列文件,从而使吞吐量最大化并缩短寻道时间)

不幸的是,自从我使用这些软件以来,已经有一段时间了,所以我希望你们可以通过谷歌搜索软件包

这是我现在看到的:

sudo apt-get install readahead-fedora

祝你好运

如果你的文件是静态的,我同意把它们放在一起,然后把它放在RAM磁盘中。 直接从TAR文件中读取可能会更快,但可以测试。

编辑::而不是TAR,你也可以尝试创建一个squashfs卷。

如果你不想这样做,或者仍然需要更多的性能,那么:

把你的数据放在SSD上。

开始调查一些FS性能测试,从EXT4,XFS等开始…

总结

以上是内存溢出为你收集整理的如何加快在Linux上阅读固定的一组小文件?全部内容,希望文章能够帮你解决如何加快在Linux上阅读固定的一组小文件?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1244167.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存