Zobrazení vs materializované zobrazení
Pohledy a materializované pohledy (mviews) jsou dva typy objektů databáze Oracle. Oba tyto objekty odkazují na vybrané dotazy. Tyto výběrové dotazy fungují jako virtuální tabulky. Views a mviews normálně odkazují na velké výběrové dotazy, které mají sadu spojení. Jednou z hlavních výhod pohledů proto je, že můžeme ukládat složité výběrové dotazy jako pohledy. Proto můžeme před koncovými uživateli skrýt logiku za výběrovými dotazy. Když potřebujeme provést komplexní příkaz select, stačí provést
vybertez viewname
Zobrazit
Jak již bylo zmíněno, pohled je virtuální tabulka, která skrývá výběrový dotaz. Tyto výběrové dotazy nejsou předem provedeny. Když provedeme příkaz select z pohledu, provede se příkaz select, který je uvnitř těla pohledu. Předpokládejme, že příkaz select těla pohledu je velmi složitý. Když je tedy spuštěn, trvá jeho provedení nějakou dobu (relativně více času). View navíc ke svému uložení využívá velmi malý prostor. Je to proto, že má jako obsah pouze vybrané prohlášení.
Materializované zobrazení (Mview)
Toto je speciální typ zobrazení. Mviews se vytvářejí, když máme problémy s výkonem se zobrazeními. Když vytvoříme mview, provede svůj výběrový dotaz a uloží svůj výstup jako tabulku snímků. Když požadujeme data od Mview, nemusí znovu provádět příkaz select. Poskytuje výstup ze své tabulky snímků. Proto je doba provedení mview kratší než view (pro stejný příkaz select). Mviews však nelze používat neustále, protože zobrazuje stejný výstup, který je uložen jako tabulka snímků. Měli bychom aktualizovat mview, abychom získali nejnovější sadu výsledků.
Jaký je rozdíl mezi View a Mview?
1. Mview vždy ukládá svůj výstup jako tabulku snímků, když je vytvořen, ale view nevytváří žádné tabulky.
2. Pohled nepotřebuje velký prostor k uložení obsahu, ale mview potřebuje relativně větší prostor než pohled k uložení obsahu (jako tabulka snímků).
3. Zobrazení trvá déle, ale mview trvá kratší dobu než zobrazení (pro stejný příkaz select).
4. Mviews je třeba obnovit, abyste získali nejnovější data, ale zobrazení vždy poskytují nejnovější data.
5. Schéma potřebuje oprávnění „vytvořit materializovaný pohled“k vytváření mview a pro pohledy potřebuje oprávnění „vytvořit pohled“.
6. Indexy lze vytvářet na mviews, abyste získali vyšší výkon, ale indexy nelze vytvářet na pohledech.