Lær deg hva som menes med databashåndteringssystemer innen datahåndtering. Vi vil gå gjennom hvordan begrepet defineres i enkle termer, historien bak, samt de forskjellige typene. Artikkelen vil også forklare forskjellen mellom databaser og DBMS, gi en oversikt over kjente DBMS-systemer og belyse fordeler, utfordringer og fremtidige trender innen databashåndtering.
Hva er et DBMS?
Et databasesystem (DBMS) er mellomvare som tillater programmerere, databaseadministratorer (DBAer), programvareapplikasjoner og sluttbrukere å lagre, organisere, få tilgang til, spørre og manipulere data i en database.
DBMSer er viktige fordi de tilbyr effektive og pålitelige mekanismer for å organisere, håndtere og bruke store mengder data, samtidig som de sikrer dataintegritet og tilbyr andre fordeler med databehandling.
I næringslivet gir databasesystemer databaseadministratorer (DBAer) en strukturert ramme som letter datadeling mellom ulike avdelinger, team og applikasjoner. DBMS gir ansatte kontrollert og organisert tilgang til data som de kan bruke til å drive innovasjon og hjelpe selskapet sitt med å opprettholde en konkurransefordel.
Historien bak databasesystemer
Historien til databasesystemer går tilbake til tidlig på 1960-tallet da datamaskiner begynte å bli brukt for databehandling. På den tiden ble konseptet vanligvis referert til som et informasjonshåndteringssystem.
Det første kommersielt tilgjengelige databasesystemet het Integrated Data Store (IDS). Det ble utviklet av Charles W. Bachman og hans team hos General Electric (GE) på slutten av 1960-tallet.
IDS var et hierarkisk DBMS som organiserte data i en tre-lignende struktur, med foreldre-barn-relasjoner mellom postene. Det tillot brukere å lagre, hente og håndtere data på en strukturert måte. IDS introduserte også konseptet med dataordbok, som definerte strukturen og relasjonene til dataene i databasen. Før IDS ble data vanligvis lagret i flate filer og det var ingen standard for hvordan filene skulle lagres, nås eller manipuleres.
Bachmans IDS ble til slutt overskygget av fremveksten av relasjonsdatabaser og Structured Query Language (SQL) på 1970-tallet. Siden den gang har DBMS-produkter og -tjenester gjennomgått kontinuerlige fremskritt som har forbedret datalagring, -henting og -håndtering.
Tidslinje: Utviklingen databasestyringssystemer
Årstall | Hendelse |
---|---|
1964 | Utviklingen av den første databasen, et Intergrated Data Store (IDS), av Charles Bachman |
1966 | IBM introduserer Information Management System (IMS), et felles utviklingsprosjekt med Rockwell og Caterpillar. |
1970 | Edgar F. Codd introduserer den relasjonelle modellen i en artikkel med tittelen “A Relational Model of Data for Large Shared Data Banks“. |
1974 | Structured Query Language (SQL) blir opprettet. |
1976 | Peter Chen introduserer entitets-relasjonsmodellen i sin artikkel “The Entity-Relationship Model – Toward a Unified View of Data“. |
1979 | Oracle lanserer den første kommersielle relasjonsdatabasen som bruker SQL. |
1980 | IBM introduserer System R, et SQL-basert relasjonelt databasesystem. |
1981 | SQL/DS, det første fullfunksjonelle DBMS som kjører på personlige datamaskiner, blir lansert av IBM. |
1983 | IBM lanserer første versjon av DB2 for stormaskiner. |
1986 | Object-Oriented Database System Manifesto blir publisert, noe som gir et betydelig dytt til utviklingen av objektorienterte databaser. |
1996 | PostgreSQL, et av de første åpen kildekode relasjonelle databasesystemene, blir lansert. |
1998 | MySQL, et annet betydelig åpen kildekode RDMS, blir lansert for Windows 95 og NT. |
1998 | Microsoft lanserer SQL Server 7.0, en fullstendig omskriving av deres DBMS. |
2000 | Internettstartups omfavner XML-databaser. |
2004 | Begrepet “NoSQL” blir populært, noe som fører til en ny generasjon av ikke-relasjonelle, distribuerte databaser. |
2006 | Google publiserer en artikkel om BigTable, deres interne NoSQL-database, noe som påvirker en ny bølge av åpen kildekode NoSQL-databaser. |
2012 | Amazon introduserer DynamoDB, en proprietær NoSQL-database. |
2013 | FoundationDB, en distribuert database designet for å håndtere store mengder strukturert data, blir lansert. |
2017 | Google kunngjør Spanner, en globalt distribuert database. |
2020-tallet | Kontinuerlig utvikling og innovasjon i DBMS-teknologi, med fokus på skybaserte databaser, kantdatabaser og forbedringer i AI-integrasjon for databasehåndtering. Blokkjededatabaser blir også et signifikant interessefelt. |
Database vs DBMS
Begrepene “database” og “databasesystem” brukes ofte om hverandre i uformelle samtaler. Det er sannsynligvis fordi når sluttbrukere samhandler med en database, er de ikke klar over den underliggende DBMS og dens distinkte rolle i håndtering av data. For å legge til i forvirringen, i noen tilfeller er DBMS direkte innebygd i applikasjonskoden. Dette gjør det enda mindre tydelig at et separat system er involvert.
For å skille mellom de to begrepene og bruke dem korrekt, er det nyttig å forstå deres respektive roller og funksjonaliteter: En database er en strukturert samling av data. Databasesystemet er programvaren som utviklere, sluttbrukere og applikasjoner bruker for å samhandle med en database.
DBMS-komponenter
Kjernekomponenten i alle DBMS-er kalles database-motoren. Det er programvaren som direkte samhandler med det underliggende lagringssystemet eller filsystemet og koordinerer interaksjonene mellom modulære underkomponenter som gjør det mulig for motoren å håndtere og manipulere data i databasesystemet. Dette inkluderer moduler for:
Sikkerhetskopiering og gjenoppretting: Disse modulene håndterer operasjoner for databacksikkerhet og gjenoppretting for å beskytte mot tap av data eller systemfeil. De inkluderer mekanismer for å opprette databackups, gjenopprette data og utføre gjenopprettingsoperasjoner.
Samtidighetskontroll og transaksjonsstyring: Disse modulene håndterer samtidig tilgang til databasen av flere brukere eller applikasjoner. De håndterer låsemekanismer og sikrer datakonsistens.
RDBMS vs. DBMS
Et relasjonelt databasestyringssystem (RDBMS) er et type databasestyringssystem. Alle RDBMS-er er DBMS-er, men ikke alle databasestyringssystemer er relasjonelle databasestyringssystemer.
DBMS | RDBMS |
---|---|
Forskjellige typer kan brukes til å håndtere ulike typer databasemodeller. | Kan kun håndtere den relasjonelle databasemodellen. |
Forskjellige typer kan lagre data i forskjellige strukturer. | Lagrer alltid data i tabeller med rader og kolonner. |
Forskjellige typer kan enten håndheve dataintegritet automatisk eller ikke. | Håndhever automatisk dataintegritet gjennom begrensninger som primærnøkkel, unik nøkkel og fremmednøkkel. |
Forskjellige typer kan bruke forskjellige språk eller teknikker for datamanipulering. | Bruker alltid SQL (Structured Query Language) |
Typer databestyringssystemer
Velkjente databasesystemer
Noen eksempler på velkjente DBMSer inkluderer:
Fordeler med å bruke DBMS
Utfordringer med databasehåndteringssystemer
Databasehåndteringssystemer (DBMS) har transformert hvordan både små og store bedrifter organiserer og administrerer data. Men, å implementere og håndtere et bedriftsorientert DBMS kan være komplekst, særlig når det skal integreres med andre systemer som Enterprise Resource Planning (ERP) og Customer Relationship Management (CRM).
I tillegg kan det være kostbart å innføre et nytt DBMS. Selv bedrifter av middels størrelse må ofte ansette eller kontraktere en erfaren databaseadministrator for å sikre korrekt konfigurasjon, vedlikehold og optimalisering av deres DBMS. Utgifter som lisensavgifter, maskinvareinfrastruktur, programvareoppdateringer og vedvarende vedlikeholdskostnader kan belaste budsjettene betydelig, noe som er en spesiell utfordring for mindre organisasjoner.