Vad är en materialiserad syn?

Den materialiserade vyn är ett databasobjekt där information som begärs från en databas visas. En databas är en samling information ordnad i tabellformat. Det gör det möjligt för slutanvändaren att hämta data genom frågor som ställs i formatet Structured Query Language (SQL). Detta gör det möjligt för slutanvändaren att göra förfrågningar från databasen för specifika typer av information, till exempel en lista över anställda under 30 år. Denna information skulle visas tillgängligt i den materialiserade vyn, förutsatt att det finns en konkret, virtuell tabell som innehåller den fullständiga resultatlista.

När slutanvändaren skriver in en fråga i databasen, börjar programmet omedelbart sålla igenom sina poster. Den jämför den sökta informationen mot varje enskild post i de valda tabellerna. Så, för att fortsätta med det föregående exemplet, när man letar efter anställda under 30, går databasen till tabellen ”Anställda”, och från början undersöker den födelsedatumet för var och en och jämför det med det aktuella datumet för att komma fram till en ålder . Alla anställda under 30 år flyttas till det materialiserade vybordet. Först då ”presenteras” den slutgiltiga materialiserade vylistan för slutanvändaren, vilket ger ett fullständigt svar på den begärda frågan.

Till skillnad från en traditionell vy för en relationsdatabas, som lagrar frågeinformation i en temporär tabell, lagrar den materialiserade vyn den efterfrågade informationen i en faktisk, permanent, konkret tabell. Informationen som lagras i den materialiserade vyn cachelagras i systemminnet, vilket gör det möjligt för slutanvändaren att antingen göra ändringar eller uppdatera data från tid till annan. Till exempel, om samma exempelförfrågan – alla anställda under 30 – görs dag ett, finns den kvar i systemet som en materialiserad vy från den punkten och framåt.

Fördelen med detta är att det går mycket snabbare att komma åt informationen igen; informationen är redan lagrad i systemet. Den primära nackdelen är att informationen kan bli inaktuell eller förfalla mellan åtkomsttider. Till exempel, om slutanvändaren återkommer till samma materialiserade vy dag tio, kan saker och ting ha förändrats: någon kanske precis har fyllt 30. Den materialiserade vyversionen kommer inte att ta hänsyn till dessa ändringar förrän hela frågan har körts igen .