20200421

@ShiKaiWi

Plan

60min: Introduction to Distributed System video: https://www.youtube.com/watch?v=cQP8WApzIQQ

Notes

本节课算是 Distributed System 的入门课,虽然提到的知识都在平时或多或少的遇到过,但是没有选择跳过,而是进行系统的回顾。

构建 Distributed System 的目的(优势):

  • Parallelism:通过 parallelism 获取更高的性能。
  • Fault tolerance
  • Physical reason:物理上存在隔离的要求,比如不同城市的银行服务器可能就是需要在不同的城市分布。
  • Security:现实中存在隔离的需求

本课程更关注的是 第一、第二点。

构建 Distributed System 的挑战(难点):

  • Concurrent
  • Partial failure:在大量的组件构成的 Distributed System 中,出现 partial failure 是非常常见的,处理这个问题是 Distributed System 必须面对的。
  • Performance:如果通过增加机器,不能获取高性能,那么是非常不值的。

一个 Infrastructure 的组成部分:

  • Storage
  • Communication
  • Computation

这个观点确实比较精炼,天然的就得到了存储和计算隔离(有状态服务和无状态服务的隔离)的架构。

Topic:Performance 一般使用 Scalability 来描述 Performance,通常的表述是:

  • 2 computers => 2 throughout

Topic: Fault Tolerance 如何描述:

  • Availability:under certain kinds of failures system is still available
  • Recoverability:允许停止服务,但是需要保证在人为介入之后,能够恢复

如何实现:

  • Non-volatile storage
  • Replication

Topic:Consistency 由于 Replication 的存在,势必会存在数据一致性的问题,一般来说可以简单的划分为:

  • strong consistency
  • weak consistency

More

明日需要阅读 map reduce 的 paper,以及从 47 分开始继续:https://www.youtube.com/watch?v=cQP8WApzIQQ