Skillnad Mellan Vy Och Materialiserad Vy

Skillnad Mellan Vy Och Materialiserad Vy
Skillnad Mellan Vy Och Materialiserad Vy

Video: Skillnad Mellan Vy Och Materialiserad Vy

Video: Skillnad Mellan Vy Och Materialiserad Vy
Video: Difference between view and materialized view 2024, Maj
Anonim

Visa mot materialiserad vy

Visningar och materialiserade vyer (mviews) är två typer av oracle-databasobjekt. Båda dessa objekt hänvisar till utvalda frågor. Dessa utvalda frågor fungerar som virtuella tabeller. Normalt hänvisar vyer och mviews till stora utvalda frågor som har en uppsättning kopplingar. Därför är en av de största fördelarna med vyer att vi kan lagra komplexa utvalda frågor som vyer. Därför kan vi dölja logiken bakom utvalda frågor från slutanvändarna. När vi behöver utföra det komplexa select-uttalandet måste vi bara utföra

välj * från visningsnamn

Se

Som nämnts tidigare är vyn en virtuell tabell som döljer en vald fråga. Dessa utvalda frågor körs inte förut. När vi kör ett valt uttalande från en vy, kör det det valda uttalandet som finns inne i vyn. Låt oss anta det valda påståendet för synkroppen som ett mycket komplext uttalande. Så när det körs tar det lite tid att köra (relativt mer tid). Dessutom använder view mycket litet utrymme för att lagra sig själv. Det beror på att det bara har ett utvalt uttalande som innehåll.

Materialiserad vy (Mview)

Detta är en speciell typ av vy. Mviews skapas när vi har prestandaproblem med vyer. När vi skapar en mview kör den sin urvalsfråga och lagrar dess utdata som en ögonblicksbildtabell. När vi begär data från Mview behöver det inte köra om sitt valda uttalande på nytt. Det ger utdata från sin ögonblicksbildstabell. Därför är exekveringstiden för mview mindre än view (för samma select-uttalande). Mviews kan dock inte användas hela tiden, eftersom den visar samma utdata, som lagras som en ögonblicksbildtabell. Vi bör uppdatera mview för att få sin senaste resultatuppsättning.

Vad är skillnaden mellan View och Mview?

1. Mview lagrar alltid utdata som en ögonblicksbildtabell när den skapas, men vy skapar inga tabeller.

2. Visa behöver inte stort utrymme för att lagra innehållet, men mview behöver relativt större utrymme än en vy för att lagra innehållet (som en ögonblicksbildtabell).

3. Visning tar längre körningstid, men mview tar mindre körningstid än visningar (för samma select-uttalande).

4. Mviews måste uppdateras för att få den senaste informationen, men vyer ger alltid de senaste uppgifterna.

5. Schemat behöver "skapa materialiserad vy" -behörighet för att skapa mviews, och för visningar behöver det "create view" -behörighet.

6. Index kan skapas på mviews för att få mer prestanda, men index kan inte skapas på vyer.

Rekommenderas: