System Design Space
Граф знанийНастройки

Обновлено: 24 июня 2026 г. в 15:37

Путеводитель по базам данных (краткое содержание)

средний

Хороший путеводитель по базам данных ценен не широтой охвата самой по себе, а тем, что собирает реляционную модель, SQL и распределённые компромиссы в один инженерный язык.

В реальной работе эта книга полезна как спокойный фундамент: по ней удобно выравнивать обсуждение модели данных, транзакций, репликации, шардирования и того, где именно заканчивается простая теория и начинается архитектурная цена решения.

На интервью и в архитектурных обсуждениях она помогает говорить о базах данных без скачков между жаргоном и абстракцией: от модели данных к запросам, гарантиям и последствиям выбора.

Практическая польза главы

Реляционная и NoSQL-практика

Переводите теорию в критерии выбора модели данных под конкретный продукт: транзакции, гибкость схемы и профиль доступа.

Язык компромиссов

Используйте единый словарь для обсуждения репликации, шардирования и консистентности между командами.

Чеклист внедрения

Сопровождайте архитектурный выбор планом наблюдаемости, резервного копирования, восстановления и деградационных сценариев.

Рассказ на интервью

Стройте ответ как инженерный разбор: контекст, варианты, компромиссы, финальное решение и последствия.

Рамка выбора и редакторский фокус

Фокус главы

системном обзоре реляционных и NoSQL-подходов к хранению данных

Профиль нагрузки

Начинайте с профиля данных: что является источником истины, где нужна транзакционная обработка OLTP, где аналитика, поиск, кэш или поток событий.

Когда выбирать

Глава нужна как входная рамка: она помогает выбрать порядок изучения и не прыгать сразу к любимой СУБД.

Граница и риск

Главный риск — смешать классификацию, выбор технологии и эксплуатационные гарантии в одну неявную рекомендацию.

Связать дальше

Связывайте выводы с фреймворком выбора СУБД, DDIA и практическими обзорами конкретных движков.

Официальный источник

Postgres Pro

Бесплатная электронная версия книги на сайте Postgres Professional: учебный материал можно читать без регистрации и покупки.

Скачать бесплатно

Путеводитель по базам данных

Авторы: В. И. Комаров
Издательство: ДМК Пресс, 2024
Объём: 520 страниц

Учебное пособие от Postgres Pro: реляционная модель, SQL-запросы, архитектура СУБД, индексы, транзакции, репликация, шардирование и NoSQL-подходы.

Оригинал

«Путеводитель по базам данных» удобен как первая системная карта: он связывает ,,,, и в один инженерный маршрут. Здесь важно другое: книга показывает, где заканчивается учебная теория и начинаются ограничения выбранного хранилища, за которые потом платит продакшен.

Зачем читать эту книгу

Книга собирает разрозненные темы в одну картину: от модели данных и языка SQL до распределённых решений, на которые упираешься в системном дизайне, когда одного узла перестаёт хватать.

  • Разобраться в фундаменте: понять реляционную алгебру, нормальные формы, транзакции и роль СУБД
  • Уверенно читать и писать SQL: пройти путь от базовых выборок до оконных функций, CTE и рекурсивных запросов
  • Понять внутреннее устройство: увидеть, как индексы, транзакции, журнал предзаписи и блокировки влияют на поведение базы
  • Готовиться к системному дизайну: говорить о базах данных через свойства, ограничения и последствия выбора

Связанная глава

PostgreSQL изнутри

Глубокое погружение в многоверсионное управление конкурентным доступом (MVCC), журнал предзаписи (WAL), блокировки и индексы PostgreSQL от Егора Рогова.

Читать обзор

Что делает книгу полезной

Учебный формат

Материал построен как учебный курс: задания, контрольные вопросы и лабораторные работы. Порог входа ниже, а темы закрепляются руками, а не только чтением.

Актуальность

Помимо реляционной модели и SQL, книга доходит до NoSQL-баз данных, распределённых систем, обработки больших данных, теоремы CAP и итоговой консистентности.

Практический фокус

Каждое понятие — схемы, индексы, транзакции, запросы — подкреплено примерами на PostgreSQL, так что любую идею можно сразу проверить в реальной СУБД, а не поверить на слово.

Бесплатный доступ

Электронная версия доступна бесплатно на сайте Postgres Professional, поэтому книгу легко использовать как общий учебный источник для команды.

Связанная глава

Database Internals

Глубокое погружение в B-Tree, LSM-деревья и распределённые хранилища от Alex Petrov.

Читать обзор

Структура книги

Часть I: Введение в базы данных

Основы теории баз данных: путь от файловых систем к СУБД, реляционная модель, нормализация, ER-диаграммы и проектирование схемы.

Реляционная модель

Кодд, отношения, ключи

Нормализация

Нормальные формы, денормализация

ER-моделирование

Сущности, связи, атрибуты

Проектирование

Логическая и физическая модель

Часть II: Язык SQL

Полный курс SQL: от SELECT до аналитических запросов, DDL/DML, оконных функций, CTE и базовой оптимизации.

