[Distributed System] Introduction

Introduction

Video: https://www.youtube.com/watch?v=cQP8WApzIQQ

  • Why distributed system

    • Parrellism
    • Fault tolerance
    • Physical reason
    • Security reason, need to create isolated environment
  • Challenges:

    • Concurrency
    • Partial failure
    • Performance

Infrastructure

  • Storage
  • Communication
  • Computation

Tools

  • RPC: for communication
  • Threads
  • Concurrency control

Performance:

  • Scalability: 2x computer results in 2x performance
  • Fault Tolerance:
    • Availability
    • Recoverability
  • Solution:
    • Non-vault storage: expensive to update
    • Replication

Consistency

  • Put (key, value)
  • Get (key) -> value