View vs Materialized View
Views og materialized views (mviews) er to typer orakeldatabaseobjekter. Begge disse objektene refererer til utvalgsspørringer. Disse utvalgte spørringene fungerer som virtuelle tabeller. Norm alt refererer visninger og mviewer til store utvalgte spørringer, som har sett med sammenføyninger. Derfor er en av hovedfordelene med visninger at vi kan lagre komplekse utvalgte søk som visninger. Derfor kan vi skjule logikken bak utvalgsspørringene fra sluttbrukerne. Når vi trenger å utføre den komplekse select-setningen, må vi bare kjøre
velgfra visningsnavn
Vis
Som nevnt før, er view en virtuell tabell som skjuler et utvalgt søk. Disse utvalgte spørringene er ikke forhåndsutført. Når vi kjører en select-setning fra en visning, kjører den select-setningen som er inne i visningskroppen. La oss anta den utvalgte setningen til visningskroppen som en veldig kompleks setning. Så når det er utført, tar det litt tid å utføre (relativt mer tid). I tillegg bruker view svært liten plass til å lagre seg selv. Det er fordi den bare har et utvalgt utsagn som innhold.
Materialized View (Mview)
Dette er en spesiell type visning. Mviews opprettes når vi har ytelsesproblemer med views. Når vi oppretter en mview, utfører den valgspørringen og lagrer utdataene som en øyeblikksbildetabell. Når vi ber om data fra Mview, trenger den ikke å kjøre select-setningen på nytt. Den gir utdata fra øyeblikksbildetabellen. Derfor er utførelsestiden for mview kortere enn view (for samme select-setning). Men mviews kan ikke brukes hele tiden, da det viser samme utdata, som er lagret som en øyeblikksbildetabell. Vi bør oppdatere mview for å få det siste resultatet.
Hva er forskjellen mellom View og Mview?
1. Mview lagrer alltid utdataene som en øyeblikksbildetabell når den opprettes, men view oppretter ingen tabeller.
2. View trenger ikke stor plass for å lagre innholdet, men mview trenger relativt større plass enn en view for å lagre innholdet (som en øyeblikksbildetabell).
3. View tar lengre utførelsestid, men mview tar kortere utførelsestid enn views (for den samme select-setningen).
4. Mviews må oppdateres for å få de nyeste dataene, men visningene gir alltid de nyeste dataene.
5. Skjemaet trenger "opprett materialisert visning"-privilegium for å lage mviews, og for visninger trenger det "opprett visning"-privilegium.
6. Indekser kan opprettes på mviews for å oppnå bedre ytelse, men indekser kan ikke opprettes på views.