DBMS-skemaer: Interne, konceptuelle, eksterne
⚡ Smart opsummering
DBMS-skemaer organiserer en database i tre ABStracniveauer, så brugere, designere og administratorer hver især arbejder i den rette dybde. De interne, konceptuelle og eksterne skemaer danner tilsammen ANSI-SPARC-arkitekturen på tre niveauer, der leverer datauafhængighed.
Hvad er data-Abstraction i DBMS?
Databasesystemer er bygget på komplekse datastrukturer. For at gøre systemet effektivt til datahentning og for at reducere kompleksiteten for brugerne bruger udviklere metoden med dataabstracDataabs.traction skjuler detaljerne om, hvordan data opbevares og vedligeholdes, og eksponerer kun det, som hver type bruger har brug for at se.
Der er primært tre niveauer af data abstraction:
- Internt niveau: Den faktiske fysiske lagerstruktur og adgangsstier.
- Konceptuelt eller logisk niveau: Strukturen og begrænsningerne for hele databasen.
- Eksternt eller visningsniveau: Beskriver forskellige brugersynspunkter.
Disse tre niveauer beskrives af tre tilsvarende skemaer, der tilsammen kaldes ANSI-SPARC tre-niveau arkitekturen. Et skema er designet eller beskrivelsen af databasen på ét niveau; selve dataene kaldes instansen. Diagrammet nedenfor viser, hvordan niveauerne er placeret oven på hinanden.
Lad os studere hvert niveau i detaljer, startende fra lagringslaget og opad mod brugeren.
Internt niveau / skema
Det interne skema definerer databasens fysiske lagringsstruktur. Det interne skema er en meget lavniveaurepræsentation af hele databasen. Det indeholder flere forekomster af flere typer interne poster. I ANSI-termer kaldes det også en "lagret post".
Fakta om internt skema:
- Det interne skema er det laveste niveau af data abstraction.
- Den gemmer oplysninger om den faktiske repræsentation af hele databasen, såsom den faktiske lagring af dataene på disken i form af poster.
- Det interne overblik fortæller os, hvilke data der er gemt i databasen, og hvordan.
- Den beskæftiger sig aldrig direkte med fysiske enheder. I stedet ser det interne skema en fysisk enhed som en samling af fysiske sider.
Når lagringslaget er defineret, beskrives det logiske design, der ligger ovenover, af det konceptuelle skema.
Konceptuelt skema / niveau
Det konceptuelle skema beskriver databasestrukturen for hele databasen for brugerfællesskabet. Dette skema skjuler information om de fysiske lagringsstrukturer og fokuserer på at beskrive datatyper, enheder, relationer og så videre.
Dette logiske niveau ligger mellem brugerniveauet og den fysiske lagringsvisning. Der er kun én konceptuel visning af en enkelt database.
Fakta om konceptuelt skema:
- Definerer alle databaseenheder, deres attributter og deres relationer.
- Indeholder oplysninger om sikkerhed og integritet.
- På det konceptuelle niveau skal de data, der er tilgængelige for en bruger, være indeholdt i eller kunne udledes fra det fysiske niveau.
Det konceptuelle design passer naturligt til en relationel datamodel, hvor enheder bliver til tabeller, og relationer bliver til nøgler. Over det konceptuelle niveau ser individuelle brugere kun det dataudsnit, der er relevant for dem, beskrevet af det eksterne skema.
Eksternt skema / niveau
Et eksternt skema beskriver den del af databasen, som en specifik bruger er interesseret i. Det skjuler de irrelevante detaljer i databasen for brugeren. Der kan være et "n" antal eksterne visninger for hver database.
Hver ekstern visning er defineret ved hjælp af et eksternt skema, som består af definitioner af forskellige typer eksterne poster for den specifikke visning.
En ekstern visning er simpelthen indholdet af databasen, som det ses af en bestemt bruger. For eksempel vil en bruger fra salgsafdelingen kun se salgsrelaterede data.
Fakta om eksternt skema:
- Det eksterne niveau er kun relateret til de data, der ses af specifikke slutbrugere.
- Dette niveau omfatter et eller flere eksterne skemaer.
- Det eksterne skemaniveau er tættest på brugeren.
- Det eksterne skema beskriver det segment af databasen, der er nødvendigt for en bestemt brugergruppe, og skjuler de resterende detaljer fra den pågældende gruppe.
Tre-niveau skema ArchiTektur Sammenlignet
De tre niveauer er nemmest at huske side om side. Hvert niveau besvarer et forskelligt spørgsmål, er rettet mod et forskelligt publikum og ændrer sig af forskellige årsager.
| Aspect | Internt skema | Konceptuelt skema | Eksternt skema |
|---|---|---|---|
| Også kaldet | Fysisk niveau | Logisk niveau | Visningsniveau |
| beskriver | Hvordan data gemmes på disken | Hvilke data og relationer findes der | Hvad en brugergruppe ser |
| Publikum | Databaseadministrator | Databasedesigner | Slutbruger |
| Hvor mange | Én | Én | Mange |
| huder | Intet under det | Fysisk opbevaring | Urelaterede data |
Niveauerne fungerer ikke isoleret. De er forbundet med et kort.pings, som er den mekanisme, der leverer datauafhængighed.
KortpingMellem skemaniveauerne
Et kortping er den korrespondance, som DBMS'en opretholder mellem to tilstødende niveauer, så en anmodning på et højere niveau kan oversættes til en handling på et lavere niveau. Treniveauarkitekturen bruger to kort.pings:
- Konceptuelt/internt kortping: forbinder det logiske design med det fysiske lager. Det definerer, hvordan enhederne og attributterne i det konceptuelle skema svarer til de lagrede poster og filer i det interne skema. Når lageret ændres, er det kun denne kortlægning, derping er opdateret.
- Eksternt/konceptuelt kortping: forbinder hver brugervisning med det overordnede logiske design. Den definerer, hvordan de felter, en bruger ser, relaterer sig til enhederne i det konceptuelle skema. Når det logiske design vokser, er det kun det berørte kort, derpings er opdaterede.
Fordi disse kortpingVed at absorbere ændringer kan lagring omorganiseres uden at omskrive brugerprogrammer, hvilket er præcis det datauafhængighed arkitekturen er designet til at levere.
Målet med 3-niveau-skemaet Architecture
Her er nogle målsætninger med at bruge arkitekturen med tre skemaer:
- Alle brugere skal kunne få adgang til de samme data, men se en tilpasset visning af dem.
- Brugeren burde ikke have behov for at håndtere detaljer om fysisk databaselagring direkte.
- Databaseadministratoren skal kunne ændre databasens lagringsstruktur uden at forstyrre brugernes synspunkter.
- Databasens interne struktur bør forblive uændret, når der foretages ændringer i de fysiske aspekter af lagringen.
Fordele ved et databaseskema
- Du kan administrere data uafhængigt af den fysiske lagring.
- Hurtigere migrering til nye grafiske miljøer.
- DBMS-arkitektur giver dig mulighed for at foretage ændringer på præsentationsniveau uden at påvirke de to andre lag.
- Fordi hvert niveau er separat, er det muligt at bruge forskellige sæt af udviklere.
- Det er mere sikkert, da klienten ikke har direkte adgang til databasens forretningslogik.
- Hvis ét niveau fejler, er der intet datatab, fordi du altid er sikret ved at få adgang til det andet niveau.
Ulemper ved et databaseskema
- Et komplet databaseskema er en kompleks struktur, der er vanskelig for alle at forstå.
- Det er vanskeligt at opsætte og vedligeholde.
- Den fysiske adskillelse af niveauerne kan påvirke databasens ydeevne.


