Разница между представлением и материализованным представлением

Автор: Laura McKinney
Дата создания: 2 Апрель 2021
Дата обновления: 13 Май 2024
Anonim
Представления в SQL | Основы SQL
Видео: Представления в SQL | Основы SQL

Содержание


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

В таких случаях мы должны иметь возможность создать виртуальную таблицу, которая может отображать только необходимые атрибуты из таблицы. Это возможно через View и Materialized View, которые мы обсудим в этой статье. Мы также обсудим различия между представлением и материализованным представлением с помощью сравнительной таблицы, показанной ниже:

  1. Сравнительная таблица
  2. Определение
  3. Ключевые отличия
  4. Заключение

Сравнительная таблица

Основа для сравненияПосмотретьМатериализованный вид
основнойВид никогда не сохраняется, он только отображается.Материализованное представление хранится на диске.
определятьПредставление - это виртуальная таблица, сформированная из одной или нескольких базовых таблиц или представлений.Материализованное представление является физической копией базовой таблицы.
ОбновитьПредставление обновляется каждый раз, когда используется виртуальная таблица (представление).Материализованное представление должно обновляться вручную или с использованием триггеров.
скоростьМедленная обработка.Быстрая обработка.
Использование памятиПросмотр не требует места в памяти.Материализованный вид использует пространство памяти.
СинтаксисСоздать представление V как Создать материализованное представление V Build Обновить как


Определение зрения

Вид это виртуальный стол, созданный с использованием Создать вид команда. Эта виртуальная таблица содержит данные, полученные из выражение запросав команде Создать вид. Представление может быть создано из одной или нескольких базовых таблиц или представлений. Представление может быть запрошено так же, как вы запрашиваете исходные базовые таблицы.

это не что вид предварительно вычисленное а также хранится вместо этого на диске вычисленное каждый раз, когда он используется или доступен. Всякий раз, когда используется представление, выражение запроса в команде Create View выполняется в этот конкретный момент. Следовательно, вы всегда получаете обновленный данные в представлении.

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


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

Теперь давайте посмотрим на синтаксис View

Создать представление V как

Помните Все виды не обновляются. Как вид, созданный с помощью DISTINCT пункт, Группа по пункт, ПРОВЕРИТЬ ограничение (если контрольные ограничения нарушают), Только для чтения опция не может быть обновлена.

Определение материализованного представления

Материализованный вид Физическая копия оригинальных базовых таблиц. Материализованный взгляд похож на снимок или же рисунок оригинальных базовых таблиц. Как и View, он также содержит данные, полученные из выражение запроса из Создать материализованное представление команда.

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

Материализованное представление реагирует быстрее по сравнению с просмотром. Это потому, что материализованное представление предварительно вычислено и, следовательно, оно не тратит время на разрешение запроса или объединений в запросе, который создает материализованное представление. Который в свою очередь быстрее отвечает на запрос, выполненный в материализованном представлении.

Давайте проверим синтаксис материализованного представления:

Создать материализованный вид V
Обновление сборки
НА
Как

где Сложение предложение решает, когда заполнять материализованное представление. Тип обновления решает, как обновить материализованное представление, а триггер - когда обновлять материализованное представление.

Матерализованные представления обычно используются в хранилище данных.

  1. Основное различие между представлением и материализованным представлением состоит в том, что представления не хранится физически на диске. С другой стороны, материализованные представления хранится на диске.
  2. Вид может быть определен как виртуальный стол созданный в результате выражения запроса. Тем не менее, материализованный вид физическая копия, изображение или снимок базовой таблицы.
  3. Вид всегда обновленный поскольку запрос создает представление, выполняется каждый раз, когда используется представление. С другой стороны, Materialized View обновляется вручную или применяя триггеры к этому.
  4. Материализованный вид отвечает Быстрее чем View, как материализованное представление.
  5. Материализованный вид утилизирует пространство памяти так как он хранится на диске, тогда как представление просто дисплей следовательно это не требует места в памяти.

Заключение:

Материализованное представление отвечает быстрее по сравнению с представлением. Но View всегда предоставляет пользователю актуальную информацию.