Разлика между изглед и материализиран изглед

Разлика между изглед и материализиран изглед
Разлика между изглед и материализиран изглед

Видео: Разлика между изглед и материализиран изглед

Видео: Разлика между изглед и материализиран изглед
Видео: Frontline Heroes: BEST ALGAE EATERS in Planted Aquariums - Fish, Shrimp, and Snails 2024, Ноември
Anonim

Изглед срещу материализиран изглед

Изгледите и материализираните изгледи (mviews) са два вида обекти на базата данни на oracle. И двата обекта се отнасят до избрани заявки. Тези заявки за избор действат като виртуални таблици. Обикновено изгледите и mviews се отнасят до големи избрани заявки, които имат набор от обединения. Следователно едно от основните предимства на изгледите е, че можем да съхраняваме сложни избрани заявки като изгледи. Следователно можем да скрием логиката зад избраните заявки от крайните потребители. Когато трябва да изпълним сложния оператор select, просто трябва да изпълним

изберете * от име на изглед

Изглед

Както споменахме по-горе, изгледът е виртуална таблица, която скрива заявка за избор. Тези заявки за избор не са предварително изпълнени. Когато изпълняваме оператор select от изглед, той изпълнява оператора select, който е вътре в тялото на изгледа. Нека приемем, че избраното изявление на тялото на изгледа е много сложно изявление. Така че, когато се изпълнява, отнема известно време за изпълнение (относително повече време). В допълнение, view използва много малко пространство, за да се съхранява. Това е така, защото съдържанието му е само select.

Материализиран изглед (Mview)

Това е специален вид гледка. Mviews се създават, когато имаме проблеми с производителността на изгледите. Когато създаваме mview, той изпълнява своята заявка за избор и съхранява изхода си като таблица на моментни снимки. Когато искаме данни от Mview, не е необходимо да изпълнява отново оператора си select. Той дава изхода от таблицата на снимките. Следователно времето за изпълнение на mview е по-малко от изгледа (за същия оператор за избор). Въпреки това, mviews не може да се използва през цялото време, тъй като показва същия изход, който се съхранява като таблица на моментни снимки. Трябва да обновим mview, за да получим най-новия му набор от резултати.

Каква е разликата между View и Mview?

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

2. Изгледът не се нуждае от голямо пространство за съхраняване на съдържанието му, но mview се нуждае от относително по-голямо пространство от изглед за съхраняване на съдържанието му (като моментна снимка).

3. Изгледът отнема по-голямо време за изпълнение, но mview отнема по-малко време за изпълнение от изгледите (за същия оператор за избор).

4. Mviews трябва да се опресняват, за да се получат последните му данни, но изгледите винаги дават най-новите си данни.

5. Схемата се нуждае от привилегията „създаване на материализиран изглед“, за да създава mviews, а за изгледите се нуждае от привилегия „създаване на изглед“.

6. Индексите могат да се създават в mviews, за да се постигне по-голяма производителност, но индексите не могат да се създават в изгледите.

Препоръчано: