Что такое партицирование в БД

Python Middle Вкусно и точка
Что такое партицирование в БД
Ответы
Партицирование (partitioning) — это разделение таблицы в БД на логические части (партиции) для улучшения производительности и управления данными. **Основные типы партицирования:** - **Горизонтальное (range partitioning)** — разделение по диапазону значений (например, по датам). - **Вертикальное (column-based)** — разделение по столбцам. - **Хэш-партицирование** — равномерное распределение по хэшу ключа. **Пример в PostgreSQL:** ``` CREATE TABLE sales ( id SERIAL, sale_date DATE, amount NUMERIC ) PARTITION BY RANGE (sale_date); CREATE TABLE sales_2023 PARTITION OF sales FOR VALUES FROM ('2023-01-01') TO ('2024-01-01'); ``` **Преимущества:** - Ускорение запросов (сканируется только нужная партиция). - Упрощение управления (архивация, удаление старых данных). - Распределение нагрузки на диски. **Недостатки:** - Усложнение схемы БД. - Ограничения на JOIN между партициями.