Verskil tussen aansig en gematerialiseerde aansig

Verskil tussen aansig en gematerialiseerde aansig
Verskil tussen aansig en gematerialiseerde aansig

Video: Verskil tussen aansig en gematerialiseerde aansig

Video: Verskil tussen aansig en gematerialiseerde aansig
Video: ONE MINUTE ENGLISH! Genius vs Ingenious (EPISODE 37) 2024, November
Anonim

View vs Materialized View

Aansigte en gematerialiseerde aansigte (mviews) is twee tipes orakeldatabasisobjekte. Albei hierdie voorwerpe verwys na keurnavrae. Hierdie uitgesoekte navrae dien as virtuele tabelle. Normaalweg verwys aansigte en mviews groot uitgesoekte navrae, wat 'n stel verbindings het. Daarom is een van die belangrikste voordele van aansigte dat ons komplekse uitgesoekte navrae as aansigte kan stoor. Daarom kan ons die logika agter die uitgesoekte navrae vir die eindgebruikers verberg. Wanneer ons die komplekse kiesstelling moet uitvoer, hoef ons netuit te voer

kiesvan aansignaam

Bekyk

Soos voorheen genoem, is view 'n virtuele tabel wat 'n uitgesoekte navraag versteek. Hierdie uitgesoekte navrae word nie vooraf uitgevoer nie. Wanneer ons 'n selekteerde stelling vanaf 'n aansig uitvoer, voer dit die kiesstelling uit wat binne die aansigliggaam is. Kom ons neem die uitgesoekte stelling van die sieningsliggaam aan as 'n baie komplekse stelling. So wanneer dit uitgevoer word, neem dit 'n geruime tyd om uit te voer (relatief meer tyd). Boonop gebruik view baie klein spasie om homself te stoor. Dit is omdat dit slegs 'n uitgesoekte stelling as inhoud het.

Materialized View (Mview)

Dit is 'n spesiale tipe uitsig. Mviews word geskep wanneer ons prestasieprobleme met sienings het. Wanneer ons 'n mview skep, voer dit sy seleksie-navraag uit en stoor sy uitvoer as 'n momentopname-tabel. Wanneer ons data van Mview versoek, hoef dit nie sy kiesstelling weer uit te voer nie. Dit gee die uitset vanaf sy momentopnametabel. Daarom is die uitvoeringstyd van mview minder as view (vir dieselfde selektiewe stelling). Mviews kan egter nie altyd gebruik word nie, aangesien dit dieselfde uitvoer toon, wat as 'n momentopnametabel gestoor word. Ons moet die mview verfris om sy jongste resultaatstel te kry.

Wat is die verskil tussen View en Mview?

1. Mview stoor altyd sy uitvoer as 'n momentopname-tabel wanneer dit geskep word, maar aansig skep geen tabelle nie.

2. View het nie groot spasie nodig om sy inhoud te stoor nie, maar mview benodig relatief groter spasie as 'n aansig om sy inhoud te stoor (as 'n momentopname-tabel).

3. Aansig neem langer uitvoeringstyd, maar mview neem kleiner uitvoeringstyd as aansigte (vir dieselfde uitgesoekte stelling).

4. Mviews moet verfris word om sy jongste data te kry, maar kyke gee altyd sy jongste data.

5. Die skema benodig "create materialized view"-voorreg om mviews te skep, en vir aansigte benodig dit "create view"-voorreg.

6. Indekse kan op mviews geskep word om meer prestasie te verkry, maar indekse kan nie op views geskep word nie.

Aanbeveel: