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

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

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

Видео: Разница между представлением и материализованным представлением
Видео: Представления в SQL | Основы SQL 2024, Ноябрь
Anonim

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

Представления и материализованные представления (mviews) - это два типа объектов базы данных Oracle. Оба этих объекта относятся к запросам на выборку. Эти запросы на выборку действуют как виртуальные таблицы. Обычно представления и mviews относятся к большим запросам на выборку, которые имеют набор соединений. Таким образом, одним из основных преимуществ представлений является то, что мы можем хранить сложные запросы на выборку в виде представлений. Следовательно, мы можем скрыть логику запросов select от конечных пользователей. Когда нам нужно выполнить сложный оператор выбора, мы просто должны выполнить

выберитеиз имени представления

Просмотр

Как упоминалось ранее, представление - это виртуальная таблица, которая скрывает запрос на выборку. Эти запросы на выборку не выполняются заранее. Когда мы выполняем оператор выбора из представления, он выполняет оператор выбора, который находится внутри тела представления. Предположим, что оператор select тела представления является очень сложным оператором. Поэтому, когда он выполняется, для его выполнения требуется некоторое время (относительно больше времени). Кроме того, представление использует очень мало места для хранения самого себя. Это потому, что в его содержимом содержится только оператор select.

Материализованное представление (Mview)

Это особый вид просмотра. Mviews создаются, когда у нас есть проблемы с производительностью с представлениями. Когда мы создаем mview, он выполняет свой запрос на выборку и сохраняет результат в виде таблицы моментальных снимков. Когда мы запрашиваем данные у Mview, ему не нужно повторно выполнять оператор select. Он дает вывод из своей таблицы моментальных снимков. Следовательно, время выполнения mview меньше, чем представление (для того же оператора select). Однако mviews нельзя использовать все время, так как они показывают одни и те же выходные данные, которые хранятся в виде таблицы моментальных снимков. Мы должны обновить mview, чтобы получить последний набор результатов.

В чем разница между View и Mview?

1. Mview всегда сохраняет свои выходные данные в виде таблицы моментальных снимков при создании, но представление не создает никаких таблиц.

2. Представлению не требуется много места для хранения своего содержимого, но mview требуется относительно больше места, чем представление для хранения своего содержимого (в виде таблицы снимков).

3. View занимает больше времени на выполнение, но mview требует меньше времени на выполнение, чем представления (для того же оператора select).

4. Мпредставления необходимо обновить, чтобы получить последние данные, но представления всегда предоставляют последние данные.

5. Схеме требуется привилегия «создать материализованное представление» для создания mview, а для представлений требуется привилегия «создать представление».

6. Индексы могут быть созданы для mviews для повышения производительности, но индексы не могут быть созданы для представлений.

Рекомендуемые: