云原生与弹性计算 / cloud-native-distributed-computing
Hard

分布式计算

Where is my data from?

云原生分布式

本题为开放题,无标准答案

有一个耗时的函数 fn(v) -> r,其中 v 是输入内容,r 是计算结果。我们进行以下约定:

  • 函数之间互相独立,无副作用
  • 一次函数计算大约需要 10s(单线程)
  • 每份输入内容大小约为 100MiB
  • 每份输出内容约为 4MiB。

现在有四个计算节点和一个存储节点,我们进行以下约定:

  • 每个计算节点提供 64 线程
  • 所有节点通过 10GbE 连接到交换机
  • 所有输入内容均存储在存储节点上,输出内容也能在存储节点上访问(通过本地挂载的 VFS)。

请你设计一个方案,用尽可能短的时间,完成计算任务。(输入内容份数远大于 4*64)

Hints:

  • 什么是 NFS?什么是 GlusterFS?两者有什么功能上的区别?
  • 计算和 IO 冲突吗?

Changelogs:

  • 2025-8-3: 合并“分布式存储”,并优化内容
  • 2024-10-8: first version
出题人:可可