Яка різниця між представленнями та матеріалізованими представленнями в Oracle?
Яка різниця між представленнями та матеріалізованими представленнями в Oracle?
332
3
Яка різниця між представленнями та матеріалізованими представленнями в Oracle?
Матеріалізовані уявлення є дисковими і періодично оновлюються на основі визначення запиту.
Представлення є тільки віртуальними і виконують визначення запиту при кожному зверненні до них.
Представлення використовує запит для отримання даних з базових таблиць.
Матеріалізоване подання - це таблиця на диску, яка містить набір результатів запиту.
Матеріалізовані представлення в основному використовуються для підвищення продуктивності програми, коли неможливо або небажано використовувати стандартне представлення з індексами, що застосовуються до нього. Матеріалізовані представлення можуть оновлюватися на регулярній основі або за допомогою тригерів, або за допомогою опції
ON COMMIT REFRESH
. Це вимагає декількох додаткових дозволів, але в цьому немає нічого складного. ОпціяON COMMIT REFRESH
існує, як мінімум, з версії Oracle 10.Подання - це, по суті, логічні табличні структури, що заповнюються "на льоту" за заданим запитом. Результати запиту до представлення ніде на диску не зберігаються, і представлення відтворюється кожного разу при виконанні запиту. Матеріалізовані представлення - це реальні структури, що зберігаються в базі даних і записуються на диск. Вони оновлюються на основі параметрів, визначених при їх створенні.