并行、分布式、传统文件系统

并行、分布式、传统文件系统

我试图在非常基础的层面上理解这三个文件系统之间的差异。

  • 分布式文件系统:HDFS
  • 并行 FS:光泽
  • 传统文件系统:ext4/ext3/NTFS/FAT等

我想知道这三个文件系统之间的基本概念差异是什么。我的大部分知识都是传统文件系统,即ext3/4超级块,索引节点等

  • 如果基于 MPI 的进程(np=8)尝试从文件系统读取文件或写入文件 A,那么这些上下文中的文件访问机制有何不同
  • 文件在这个环境中是如何存储的?即文件 A 将被分割到多个磁盘上,或者文件 A 将在存储上有冗余副本。或者更简单的场景是多个用户打开一个word文档然后保存它,那么这3种场景中的回写/同步有何不同

到目前为止,我已经形成了一些概念:-

  • 在本地文件系统中,存储物理安装在服务器/节点上。
  • 在并行文件系统中,磁盘在多个节点上共享(安装),并且,
  • 在分布式文件系统中,多个节点有多个本地存储,但它们都通过某种机制同步。

如果我有 A,B 是工作站,C,D 是磁盘:

  1. 如果 C 是身体上的安装在 A 上并格式化为 ext4 那么它是传统文件系统。
  2. 如果 C 物理安装在存储服务器 Z + C 网络安装 (NFS) 在 A 和 B 上,那么这就是集群 FS。
  3. 如果C物理安装在A上,网络安装在B上,D物理安装在B上,网络安装在A上。那么这就产生了分布式FS。

尽管一些答案声明元数据和数据位于并行文件系统中的单独服务器上,但在这里我也想了解分布式文件系统中如何管理元数据?

答案1

AFAICS,术语“并行文件系统”是营销BS,它只是意味着文件系统驱动程序是基于多个进程可以同时写入文件的理解而构建的,因此使用适当的块分配策略将文件连续写入不同的文件磁盘的各个部分,而不是将它们碎片化在一起。 20 年来,这几乎一直是 UNIX 系统上的标准做法。

集群文件系统是一种设计用于存储在 SAN 上的文件系统,其中“磁盘”(实际上可能是在 SAN 磁盘盒的硬件中实现的 raid 阵列)可直接由多个主机访问(通过共享 SCSI 连接),因此可以同时由多个主机同时安装,因为文件系统驱动程序特别注意不要互相干扰。这与使用 NFS 或 CIFS 通过网络共享常规文件系统完全不同。

分布式文件系统更像是网络文件系统,但它内部与多种的服务器以对用户基本上透明的方式在它们之间分配负载。一个例子是 afs。

答案2

NAS和之间的差异SAN正在被删除。目前正在进行讨论。我是站在他们一边的,他们之间没有区别。

安装它们的方式不再不同。通过询问诸如传统文件系统之类的问题,可以更容易地理解关注功能优势;它是分布式的还是集群式的?您可能会对分布式和集群文件系统提出相同的问题,并且存在分布式集群文件系统。

是什么使文件系统成为分布式或集群化的问题可以让您摆脱短名称的混乱。您在集群系统中所期望的是会话共享和同步。这不是我从当前集群文件系统中得到的情况,它们更像是异步的,因为 CAP 有限制。

相关内容