Rozdíl mezi pohledem a materializovaným pohledem

Zobrazit vs materializované zobrazení

Pohledy a materializované pohledy (mviews) jsou dva typy databázových objektů Oracle. Oba tyto objekty odkazují na vybrané dotazy. Tyto vybrané dotazy fungují jako virtuální tabulky. Pohledy a mviewy obvykle odkazují na velké vybrané dotazy, které mají sadu spojení. Jednou z hlavních výhod pohledů je proto, že můžeme ukládat komplexní vybrané dotazy jako pohledy. Proto můžeme skrýt logiku za vybranými dotazy od jejích koncových uživatelů. Když potřebujeme provést komplexní příkaz select, musíme provést

                      vyberte * ze zobrazovaného jména

Pohled

Jak je uvedeno výše, pohled je virtuální tabulka, která skryje výběrový dotaz. Tyto vybrané dotazy nejsou předem provedeny. Když provedeme příkaz select z pohledu, provede příkaz select, který je uvnitř těla pohledu. Předpokládejme, že vybraný výrok těla pohledu je velmi složitý. Když je tedy spuštěna, její provedení nějakou dobu trvá (relativně více času). Navíc zobrazení využívá k ukládání samo o sobě velmi malý prostor. Je to proto, že jako obsah obsahuje pouze příkaz select.

Materializované zobrazení (Mview)

Toto je zvláštní pohled. Mviews jsou vytvářeny, když máme problémy s výkonem s názory. Když vytvoříme mview, provede jeho výběrový dotaz a uloží jeho výstup jako tabulku snímků. Když požadujeme data z Mview, není nutné znovu vykonávat jeho vybraný příkaz. Poskytuje výstup ze své tabulky obrázků. Proto je doba provádění mview kratší než zobrazení (pro stejný příkaz select). Mview však nelze použít po celou dobu, protože zobrazuje stejný výstup, který je uložen jako tabulka snímků. Mview bychom měli obnovit, abychom dostali jeho nejnovější výsledek.

Jaký je rozdíl mezi Zobrazit a Mview?

1. Mview vždy uloží svůj výstup jako tabulku snímků, když je vytvořen, ale pohled nevytvoří žádné tabulky.

2. Pohled nepotřebuje velký prostor k uložení svého obsahu, ale mview potřebuje relativně větší prostor než pohled k uložení jeho obsahu (jako tabulka snímků). 

3. Zobrazení trvá delší dobu provedení, ale mview trvá kratší dobu provedení než zobrazení (pro stejný příkaz select).

4. Mviews musí být aktualizován, aby získal jeho nejnovější data, ale názory vždy dávají jeho nejnovější data.

5. Schéma potřebuje „Vytvořit materializovaný pohled“ oprávnění vytvářet mviews a pro zobrazení to potřebuje „Vytvořit pohled“ privilegium.

6. Indexy mohou být vytvořeny na mviews pro zvýšení výkonu, ale indexy nemohou být vytvořeny na pohledech.