我目前正在寻找一个好的分布式文件系统。
这应该:
以下是我认为最有希望的四位候选人:
文件系统主要用于媒体文件(图像和音频)。有非常小和中等大小的文件(1 KB - 10 MB)。文件数量应该在几百万左右。
是否有关于性能,CPU负载,内存消耗和可扩展性的基准测试?您使用这些或其他分布式文件系统的经历是什么?
我不确定你的清单是否正确。这取决于文件系统的含义。
如果您的意思是一个可以在操作系统中安装并且可以被任何使用POSIX调用读取和写入文件的应用程序使用的文件系统,那么GridFS并不真正符合条件。这就是MongoDB如何存储BSON格式的对象。这是一个Object system而不是文件系统。
有a project来制作GridFS mountable,但它有点奇怪,因为GridFS没有像分层目录那样的概念,尽管路径是允许的。另外,我不确定如何在gridfs-fuse上进行分布式写入。
GlusterFS和Ceph是可比较的,是可分发的,可复制的可安装文件系统。你可以read a comparison between the two here(和followup update of comparison),但请记住,基准测试是由有点偏见的人完成的。你也可以看看this debate on the topic。
至于HekaFS,它是为云计算设置的GlusterFS,增加了加密和多租户以及管理UI。
OrangeFS,有人吗?
我正在寻找一个HPC DFS并在这里找到了这个讨论:http://forums.gentoo.org/viewtopic-t-901744-start-0.html
大量的好数据和比较:)
经过一番讨论,OP决定使用OrangeFS,引用:“OrangeFS。它不支持配额,也不支持文件锁定(尽管所有的i / o操作都是原子的,这样一致性保持没有锁定。)但它有效,并且运行良好且稳定此外,这不是一个通用的文件存储导向系统,而是HPC专用系统,针对并行I / O,包括ROMIO支持。所有测试都是针对条带数据分发完成的.a)没有配额 - 地狱配额。我放弃了它们无论如何,即使glusterfs支持不常见的基于uid / gid的配额,但目录大小限制,更像LVM工作.b)支持多个活动元数据服务器并且稳定。与专用元数据存储(单节点)相比,这提供了+ 50%的性能小文件,大文件没有显着差异.c)大数据块的优异性能(dd bs = 1M)。它受到本地硬盘总和的限制(不要忘记每个节点也作为数据服务器参与)速度和可用的网络带宽.CPU这种负载上的消耗是不错的,并且在客户端节点上约为单核的50%,在每个其他数据服务器节点上约为10%。 d)大型小文件的公平性能。为了测试我解开了linux内核3.1。它比OrangeFS(调整参数)花了5分钟,比NFSv4(调整好了)差不多2分钟进行比较。 CPU负载大约是客户端上单核的50%(当然,它实际上是在核之间分配),每个节点上大约有几个百分点。 e)支持ROMIO MPI I / O API。对于MPI感知应用程序来说,这是一个甜蜜的应用程序,它允许直接从应用程序使用PVFS2 / OrangeFS并行输入输出功能。 f)不支持特殊文件(套接字,fifo,块设备)。因此无法安全地用作/ home并且我使用NFSv4为该任务提供用户配额限制的小型家庭空间。虽然大多数分布式文件系统仍然不支持特殊文件。 “
我不知道您发布的其他系统,但我已经对本地存储上的3个PHP CMS / Frameworks与GlusterFS进行了比较,看看它在实际测试中是否比原始基准更好。可悲的是没有。
http://blog.lavoie.sl/2013/12/glusterfs-performance-on-different-frameworks.html