我很惊讶没有人谈到底层技术。大多数较新的大型闪存驱动器使用多级单元(MLC)闪存技术,而较旧的驱动器使用单级单元(SLC)。使用基于SLC的磁盘,小文件性能要好得多。
MLC闪存驱动器更加密集,驱动器固件通过使用非常大的块来存储数据来处理密度(不是传统主轴磁盘将使用的典型512扇区块)。块大小可以从32 KiB一直到1 MiB。此体系结构会破坏小文件写入性能。
简而言之,SLC闪存驱动器没有这个问题。不幸的是,SLC驱动器更昂贵,密度也更低(通常小于4 GB)。
你可以做很多文件系统优化来优化MLC的大块大小,但是由于通常你不知道闪存磁盘正在使用的块大小(它们总是报告512字节扇区,因此它需要很多工作)。兼容性原因)。我不了解Windows,但是对于Linux,你可以使用ext4(stride和stride-width)和XFS(su和sw)来优化写入。一般来说,找到最佳参数完全是经验性的 - 你需要进行实验,直到找到最有效的方法。
我不确定你是否仍然可以在市场上找到基于SLC的闪存驱动器(MLC便宜得多),但我2007年购买的Corsair Flash Voyager 4 GB我相信是SLC而不是MLC,而且是小文件性能非常出色(当时检查它的基准)。