Skip to main content

Что такое материализованное представление?

Материализованное представление - это объект базы данных, в котором отображается информация, запрашиваемая из базы данных. База данных - это набор информации, упорядоченный в табличном формате. Это позволяет конечному пользователю получать данные с помощью запросов, заданных в формате языка структурированных запросов (SQL). Это позволяет конечному пользователю делать запросы из базы данных для определенных типов информации, таких как список сотрудников в возрасте до 30 лет. Эта информация будет доступна для отображения в материализованном представлении, при условии, что это конкретная виртуальная таблица, содержащая полную список результатов.

Когда конечный пользователь вводит запрос в базу данных, программа немедленно начинает просматривать свои записи. Он сравнивает искомую информацию с каждой отдельной записью в выбранных таблицах. Итак, продолжая предыдущий пример, при поиске сотрудников младше 30 лет база данных переходит в таблицу «Сотрудники», и, начиная с самого начала, она проверяет дату рождения каждого, сравнивая ее с текущей датой для определения возраста , Все сотрудники в возрасте до 30 лет перемещаются в таблицу материализованного представления. Только после этого окончательный материализованный список представлений «представляется» конечному пользователю, предоставляя полный ответ на запрошенный запрос.

В отличие от традиционного представления для реляционной базы данных, в которой информация о запросах хранится во временной таблице, материализованное представление сохраняет запрошенную информацию в фактической, постоянной, конкретной таблице. Информация, хранящаяся в материализованном представлении, кэшируется в системной памяти, что позволяет конечному пользователю либо вносить изменения, либо время от времени обновлять данные. Например, если один и тот же пример запроса - все сотрудники младше 30 лет - выполняется в первый день, он останется в системе как материализованное представление с этого момента.

Преимущество этого состоит в том, что повторный доступ к информации намного быстрее; информация уже хранится в системе. Основным недостатком является то, что информация может устареть или просрочена между временами доступа. Например, если конечный пользователь повторно получит доступ к тому же материализованному представлению на десятый день, возможно, все изменится: кому-то может быть только 30 лет. Версия с материализованным представлением не будет учитывать эти изменения до тех пор, пока весь запрос не будет выполнен снова. ,