Відповіді:
Матеріалізовані представлення засновані на диску та періодично оновлюються на основі визначення запиту.
Перегляди є лише віртуальними і виконують визначення запиту щоразу, коли до них звертаються.
Вони оцінюють дані в таблицях, що лежать в основі визначення подання, під час запиту подання . Це логічний вигляд ваших таблиць, без даних, що зберігаються більше ніде.
Перевернення погляду полягає в тому, що він завжди поверне вам найновіші дані . Мінус мети є те , що його продуктивність залежить від того, наскільки добре добірного заяви думки засноване на. Якщо оператор select, який використовується переглядом, приєднується до багатьох таблиць або використовує з'єднання на основі неіндексованих стовпців, представлення може працювати погано.
Вони схожі на звичайні представлення даних, оскільки являють собою логічний вигляд ваших даних (заснований на обраному операторі), однак базовий набір результатів запиту був збережений у таблиці . Переваги цього полягають у тому, що при запиті на матеріалізований вигляд ви запитуєте таблицю , яку також можна індексувати.
Крім того, оскільки всі з'єднання були вирішені під час оновлення перегляду в режимі перегляду, ви платите ціну приєднання одноразово (або так часто, як ви оновлюєте свій матеріалізований вигляд), а не кожен раз, коли ви вибираєте з материализованного представлення. Крім того, з увімкненою перезаписом запитів Oracle може оптимізувати запит, який вибирає з джерела вашого матеріалізованого перегляду таким чином, що він замість цього читає з вашого матеріалізованого подання. У ситуаціях, коли ви створюєте матеріалізовані представлення у вигляді сукупних таблиць або як копії часто виконуваних запитів, це може значно пришвидшити час відповіді вашої програми кінцевого користувача. Недолік , хоча в тому , що дані , які ви отримаєте назад від матеріалізованого уявлення тільки до дати , як в останній раз матеріалізованого уявлення було оновлено .
Матеріалізовані представлення можна встановити для оновлення вручну, за встановленим графіком або на основі бази даних, що виявляє зміну даних з однієї з основних таблиць . Матеріалізовані погляди можна поступово оновлювати, поєднуючи їх з матеріалізованими журналами перегляду, які діють як джерела збору даних у нижчих таблицях.
Матеріалізовані представлення найчастіше використовуються в програмах зберігання даних / бізнес-аналітики, де запити великих таблиць фактів з тисячами мільйонів рядків призводять до часу відповіді на запити, що призводить до непридатності програми.
Матеріалізовані погляди також допомагають гарантувати послідовний момент часу, подібний до ізоляції знімків .
Представлення використовує запит для витягування даних із нижчих таблиць.
Матеріалізований вигляд - це таблиця на диску, яка містить набір результатів запиту.
Матеріалізовані представлення в основному використовуються для підвищення продуктивності програми, коли неможливо або бажано використовувати стандартний вигляд із застосованими до нього індексами. Матеріалізовані представлення можна регулярно оновлювати або через тригери, або за допомогою ON COMMIT REFRESH
параметра. Для цього потрібно кілька додаткових дозволів, але це нічого складного. ON COMMIT REFRESH
існує з принаймні Oracle 10.
Погляди по суті є логічними структурами, схожими на таблицю, заселеними на ходу заданим запитом. Результати запиту перегляду не зберігаються ніде на диску, і перегляд відтворюється щоразу, коли запит виконується. Матеріалізовані представлення - це фактичні структури, що зберігаються в базі даних і записуються на диск. Вони оновлюються на основі параметрів, визначених під час їх створення.
Вид: Вид - це лише названий запит. Це нічого не зберігає. Коли є запит на перегляд, він запускає запит визначення представлення. Фактичні дані надходять з табл.
Матеріалізовані представлення: зберігає дані фізично та періодично оновлюється. Під час запитів на MV він дає дані від MV.
Додавання досить грунтовної відповіді Майка Макаллістера ...
Матеріалізовані представлення можна встановити для автоматичного оновлення лише через базу даних, що виявляє зміни, коли компілятор вважає, що запит перегляду простий . Якщо це вважається занадто складним, він не зможе встановити, що по суті є внутрішніми тригерами для відстеження змін у вихідних таблицях, щоб лише оновити змінені рядки в таблиці mview.
Створюючи матеріалізований вигляд, ви побачите, що Oracle створює як mview, так і таблицю з тим самим іменем , що може зробити речі заплутаними.
Матеріалізовані представлення - це логічний вигляд даних, керований запитом вибору, але результат запиту зберігатиметься в таблиці чи диску, а також визначення запиту також зберігатиметься в базі даних.
Продуктивність Матеріалізованого перегляду краще, ніж звичайного Перегляду, тому що дані матеріалізованого перегляду будуть зберігатися в таблиці та таблиці, можливо, індексуватись так швидше, щоб приєднання також приєднання було зроблено під час оновлення матеріалів, що оновлюються, тому не потрібно кожного разу запускати заявка приєднання, як у випадку перегляду.
Інша відмінність полягає в тому, що у випадку перегляду ми завжди отримуємо найновіші дані, але у випадку матеріалізованого перегляду нам потрібно оновити подання для отримання останніх даних. У випадку матеріалізованого перегляду нам потрібен додатковий тригер або якийсь автоматичний метод, щоб ми могли оновити MV оновленим, це не потрібно для переглядів у базі даних.