我们看到一个文件系统上的性能问题,这个文件系统包含了相对较小(通常为几十kb)〜150 K目录的大约500 M个文件。 文件访问主要是读取和写入相当罕见。 文件大多存储在散列的目录层次结构中,每个目录有大约30K个文件,但在某些情况下,一个目录中最多可能有500个K文件。
服务器共享文件系统到〜10台客户机。
获取目录列表通常很慢,有时候甚至在本地读取文件的绝对path。
这是运行Ubuntu 12.04.4(内核:3.8.0 / x86_64)的物理服务器,我们在硬件RAID-6卷上使用ext4。
这种情况下推荐的文件系统设置是什么?
当你有这样的问题时,你必须:
使用最新稳定内核的最新操作系统的稳定版本。
这种情况下推荐的文件系统设置是什么?
有一个特别适合这种情况的文件系统(例如ext4,xfs,btrfs,…)吗?
在安全性方面,我认为ext4是最好的select。 在阅读性能方面RaiserFS(/ 4)可能会更好:
http://www.phoronix.com/scan.php?page=article&item=linux_39_fs&num=1
文件系统为数以百万计的小文件
我们应该使用什么样的RAIDconfiguration(例如sw和hw,RAID级别等)?
你需要:
每个RAID级别,有可能做并行操作将是不错的select,例如RAID 10(Linux软件突袭)有很多调整选项。
怎么样的文件共享设置(技术[如NFS与竞争],configuration,…)?
我不能在这里给你号码,文件共享也是相当广泛的术语。 在处理大量文件(而不是FTPS – 因为每次传输的TLS协商需要一定的时间)之前,我对FTP有很好的使用经验,所以更好地传输stream量。 在处理小文件时,似乎协议的灵活性(可以做什么)和协议开销(需要多less时间,数据包中的空间)之间的最佳划分。