DML-операции

SELECT, INSERT, UPDATE, DELETE

JOIN и подзапросы

INNER, LEFT, RIGHT, FULL, CROSS

Оконные функции

ROW_NUMBER, RANK, LAG, LEAD

CTE и рекурсия

WITH, рекурсивные запросы

Часть III: Архитектура СУБД

Внутреннее устройство СУБД: хранение данных, индексы, буферный кеш, транзакции, блокировки и восстановление после сбоев.

Хранение данных

Страницы, heap, TOAST

Индексы

B-Tree, Hash, GiST, GIN

Транзакции

, уровни изоляции

и восстановление

Журналирование, контрольная точка

Часть IV: Распределённые системы

Репликация, шардирование, распределённые транзакции, теорема CAP, консенсус и современные подходы к масштабированию.

Репликация

Лидер-реплика, несколько лидеров

Шардирование

Горизонтальное партиционирование

Теорема CAP

Консистентность, доступность, разделение сети

Консенсус

Paxos, Raft, 2PC

Часть V: NoSQL и Big Data

Альтернативы реляционным СУБД: документные, ключ-значение, ширококолоночные и графовые базы данных, а также экосистема больших данных.

Документные БД

MongoDB, CouchDB

Ключ-значение

Redis, Memcached, DynamoDB

Ширококолонные

Cassandra, HBase

Графовые БД

Neo4j, JanusGraph

Сравнение типов NoSQL-баз данных

Документная БД

Документы (JSON/BSON) с вложенной структурой. Гибкая схема, богатые запросы по полям.

Примеры

MongoDBCouchDBFirestoreElasticsearch

Сценарии

КаталогиCMSПрофили пользователейЖурнал событий

Модель данных

JSON/BSON-документы

Шаблон запроса

Запросы по полям, индексы

Консистентность

Настраиваемая

Транзакции

ХарактеристикаКлюч-значениеДокументная БДШирококолонная БДГрафовая БД
МасштабированиеГоризонтальноеГоризонтальноеГоризонтальноеГоризонтальное и вертикальное
КонсистентностьИтоговаяНастраиваемаяНастраиваемаяСтрогая
СхемаБез жёсткой схемыГибкаяГибкаяГибкая
Транзакции
JOIN

💡 Когда выбирать NoSQL вместо SQL?

  • Ключ-значение: нужны максимальная скорость и простые операции по ключу
  • Документная БД: важны гибкая схема, вложенные структуры и эволюция модели
  • Ширококолонная БД: много записей, временные ряды и очень большие объёмы
  • Графовая БД: главная сложность в связях между сущностями и многоуровневых обходах

Ключевые концепции для системного дизайна

🔑Выбор типа СУБД

  • короткие транзакции () и аналитика () требуют разной схемы и разного железа
  • выбор между SQL и NoSQL — это выбор компромисса, а не моды
  • несколько типов хранилищ разносят контуры данных, но добавляют точки отказа в эксплуатации
  • даёт SQL-интерфейс с горизонтальным масштабированием — ценой зрелости экосистемы

📊Индексирование

  • закрывает диапазонные запросы и поиск по равенству
  • хеш-индекс выигрывает на точечном поиске, но бесполезен на диапазонах
  • в составном индексе порядок колонок решает, сработает он или нет
  • покрывающий индекс убирает обращение к основной таблице — за счёт размера индекса

Масштабирование

  • реплики для чтения снимают нагрузку чтения, но добавляют задержку репликации
  • шардирование масштабирует запись и объём по горизонтали — и усложняет запросы между шардами
  • партиционирование удерживает большие таблицы управляемыми
  • пул соединений снижает стоимость подключения: PgBouncer, ProxySQL

🔒Консистентность

  • модель задаёт базовые гарантии транзакций
  • уровень изоляции — это явный размен корректности на производительность
  • в распределённой системе строгая консистентность сменяется итоговой
  • паттерн Saga разносит распределённую транзакцию по шагам с компенсациями вместо отката

Для кого эта книга

Начинающим

Студентам и разработчикам, которым нужна системная база по СУБД

Бэкенд-разработчикам

Для систематизации опыта и закрытия пробелов в SQL, индексах и транзакциях

Готовящимся к интервью

Чтобы на System Design-раунде уверенно обсуждать выбор хранилища, консистентность и масштабирование

Об авторах

Книга написана коллективом авторов из компании Postgres Professional, ведущего российского разработчика решений на базе PostgreSQL. Компания известна вкладом в развитие PostgreSQL, образовательными материалами и практическим опытом внедрения СУБД в производственных системах.

Что важно запомнить

«Путеводитель по базам данных» — это фундамент, который читают перед более узкими материалами. Он не заменяет DDIA или Database Internals, но даёт язык для разговора о моделях данных, SQL, индексах, транзакциях и распределённых компромиссах. С этим языком СУБД выбирают по ограничениям задачи, а не по привычке или популярности технологии.

Связанные главы

Где найти книгу

Чтобы отмечать прохождение, включи трекинг в Настройки