Партиционирование таблиц в PostgreSQL. Зачем в Go-приложении?

Ответ

Партиционирование разбивает таблицу на части по диапазону/списку/хешу. Запросы с условием по ключу партиционирования обращаются только к нужным партициям (partition pruning). В Go пишут запросы как к одной таблице; драйвер и БД выбирают партиции. Упрощает архивацию и удаление старых данных, ускоряет запросы по ключу партиции.

CREATE TABLE orders (id BIGSERIAL, user_id BIGINT, ...) PARTITION BY RANGE (created_at);
CREATE TABLE orders_2024 PARTITION OF orders FOR VALUES FROM ('2024-01-01') TO ('2025-01-01');
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.