Razlika između pogleda i materijaliziranog pogleda

Razlika između pogleda i materijaliziranog pogleda
Razlika između pogleda i materijaliziranog pogleda

Video: Razlika između pogleda i materijaliziranog pogleda

Video: Razlika između pogleda i materijaliziranog pogleda
Video: HTC One X vs iPhone 4S: скорость (speed comparison) 2024, Juli
Anonim

Prikaz vs materijalizirani pogled

Pregledi i materijalizovani pogledi (mviews) su dva tipa objekata baze podataka Oracle. Oba ova objekta odnose se na upite za odabir. Ovi upiti za odabir djeluju kao virtualne tablice. Obično pogledi i mviews upućuju na velike upite za odabir, koji imaju skup spojeva. Stoga je jedna od glavnih prednosti pogleda to što možemo pohraniti složene upite za odabir kao poglede. Dakle, možemo sakriti logiku iza upita za odabir od krajnjih korisnika. Kada trebamo izvršiti složenu naredbu odabira, samo moramo izvršiti

odaberiteiz naziva prikaza

Pogledaj

Kao što je već spomenuto, prikaz je virtuelna tabela, koja skriva upit za odabir. Ovi upiti za odabir se ne izvršavaju unaprijed. Kada izvršimo naredbu odabira iz pogleda, ona izvršava naredbu odabira koja se nalazi unutar tijela pogleda. Pretpostavimo naredbu odabira tijela pogleda kao vrlo složenu naredbu. Dakle, kada se izvrši, potrebno je neko vrijeme da se izvrši (relativno više vremena). Osim toga, view koristi vrlo mali prostor za pohranjivanje. To je zato što ima samo odabranu izjavu kao svoj sadržaj.

Materijalizovani prikaz (Mview)

Ovo je posebna vrsta pogleda. Mviewovi se kreiraju kada imamo problema sa performansama sa pogledima. Kada kreiramo mview, on izvršava svoj upit za odabir i pohranjuje svoj izlaz kao tabelu snimka. Kada zatražimo podatke od Mviewa, on ne mora ponovo izvršiti svoju naredbu odabira. Daje izlaz iz svoje tabele snimaka. Stoga je vrijeme izvršenja mviewa kraće od pogleda (za istu naredbu select). Međutim, mviews se ne može koristiti cijelo vrijeme, jer pokazuje isti izlaz, koji se pohranjuje kao tabela snimaka. Trebali bismo osvježiti mview da dobijemo njegov najnoviji skup rezultata.

Koja je razlika između View i Mviewa?

1. Mview uvijek pohranjuje svoj izlaz kao tabelu snimka kada se kreira, ali pogled ne kreira nikakve tabele.

2. Viewu nije potreban veliki prostor za pohranjivanje svog sadržaja, ali mviewu je potreban relativno veći prostor od pogleda za spremanje svog sadržaja (kao tabela snimka).

3. Pogled zahtijeva duže vrijeme izvršenja, ali mview zahtijeva manje vrijeme izvršenja od pogleda (za istu naredbu odabira).

4. Mviews moraju biti osvježeni da bi dobili najnovije podatke, ali pregledi uvijek daju najnovije podatke.

5. Šemi je potrebna privilegija “kreiraj materijalizirani pogled” za kreiranje mviewova, a za poglede potrebna je privilegija “kreiraj pogled”.

6. Indeksi se mogu kreirati na mviewovima kako bi dobili više performansi, ali indeksi se ne mogu kreirati na pogledima.

Preporučuje se: