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

Что такое партиционирование в базе данных

Партиционирование — это разделение таблицы на логические части (партиции) по определенным правилам для повышения производительности и управляемости.

Типы партиционирования:

  • По диапазону (RANGE) — данные распределяются по диапазонам (например, по датам).
  • По списку (LIST) — партиции определяются явным списком значений.
  • По хешу (HASH) — данные распределяются по хеш-функции.
  • Композитное — комбинация методов.

Пример (PostgreSQL):

sql
-- Создание таблицы с партиционированием по дате
CREATE TABLE sales (
    id SERIAL,
    sale_date DATE,
    amount DECIMAL
) PARTITION BY RANGE (sale_date);

-- Создание партиций
CREATE TABLE sales_2023 PARTITION OF sales
    FOR VALUES FROM ('2023-01-01') TO ('2024-01-01');
CREATE TABLE sales_2024 PARTITION OF sales
    FOR VALUES FROM ('2024-01-01') TO ('2025-01-01');

Преимущества:

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

Недостатки:

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

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

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

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