Партиционирование разбивает таблицу на части по диапазону/списку/хешу. Запросы с условием по ключу партиционирования обращаются только к нужным партициям (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');