DBMS-scheman: internt, konceptuellt, externt

⚡ Smart sammanfattning

DBMS-scheman organiserar en databas i tre abstractionsnivåer så att användare, designers och administratörer alla arbetar på rätt djup. De interna, konceptuella och externa schemana bildar tillsammans ANSI-SPARC-arkitekturen med tre nivåer som ger dataoberoende.

  • 🧱 Kärnkoncept: Data abstraction döljer lagringskomplexiteten genom att dela upp databasbeskrivningen i tre separata schemanivåer.
  • 💾 Internt schema: Den lägsta nivån definierar fysisk lagring, poster, index och åtkomstvägar på disken.
  • 🗂️ Konceptuellt schema: Den enda logiska nivån beskriver alla entiteter, attribut, relationer och integritetsregler för hela databasen.
  • 👤 Externt schema: Många användarvyer visar bara den data en viss grupp behöver och döljer resten.
  • 🔗 Kartapings: Konceptuell-intern och extern-konceptuell kartapings kopplar samman nivåerna och möjliggör självständighet.
  • 🛡️ Dataoberoende: Lagring kan förändras utan att den logiska designen påverkas, och den logiska designen kan växa utan att befintliga vyer bryts.
  • 🎯 Huvudmål: Varje användare ser en anpassad vy medan administratören fritt kan justera den fysiska lagringen under.

DBMS-scheman 3-nivå Architecture

Vad är data-Abstraction i DBMS?

Databassystem bygger på komplexa datastrukturer. För att göra systemet effektivt för datainsamling och för att minska komplexiteten för användarna använder utvecklare metoden med dataabstraction. Dataabstraction döljer detaljerna om hur data lagras och underhålls, och exponerar bara det som varje typ av användare behöver se.

Det finns huvudsakligen tre nivåer av dataabstraction:

  1. Intern nivå: Den faktiska fysiska lagringsstrukturen och åtkomstvägarna.
  2. Konceptuell eller logisk nivå: Strukturen och begränsningarna för hela databasen.
  3. Extern eller vynivå: Beskriver olika användarvyer.

Dessa tre nivåer beskrivs av tre motsvarande scheman, tillsammans kända som ANSI-SPARC trenivåarkitektur. Ett schema är designen eller beskrivningen av databasen på en nivå; själva data kallas instansen. Diagrammet nedan visar hur nivåerna ligger ovanför varandra.

Trenivåschemaarkitektur i DBMS

Låt oss studera varje nivå i detalj, med början från lagringslagret och uppåt mot användaren.

Intern nivå / schema

Det interna schemat definierar databasens fysiska lagringsstruktur. Det interna schemat är en representation på mycket låg nivå av hela databasen. Det innehåller flera förekomster av flera typer av interna poster. I ANSI-termer kallas det även för en "lagrad post".

Fakta om internt schema:

  • Det interna schemat är den lägsta nivån av dataabstraction.
  • Den lagrar information om den faktiska representationen av hela databasen, till exempel den faktiska lagringen av data på disk i form av poster.
  • Den interna vyn visar vilka data som lagras i databasen och hur.
  • Den hanterar aldrig fysiska enheter direkt. Istället ser det interna schemat en fysisk enhet som en samling fysiska sidor.

När lagringslagret har definierats beskrivs den logiska designen som sitter ovanför det av det konceptuella schemat.

Konceptuellt schema / nivå

Det konceptuella schemat beskriver databasstrukturen för hela databasen för användargruppen. Detta schema döljer information om de fysiska lagringsstrukturerna och fokuserar på att beskriva datatyper, entiteter, relationer och så vidare.

Denna logiska nivå ligger mellan användarnivån och den fysiska lagringsvyn. Det finns bara en enda konceptuell vy av en enda databas.

Fakta om konceptuella scheman:

  • Definierar alla databasenheter, deras attribut och deras relationer.
  • Innehåller information om säkerhet och integritet.
  • På den konceptuella nivån måste de data som är tillgängliga för en användare finnas i, eller kunna härledas från, den fysiska nivån.

Den konceptuella designen passar naturligt för en relationsdatamodell, där entiteter blir tabeller och relationer blir nycklar. Över den konceptuella nivån ser enskilda användare bara den datadel som är relevant för dem, beskriven av det externa schemat.

Externt schema/nivå

Ett externt schema beskriver den del av databasen som en specifik användare är intresserad av. Det döljer orelaterade detaljer i databasen från användaren. Det kan finnas ett "n" antal externa vyer för varje databas.

Varje extern vy definieras med hjälp av ett externt schema, som består av definitioner av olika typer av externa poster för den specifika vyn.

