Системный дизайн и распределённые системы — материалы курса

Подборка литературы, ссылок и домашних заданий (по темам и занятиям)

Список литературы

Основные книги и главы

Теория

Designing Data-Intensive Applications — Martin Kleppmann (DDIA) главы: 1, 2, 3, 5, 6, 7, 8, 9, 11

Distributed Systems — van Steen, Tanenbaum (DS) главы: 4, 5, 7, 8, 9

Базы данных

Database System Concepts — Silberschatz, Korth, Sudarshan (DSC) 1, 10, 12–14, 17–19, 21, 23–24

Database Internals — Alex Petrov (Petrov) 1, 5, 8, 11

Database Management SystemsRaghu Ramakrishnan и Johannes Gehrke (DMS) 1, 8–18, 20–22, 27–28

Дев / Архитектура

  • Fundamentals of Software Architecture — Mark Richards & Neal Ford (FSA)
  • Software Architecture: The Hard Parts — Mark Richards & Neal Ford (SAHP)
  • Google SRE Book (SRE)
  • Microservices Patterns — Chris Richardson (MP)

Материалы к урокам 1–2 Storage

Links
Read
  • DDIA: главы 2, 3
  • Petrov: главы 1–7
  • DSC: главы 13, 14, 24, 15, 16
  • DMS: главы 8–15
TODO

#3–4 Transactions

DSC 17–18 DMS 16–17 DDIA 7

#5 Recovery

Observability — пример

ObservabilitySample (GitHub)

Consensus (Raft)

Sharding