使用分布式文件系统时如何提高read/write速度?
How to improve read/write speed when using distributed file system?
如果我浏览分布式文件系统 (DFS) 共享文件夹,我可以创建一个文件并观察它几乎立即复制到另一个办公室 DFS 共享。即使通过宽带链接访问共享也非常即时。
我想提高 read/write 速度。非常感谢任何提示。
在大多数文件系统中,速度因素是:访问类型(顺序或随机)和块大小。硬件性能也是影响 MooseFS 的因素。您可以通过提高硬盘驱动器性能(例如,您可以切换到 SSD)、网络拓扑(网络延迟)和网络容量来提高速度。
改进硬件总是有帮助的,但请记住,在任何分布式文件系统中,父主机的性能都会产生影响,而且在许多情况下您无法触及硬件,您需要优化网络或调整系统以适应最适合您当前的提供商架构。
这方面的一个例子,主要是在虚拟化环境中,是禁用网卡 TCP segmentation offload 的情况,ifconfig_DEFAULT="SYNCDHCP -tso"
,它会显着提高吞吐量,但代价是更多 CPU用法。
根据您想走多远,您可以从最底层开始所有这些优化:
- 创建您的自定义精益 kernel/image
- test/benchmark 网络设置 (iperf)
微调您的 FS,如果使用 ZFS,这里有一些指南:
http://open-zfs.org/wiki/Performance_tuning
关于 moosefs
有 some threads 关于块大小如何影响 I/O 性能以及在许多情况下如何通过禁用缓存允许块 > 4k。
Mainly for FreeBSD we added special cache option for MooseFS client
called DIRECT.
This option is available in MooseFS client since version 3.0.49.
To disable local cache and enable DIRECT communication please use this
option during mount:
mfsmount -H mfsmaster.your.domain.com -o mfscachemode=DIRECT /mount/point
如果我浏览分布式文件系统 (DFS) 共享文件夹,我可以创建一个文件并观察它几乎立即复制到另一个办公室 DFS 共享。即使通过宽带链接访问共享也非常即时。
我想提高 read/write 速度。非常感谢任何提示。
在大多数文件系统中,速度因素是:访问类型(顺序或随机)和块大小。硬件性能也是影响 MooseFS 的因素。您可以通过提高硬盘驱动器性能(例如,您可以切换到 SSD)、网络拓扑(网络延迟)和网络容量来提高速度。
改进硬件总是有帮助的,但请记住,在任何分布式文件系统中,父主机的性能都会产生影响,而且在许多情况下您无法触及硬件,您需要优化网络或调整系统以适应最适合您当前的提供商架构。
这方面的一个例子,主要是在虚拟化环境中,是禁用网卡 TCP segmentation offload 的情况,ifconfig_DEFAULT="SYNCDHCP -tso"
,它会显着提高吞吐量,但代价是更多 CPU用法。
根据您想走多远,您可以从最底层开始所有这些优化:
- 创建您的自定义精益 kernel/image
- test/benchmark 网络设置 (iperf)
微调您的 FS,如果使用 ZFS,这里有一些指南:
http://open-zfs.org/wiki/Performance_tuning
关于 moosefs
有 some threads 关于块大小如何影响 I/O 性能以及在许多情况下如何通过禁用缓存允许块 > 4k。
Mainly for FreeBSD we added special cache option for MooseFS client called DIRECT. This option is available in MooseFS client since version 3.0.49. To disable local cache and enable DIRECT communication please use this option during mount:
mfsmount -H mfsmaster.your.domain.com -o mfscachemode=DIRECT /mount/point