Materialized view — это сохранённый результат запроса, который физически хранится в базе как готовая таблица. Он полезен для тяжёлых отчётов и агрегатов, которые не нужно пересчитывать при каждом обращении.
Что такое materialized view?
Подробный ответ
Что это такое
Materialized view — это представление, результат которого сохраняется на диске. В отличие от обычного VIEW, оно не вычисляется заново при каждом запросе.
Пример
CREATE MATERIALIZED VIEW sales_summary AS
SELECT product_id, SUM(amount) AS total_amount
FROM sales
GROUP BY product_id;Такой объект удобно использовать для отчётов, где нужна уже подготовленная агрегация.
Плюсы
ускоряет сложные запросы;
снижает нагрузку на основную таблицу;
удобен для аналитики и дашбордов.
Минусы
данные могут быть устаревшими, пока не выполнен
REFRESH;нужно отдельно обновлять материализованное представление;
занимает дополнительное место.
Когда использовать
Materialized view полезно, когда запрос дорогой, но данные можно обновлять по расписанию: например, раз в минуту, час или ночь. Это хороший компромисс между скоростью и актуальностью.
Как ответить на собеседовании
Materialized view — это сохранённый результат запроса, который можно быстро читать, но нужно отдельно обновлять через REFRESH. Его используют для тяжёлых отчётов и аналитики, когда не хочется пересчитывать всё на лету.
Оцени свой прогресс