En extern vy är helt enkelt innehållet i databasen som det ses av en specifik användare. Till exempel kommer en användare från försäljningsavdelningen endast att se försäljningsrelaterad data.

Fakta om externt schema:

  • Den externa nivån är endast relaterad till den data som visas av specifika slutanvändare.
  • Denna nivå inkluderar ett eller flera externa scheman.
  • Den externa schemanivån är närmast användaren.
  • Det externa schemat beskriver det segment av databasen som behövs för en viss användargrupp och döljer återstående detaljer från den gruppen.

Trenivåschema ArchiJämförd struktur

De tre nivåerna är lättast att komma ihåg sida vid sida. Varje nivå besvarar en annan fråga, riktar sig till en annan målgrupp och ändras av olika skäl.

Aspect Internt schema Konceptuellt schema Externt schema
Även kallad Fysisk nivå Logisk nivå Vynivå
beskriver Hur data lagras på disk Vilka data och relationer finns Vad en användargrupp ser
publik Databasadministratör Databasdesigner Slutanvändare
Hur många One One Många
hudar Ingenting under det Fysisk förvaring Icke-relaterad data

Nivåerna fungerar inte isolerat. De är sammankopplade med en karta.pings, vilka är mekanismen som ger dataoberoende.

KartapingMellan schemanivåerna

En kartaping är den korrespondens som DBMS upprätthåller mellan två angränsande nivåer, så att en begäran på en högre nivå kan översättas till en åtgärd på en lägre nivå. Trenivåarkitekturen använder två mappningarpings:

  • Konceptuell/intern kartaping: kopplar den logiska designen till den fysiska lagringen. Den definierar hur entiteterna och attributen i det konceptuella schemat motsvarar de lagrade posterna och filerna i det interna schemat. När lagringen ändras, är det bara denna karta somping uppdateras.
  • Extern/konceptuell kartaping: kopplar varje användarvy till den övergripande logiska designen. Den definierar hur fälten som en användare ser relaterar till entiteterna i det konceptuella schemat. När den logiska designen växer, kommer endast den berörda kartan attpingär uppdaterade.

Eftersom dessa kartorpings absorberar förändringar, lagring kan omorganiseras utan att användarprogram ska skrivas om, vilket är precis det dataoberoende arkitekturen är utformad för att tillhandahålla.

Målet med 3-nivåschemat Architecture

Här är några mål med att använda arkitekturen med tre scheman:

  • Varje användare ska kunna komma åt samma data men se en anpassad vy av den.
  • Användaren ska inte behöva hantera detaljer i den fysiska databasens lagring direkt.
  • Databasadministratören ska kunna ändra databasens lagringsstruktur utan att störa användarnas vyer.
  • Databasens interna struktur bör förbli opåverkad när ändringar görs i de fysiska aspekterna av lagringen.

Fördelar med ett databasschema

  • Du kan hantera data oberoende av den fysiska lagringen.
  • Snabbare migrering till nya grafiska miljöer.
  • Ocuco-landskapet DBMS-arkitektur låter dig göra ändringar på presentationsnivå utan att påverka de andra två lagren.
  • Eftersom varje nivå är separat är det möjligt att använda olika uppsättningar av utvecklare.
  • Det är säkrare eftersom klienten inte har direktåtkomst till databasens affärslogik.
  • Om en nivå misslyckas sker ingen dataförlust, eftersom du alltid är skyddad genom att komma åt den andra nivån.

Nackdelar med ett databasschema

  • Ett komplett databasschema är en komplex struktur som är svår för alla att förstå.
  • Det är svårt att sätta upp och underhålla.
  • Den fysiska separationen av nivåerna kan påverka databasens prestanda.

Vanliga frågor

Ett schema är databasens övergripande design och ändras sällan. En instans är de faktiska data som lagras vid en given tidpunkt, vilka ändras vid varje insättning, uppdatering eller borttagning.

Det konceptuella schemat är den enda överenskomna designen av hela databasen. Varje användargrupp behöver en annan del av den, så många externa scheman härleds från just det konceptuella schemat.

De två kartornapings absorberar förändring. En lagringsändring uppdaterar endast den konceptuellt-interna kartanping, och en logisk ändring uppdaterar endast den externt-konceptuella kartanpings, så högre nivåer förblir intakta.

Ja. AI kan omvandla en skriftlig beskrivning till ett utkast till entitetsrelation på konceptuell nivå, och föreslå tabeller, nycklar och relationer. En designer bör fortfarande granska normaliserings- och integritetsregler.

Det externa schemat, eller vynivån, är närmast användaren. Det presenterar endast de data som en viss grupp behöver och döljer både den fullständiga logiska designen och den fysiska lagringen under den.

Sammanfatta detta inlägg med: