Vizualizare vs Vizualizare materializată
Vizualizările și vizualizările materializate (mviews) sunt două tipuri de obiecte de bază de date oracle. Ambele obiecte se referă la interogări selectate. Aceste interogări selectate acționează ca tabele virtuale. În mod normal, vizualizările și mviews se referă la interogări mari selectate, care au set de îmbinări. Prin urmare, unul dintre principalele avantaje ale vizualizărilor este că putem stoca interogări complexe selectate ca vizualizări. Prin urmare, putem ascunde logica din spatele interogărilor selectate de la utilizatorii săi finali. Când trebuie să executăm declarația complexă select, trebuie doar să executăm
selectați * din viewname
Vedere
Așa cum am menționat anterior, vizualizarea este un tabel virtual, care ascunde o interogare selectată. Aceste interogări selectate nu sunt pre-executate. Când executăm o instrucțiune select dintr-o vizualizare, aceasta execută instrucțiunea select care se află în corpul vizualizării. Să presupunem afirmația selectată a corpului de vizualizare ca o afirmație foarte complexă. Deci, atunci când este executat, durează ceva timp pentru a executa (relativ mai mult timp). În plus, vizualizarea folosește spațiu foarte mic pentru a se stoca. Asta pentru că are doar o afirmație selectă ca conținut.
Vizualizare materializată (Mview)
Acesta este un tip special de vedere. Mviews sunt create atunci când avem probleme de performanță cu vizualizări. Când creăm un mview, acesta execută interogarea selectată și își stochează rezultatul ca un tabel instantaneu. Când solicităm date de la Mview, acesta nu trebuie să execute din nou instrucțiunea selectă. Oferă ieșirea din tabelul său de instantanee. Prin urmare, timpul de execuție al mview este mai mic decât vizualizarea (pentru aceeași instrucțiune select). Cu toate acestea, mviews nu poate fi folosit tot timpul, deoarece arată aceeași ieșire, care este stocată ca un tabel instantaneu. Ar trebui să reîmprospătăm mview pentru a obține cel mai recent set de rezultate.
Care este diferența dintre View și Mview? 1. Mview își stochează întotdeauna ieșirea ca tabel instantaneu atunci când este creat, dar vizualizarea nu creează tabele. 2. Vizualizarea nu are nevoie de spațiu mare pentru a-și stoca conținutul, dar mview are nevoie de spațiu relativ mai mare decât o vizualizare pentru a-și stoca conținutul (ca tabel instantaneu). 3. Vizualizarea durează mai mult timp de execuție, dar mview necesită timp de execuție mai mic decât vizualizările (pentru aceeași instrucțiune select). 4. Mviews trebuie actualizate pentru a obține cele mai recente date, dar vizualizările oferă întotdeauna cele mai recente date. 5. Schema are nevoie de privilegiul „creați vizualizarea materializată” pentru a crea mviews, iar pentru vizualizări, are nevoie de privilegiul „creați vizualizarea”. 6. Indexurile pot fi create pe mviews pentru a obține mai multă performanță, dar indexurile nu pot fi create pe vizualizări. |