HDFS上传
上面的步骤标得都特别清楚了:
- 按块申请
- 返回DN群,用于多处副本
- 在多个DN中建立串联通道,注意是串联的。
- 在写入buffer之后,同时做本地持久化和备份
副本选择
副本选择策略也蛮简单的,基本方式是按距离优先。在网络拓扑中如何定义距离呢?
答案是基于拓扑的节点路径。
上图详细描述了3副本的情况下的节点选择,可以很清楚的地看到,第三个副本需要找到其他支架,这显然是为安全考虑。而副本之间选择不同节点则是为了并发读写的性能考虑。
HDFS下载
下载更加简单:
- 按块申请,返回多个副本DN
- 与第一个DN建立连接。若连接不上,则尝试使用其他副本