Et Database Management System (DBMS) er et programvaresystem som er designet for å administrere og organisere data på en strukturert måte. Den lar brukere opprette, endre og søke etter en database, samt administrere sikkerheten og tilgangskontrollene for den databasen.
DBMS gir et miljø for å lagre og hente dataene på en oppfinnsom og effektiv måte.
Nøkkelfunksjoner i DBMS
- Datamodellering: En DBMS gir verktøy for å lage og endre datamodeller, som definerer strukturen og relasjonene til dataene i en database.
- Datalagring og henting: En DBMS er ansvarlig for å lagre og hente data fra databasen, og kan tilby ulike metoder for å søke og spørre etter dataene.
- Samtidig kontroll: En DBMS gir mekanismer for å kontrollere samtidig tilgang til databasen, for å sikre at flere brukere kan få tilgang til dataene uten å komme i konflikt med hverandre.
- Dataintegritet og sikkerhet: Et DBMS gir verktøy for å håndheve dataintegritet og sikkerhetsbegrensninger, for eksempel begrensninger på verdiene til data og tilgangskontroller som begrenser hvem som kan få tilgang til dataene.
- Sikkerhetskopiering og gjenoppretting: En DBMS gir mekanismer for sikkerhetskopiering og gjenoppretting av data i tilfelle systemfeil.
- DBMS kan klassifiseres i to typer: Relational Database Management System (RDBMS) og Ikke-Relational Database Management System (NoSQL eller Non-SQL)
- RDBMS: Data er organisert i form av tabeller og hver tabell har et sett med rader og kolonner. Dataene er relatert til hverandre gjennom primær- og fremmednøkler.
- NoSQL: Data er organisert i form av nøkkel-verdi-par, dokumenter, grafer eller kolonnebasert. Disse er designet for å håndtere store scenarier med høy ytelse.
En database er en samling av innbyrdes relaterte data som hjelper til med effektiv henting, innsetting og sletting av data fra databasen og organiserer dataene i form av tabeller, visninger, skjemaer, rapporter osv. For eksempel organiserer en universitetsdatabase data om studenter, fakultet, admin ansatte, etc. som hjelper til med effektiv gjenfinning, innsetting og sletting av data fra den.
Databasespråk
- Datadefinisjonsspråk
- Datamanipulasjonsspråk
- Datakontrollspråk
- Transaksjonskontrollspråk
Datadefinisjonsspråk
DDL er det korte navnet på Data Definition Language, som omhandler databaseskjemaer og beskrivelser av hvordan dataene skal ligge i databasen.
- SKAPE: å lage en database og dens objekter som (tabell, indeks, visninger, lagringsprosedyre, funksjon og utløsere)
- ENDRE: endrer strukturen til den eksisterende databasen
- MISTE: slette objekter fra databasen
- TRUNCATE: fjerne alle poster fra en tabell, inkludert alle plassene som er tildelt for postene, fjernes
- KOMMENTAR: legge til kommentarer til dataordboken
- RENAME: gi nytt navn til et objekt
Datamanipulasjonsspråk
DML er det korte navnet på Data Manipulation Language som omhandler datamanipulering og inkluderer de fleste vanlige SQL-setninger som SELECT, INSERT, UPDATE, DELETE, etc., og det brukes til å lagre, modifisere, hente, slette og oppdatere data i en database. Dataspørringsspråk (DQL) er undersettet av Data Manipulation Language. Den vanligste kommandoen til DQL er PLUKKE UT uttalelse. SELECT-setningshjelp for å hente data fra tabellen uten å endre noe i tabellen.
- PLUKKE UT: hente data fra en database
- SETT INN: sette inn data i en tabell
- OPPDATER: oppdaterer eksisterende data i en tabell
- SLETT: Slett alle poster fra en databasetabell
- SLÅ SAMMEN: UPSERT-operasjon (sett inn eller oppdater)
- ANROP: kall et PL/SQL- eller Java-underprogram
- FORKLAR PLAN: tolkning av datatilgangsbanen
- LÅSETABELL: samtidighetskontroll
Datakontrollspråk
DCL er en forkortelse for Data Control Language som fungerer som en tilgangsspesifikasjoner til databasen.(i utgangspunktet for å gi og tilbakekalle tillatelser til brukere i databasen
- STIPEND: gi tillatelser til brukeren for å kjøre DML (SELECT, INSERT, DELETE,...) kommandoer på bordet
- REVOKE: tilbakekalle tillatelser til brukeren for å kjøre DML (SELECT, INSERT, DELETE,...) kommando på den angitte tabellen
Transaksjonskontrollspråk
TCL er en forkortelse for Transactional Control Language som fungerer som en forvalter for alle typer transaksjonsdata og alle transaksjoner. Noen av kommandoene til TCL er
- Rull tilbake: Brukes til å avbryte eller angre endringer gjort i databasen
- Begå: Den brukes til å bruke eller lagre endringer i databasen
- Lagre punkt: Den brukes til å lagre dataene midlertidig i databasen
Data Query Language (DQL):
Dataspørringsspråk (DQL) er delmengden av Datamanipulasjonsspråk . Den vanligste kommandoen til DQL er 1the SELECT-setning . SELECT-setningen hjelper oss med å hente dataene fra tabellen uten å endre noe eller modifisere tabellen. DQL er svært viktig for å hente essensielle data fra en database.
Databasestyringssystem
Programvaren som brukes til å administrere databaser kalles Database Management System (DBMS). For eksempel er MySQL, Oracle, etc. populære kommersielle DBMS som brukes i forskjellige applikasjoner. DBMS tillater brukere følgende oppgaver:
- Datadefinisjon: Det hjelper med å lage, modifisere og fjerne definisjoner som definerer organiseringen av data i databasen.
- Dataoppdatering: Det hjelper med innsetting, modifisering og sletting av de faktiske dataene i databasen.
- Datainnhenting: Det hjelper med å hente data fra databasen som kan brukes av applikasjoner til ulike formål.
- Brukeradministrasjon: Det hjelper med å registrere og overvåke brukere, håndheve datasikkerhet, overvåke ytelse, opprettholde dataintegritet, håndtere samtidighetskontroll og gjenopprette informasjon ødelagt av uventet feil.
Applikasjoner av DBMS:
- Bedriftsinformasjon: Salg, regnskap, menneskelige ressurser, produksjon, nettforhandlere.
- Bank- og finanssektoren: Banker som vedlikeholder kundeopplysninger, kontoer, lån, banktransaksjoner, kredittkorttransaksjoner. Økonomi: Lagring av informasjon om salg og beholdning, kjøp av finansielle aksjer og obligasjoner.
- Universitet: Vedlikeholde informasjonen om påmeldt informasjon om studentkurs, studentkarakterer, personalroller.
- Flyselskaper: Reservasjoner og tidsplaner.
- Telekommunikasjon: Vedlikehold av forhåndsbetalte, etterbetalte regninger.
Paradigmeskifte fra filsystem til DBMS
Filsystem administrerer data ved hjelp av filer på en harddisk. Brukere har lov til å opprette, slette og oppdatere filene i henhold til deres krav. La oss vurdere eksemplet med filbasert universitetsstyringssystem. Data om studenter er tilgjengelige for deres respektive avdelinger, akademisk seksjon, resultatseksjon, kontoseksjon, herbergekontor, osv. Noen av dataene er felles for alle seksjoner som rullenummer, navn, farsnavn, adresse og telefonnummer til studenter, men noen data er kun tilgjengelig for en bestemt seksjon, som Hostel-tildelingsnummer som er en del av vandrerhjemmets kontor. La oss diskutere problemene med dette systemet:
- Redundans av data: Data sies å være overflødige hvis de samme dataene kopieres mange steder. Hvis en student ønsker å endre telefonnummeret sitt, må han eller hun få det oppdatert i ulike seksjoner. På samme måte må gamle poster slettes fra alle seksjoner som representerer den studenten.
- Inkonsekvens av data: Data sies å være inkonsistente hvis flere kopier av samme data ikke samsvarer med hverandre. Hvis telefonnummeret er forskjellig i kontoseksjonen og akademikerdelen, vil det være inkonsekvent. Inkonsekvens kan skyldes skrivefeil eller ikke oppdatering av alle kopier av de samme dataene.
- Vanskelig datatilgang: En bruker bør vite den nøyaktige plasseringen av filen for å få tilgang til data, så prosessen er veldig tungvint og kjedelig. Hvis brukeren ønsker å søke i studentherbergetildelingsnummeret til en student fra 10 000 usorterte studenters poster, hvor vanskelig kan det være.
- Uautorisert tilgang: Filsystemer kan føre til uautorisert tilgang til data. Hvis en student får tilgang til en fil som har hans karakterer, kan han endre den på en uautorisert måte.
- Ingen samtidig tilgang: Tilgang til samme data av flere brukere samtidig er kjent som samtidighet. Filsystemet tillater ikke samtidighet da data kun kan nås av én bruker om gangen.
- Ingen sikkerhetskopiering og gjenoppretting: Filsystemet inneholder ingen sikkerhetskopiering og gjenoppretting av data hvis en fil går tapt eller blir ødelagt.
Fordeler med DBMS
- Dataorganisasjon: Et DBMS gir mulighet for organisering og lagring av data på en strukturert måte, noe som gjør det enkelt å hente og spørre etter dataene etter behov.
- Dataintegritet: Et DBMS gir mekanismer for å håndheve dataintegritetsbegrensninger, for eksempel begrensninger på verdiene til data og tilgangskontroller som begrenser hvem som kan få tilgang til dataene.
- Samtidig tilgang: En DBMS gir mekanismer for å kontrollere samtidig tilgang til databasen, for å sikre at flere brukere kan få tilgang til dataene uten å komme i konflikt med hverandre.
- Datasikkerhet: Et DBMS gir verktøy for å administrere sikkerheten til dataene, for eksempel å kontrollere tilgangen til dataene og kryptere sensitive data.
- Sikkerhetskopiering og gjenoppretting: En DBMS gir mekanismer for sikkerhetskopiering og gjenoppretting av data i tilfelle systemfeil.
- Datadeling: En DBMS lar flere brukere få tilgang til og dele de samme dataene, noe som kan være nyttig i et samarbeidende arbeidsmiljø.
Ulemper med DBMS
- Kompleksitet: DBMS kan være komplisert å sette opp og vedlikeholde, og krever spesialisert kunnskap og ferdigheter.
- Ytelsesoverhead: Bruken av en DBMS kan legge til overhead til ytelsen til en applikasjon, spesielt i tilfeller der høye nivåer av samtidighet er nødvendig.
- Skalerbarhet: Bruken av en DBMS kan begrense skalerbarheten til en applikasjon, siden den krever bruk av låsing og andre synkroniseringsmekanismer for å sikre datakonsistens.
- Koste: Kostnaden for å kjøpe, vedlikeholde og oppgradere et DBMS kan være høye, spesielt for store eller komplekse systemer.
- Tilfeller med begrenset bruk: Ikke alle brukstilfeller er egnet for en DBMS, noen løsninger trenger ikke høy pålitelighet, konsistens eller sikkerhet og kan være bedre tjent med andre typer datalagring.
Dette er hovedårsakene som gjorde et skifte fra filsystem til DBMS. Se også
Et Database Management System (DBMS) er et programvaresystem som lar brukere opprette, vedlikeholde og administrere databaser. Det er en samling programmer som gjør det mulig for brukere å få tilgang til og manipulere data i en database. En DBMS brukes til å lagre, hente og manipulere data på en måte som gir sikkerhet, personvern og pålitelighet.
Flere typer DBMS
- Relasjonell DBMS (RDBMS): En RDBMS lagrer data i tabeller med rader og kolonner, og bruker SQL (Structured Query Language) for å manipulere dataene.
- Objektorientert DBMS (OODBMS): En OODBMS lagrer data som objekter, som kan manipuleres ved hjelp av objektorienterte programmeringsspråk.
- NoSQL DBMS: En NoSQL DBMS lagrer data i ikke-relasjonelle datastrukturer, for eksempel nøkkelverdi-par, dokumentbaserte modeller eller grafmodeller.
Totalt sett er en DBMS et kraftig verktøy for å administrere og manipulere data, og brukes i mange bransjer og applikasjoner, som finans, helsevesen, detaljhandel og mer.
- Databasestyringssystem – Introduksjon | Sett 2
- Alle DBMS-artikler
- DBMS-quiz