Материализованный вид
-
Определение материализованного представления
- Материализованное представление – это объект базы данных, содержащий результаты запроса.
- Может быть локальной копией данных, подмножеством строк и/или столбцов, результатом объединения или сводкой.
-
Процесс создания материализованного представления
- Процесс создания материализованного представления называется материализацией.
- Материализованные представления используются для кэширования результатов запросов и оптимизации производительности.
-
Применение материализованных представлений
- Особенно полезны в сценариях создания хранилищ данных, где частые запросы к базовым таблицам могут быть дорогими.
-
Особенности материализованных представлений
- В материализованном представлении могут быть построены индексы для любого столбца, в отличие от обычных представлений, где индексы ограничены столбцами из индексированных базовых таблиц.
-
Реализация в различных СУБД
- Oracle: функция перезаписи запросов добавлена в версии 8i.
- PostgreSQL: изначально поддерживаются с версии 9.3, обновление может быть выполнено вручную или автоматически в версии 9.4.
- SQL Server: отличается от других СУБД концепцией индексированных представлений, синхронизированных с исходными данными.
- Платформы для потоковой обработки данных: Apache Kafka, Apache Spark, Apache Flink, Kinetica DB, Materialize, RisingWave поддерживают материализованные представления потоков данных.
- Другие СУБД: Sybase SQL Anywhere, IBM Db2, ClickHouse, MySQL, Amazon DynamoDB, Google BigQuery также поддерживают материализованные представления.
-
Рекомендации и внешние ссылки
- Ссылки на документацию и руководства по функциям SQL для различных СУБД, включая Oracle, PostgreSQL, SQL Server и другие.