Встречается на собеседованиях • сегодня

Зачем нужно артиционирование в БД

Партиционирование в БД позволяет разделить таблицу на логические части (партиции) для:

  • Ускорения запросов – СУБД сканирует только нужные партиции (например, по датам).
  • Упрощения управления – Можно удалять/архивировать старые данные целыми партициями.
  • Распределения нагрузки – Разные партиции можно хранить на разных дисках.

Пример (PostgreSQL):

sql
-- Создание партиционированной таблицы по датам
CREATE TABLE logs (
    id SERIAL,
    log_date DATE,
    message TEXT
) PARTITION BY RANGE (log_date);

-- Партиции для каждого месяца
CREATE TABLE logs_2023_01 PARTITION OF logs
    FOR VALUES FROM ('2023-01-01') TO ('2023-02-01');

Когда использовать:

  • Большие таблицы (гигабайты+).
  • Частые запросы по ключу партиционирования (например, WHERE log_date BETWEEN ...).
  • Необходимость быстрой очистки старых данных.

Минусы:

  • Усложнение схемы БД.
  • Ограничения на уникальные индексы (должны включать ключ партиционирования).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы