gpt4 book ai didi

gfs - 谷歌文件系统 block 大小

转载 作者:行者123 更新时间:2023-12-01 12:39:25 24 4
gpt4 key购买 nike

为什么 GFS 中的 block 大小是 64Mb,但当文件大小不是 64 的倍数时可能会导致内部碎片

最佳答案

在他们的目标应用程序中,文件更有可能很大。 block 服务器可以执行大量顺序读取而不是许多小读取,从而提高吞吐量。

GFS论文中提到的三个原因:

  1. 降低 master 的负载。 GFS 的主服务器只提供 block 的元数据,不提供 block 内容。因此,如果 block 相对较大,将向主服务器发送较少的请求。
  2. 减少网络开销,它鼓励应用程序在单个 block 和持久网络连接上完成许多操作。应用程序还可以通过更少的请求获取数据。
  3. 减少存储在母版中的元数据大小。 GFS 的设计中只有一个主服务器。 block 的所有元数据都存储在主服务器的内存中,以减少延迟并提高吞吐量。大块意味着更少的元数据,更少的元数据意味着更少的元数据加载时间。

此外,出于局部性考虑,元数据分布在 block 服务器上而不是主服务器上。当主服务器启动时,它从所有 block 服务器加载元数据。因此,更少的元数据意味着更少的启动时间。

为了限制大块大小的影响,GFS 使用惰性空间分配,即如果文件大小只有 1 MB,GFS 只从文件系统请求 1 MB 而不是 64 MB,以避免由于浪费空间到内部碎片。

值得一提的是,GFS 的继任者 Colossus 将数据 block 大小从 64MB 减少到 1MB。

关于gfs - 谷歌文件系统 block 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26397123/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com