---
id: TASK-45.1
title: 'БЗ: knowledge-base.md (числа, паттерны, карта DDIA)'
status: Done
assignee:
  - '@assistant'
created_date: '2026-09-17 12:11'
updated_date: '2026-09-17 12:30'
labels: []
dependencies: []
parent_task_id: TASK-45
ordinal: 46000
---

## Description

<!-- SECTION:DESCRIPTION:BEGIN -->
Собрать базу знаний для секции системного дизайна в applications/yandex-codenv/system-design/knowledge-base.md: плотный справочник по всем компонентам и паттернам распределённых систем.
<!-- SECTION:DESCRIPTION:END -->

## Acceptance Criteria
<!-- AC:BEGIN -->
- [x] #1 Таблицы latency numbers и powers of two с конверсией
- [x] #2 Метод back-of-envelope + 3 разобранных примера (storage, RPS, bandwidth)
- [x] #3 Таблица классов хранилищ (RDBMS/KV/doc/column/search/graph/TS) с критериями выбора
- [x] #4 Разделы: кэш (стратегии, инвалидация, stampede), репликация, шардирование (consistent hashing, hot partition), консистентность (CAP/PACELC, quorum, 2PC vs saga/outbox), очереди (Kafka, delivery semantics), отказоустойчивость (circuit breaker, bulkhead, rate limiting), эксплуатация (золотые сигналы, релизы, миграции)
- [x] #5 Карта DDIA (кабанчик): какие главы читать к интервью и в каком порядке
<!-- AC:END -->

## Implementation Plan

<!-- SECTION:PLAN:BEGIN -->
1. Создать applications/yandex-codenv/system-design/ и knowledge-base.md в стиле существующих методичек (front-matter, плотные таблицы).
2. §Числа: powers of two + latency numbers с конверсиями и мнемониками (основа — sdp appendix).
3. §Back-of-envelope: метод (QPS→пики, storage, bandwidth) + 3 примера: storage (URL shortener), RPS (лента), bandwidth (видео-хостинг).
4. §Хранилища: таблица классов RDBMS/KV/doc/column/search/graph/TS с критериями выбора и типичными представителями.
5. §Паттерны: кэш (стратегии, инвалидация, stampede), репликация, шардирование (consistent hashing, hot partition), консистентность (CAP/PACELC, quorum, 2PC vs saga/outbox), очереди (Kafka, delivery semantics), отказоустойчивость (circuit breaker, bulkhead, rate limiting), эксплуатация (золотые сигналы, релизы, миграции).
6. §Карта DDIA: 12 глав, приоритеты ядро/вторично/опционально, порядок чтения к интервью.
7. Верификация: все 5 AC закрыты, документ читается как самодостаточный справочник; коммит.
<!-- SECTION:PLAN:END -->

## Implementation Notes

<!-- SECTION:NOTES:BEGIN -->
Верификация: структура документа сверена с 5 AC (§1 числа с конверсией в человеческие единицы; §2 метод back-of-envelope + 3 примера storage/RPS/bandwidth; §3 таблица 9 классов хранилищ; §4-10 все требуемые паттерны; §12 карта 12 глав DDIA с приоритетами и порядком к слотам). Арифметика всех расчётов проверена скриптом python3: 12 млрд записей/6 ТБ (URL shortener), 11.6k/35k QPS и fan-out ~700k (лента), 10.7 ТБ/сутки ~1 Gbps (видео), 8.8ч/53мин/5мин availability, 43 мин error budget — совпадает с текстом. Документ 310 строк, самодостаточный, стиль согласован с algo-exam/complexity-cheat-sheet.md.
<!-- SECTION:NOTES:END -->

## Final Summary

<!-- SECTION:FINAL_SUMMARY:BEGIN -->
Создана база знаний applications/yandex-codenv/system-design/knowledge-base.md (310 строк): таблицы powers of two и latency numbers с конверсией и мнемониками, метод back-of-envelope с 3 разобранными примерами (URL shortener storage, лента RPS+fan-out, видео bandwidth), таблица классов хранилищ с критериями выбора, разделы по кэшу/репликации/шардированию/консистентности/очередям/отказоустойчивости/эксплуатации с формулировками для доски, карта DDIA (12 глав, ядро/вторично/опционально) с порядком чтения под слоты 18/21/22.09. Верификация: сверка структуры с AC + скриптовая проверка всех расчётов.
<!-- SECTION:FINAL_SUMMARY:END -->
