Wat is een database? Definitie en typen
โก Slimme samenvatting
Wat is een database? Een database is een systematische, gestructureerde verzameling gegevens die elektronische opslag, ophalen en beheer mogelijk maakt. Databases vormen de basis van alledaagse systemen, van telefoonboeken tot sociale netwerken, en worden beheerd via software die een databasemanagementsysteem (DBMS) wordt genoemd.
Wat zijn gegevens?
In simpele termen, gegevens Gegevens zijn feiten over een object van interesse. Je naam, leeftijd, lengte en gewicht zijn allemaal gegevens over jou. Foto's, afbeeldingen, bestanden en pdf's kunnen ook als gegevens worden beschouwd, omdat ze allemaal informatie bevatten die kan worden opgeslagen en verwerkt.
Wat is een database?
A databank Een database is een systematische verzameling van gegevens. Databases ondersteunen de elektronische opslag, het ophalen en de bewerking van gegevens, waardoor gegevensbeheer op grote schaal eenvoudig wordt.
Laten we een paar bekende voorbeelden bekijken. Een online telefoonboek gebruikt een database om mensen, telefoonnummers en contactgegevens op te slaan. Een energieleverancier gebruikt een database voor facturering, klantklachten en storingsgeschiedenis. Facebook slaat leden, vriendschappen, berichten, advertenties en nog veel meer op โ alles bevindt zich in databases. Het patroon is in alle sectoren hetzelfde: organiseer informatie zodat applicaties en mensen deze betrouwbaar kunnen raadplegen.
Soorten databases
De meest voorkomende databasetypen worden hieronder samengevat. Elk type is geschikt voor een specifieke datastructuur en werklast.
Gedistribueerde databases
Een gedistribueerde database verspreidt gegevens over meerdere locaties. Elke locatie bewaart zijn eigen deel van de gegevens, terwijl clients รฉรฉn logische database zien. Dit model wordt vaak gebruikt in wereldwijde applicaties die een lage latentie en lokale beschikbaarheid vereisen.
Relationele databases
Een relationele database slaat gegevens op in tabellen met rijen en kolommen en gebruikt sleutels om de ene tabel aan de andere te koppelen. Vaak afgekort tot RDBMS, blijft het de meest populaire database. dbms familie op de markt. Voorbeelden zijn: MySQL, Oracle Database, PostgreSQLen Microsoft SQL Server.
Objectgeoriรซnteerde databases
Objectgeoriรซnteerde databases slaan gegevens op als objecten, elk met attributen en methoden die bepalen welke bewerkingen op de gegevens zijn toegestaan. Ze sluiten naadloos aan op objectgeoriรซnteerde programmeertalen en maken een ORM-laag overbodig.
Gecentraliseerde database
Een gecentraliseerde database bewaart alle gegevens op รฉรฉn centrale server. Gebruikers maken vanuit verschillende locaties verbinding met dezelfde database, wat het beheer vereenvoudigt, maar de server tot een potentieel knelpunt maakt.
Open source-databases
Open-source databases publiceren hun broncode onder een permissieve licentie, zodat iedereen ze kan gebruiken, wijzigen en verspreiden. MySQL, PostgreSQL, SQLite, MariaDBen MongoDB zijn veelgebruikte voorbeelden.
Clouddatabases
Een clouddatabase is geoptimaliseerd voor gevirtualiseerde, on-demand infrastructuur. Het wordt geleverd als een beheerde service, schaalt opslag en rekenkracht elastisch en biedt hoge beschikbaarheid door middel van ingebouwde replicatie. Voorbeelden zijn: Amazon RDS, Azure SQL-database, en Google Cloud Moersleutel.
Datawarehouses
A datawarehouse Het centraliseert historische en cumulatieve gegevens uit diverse bronsystemen ter ondersteuning van besluitvorming, rapportage en prognoses. Het vereenvoudigt analyses door de organisatie te voorzien van รฉรฉn betrouwbare versie van de waarheid.
NoSQL-databases
NoSQL-databases verwerken zeer grote, vaak ongestructureerde datasets die niet netjes in rijen en kolommen passen. Document-, key-value-, column-family- en graph-databases behandelen elk een ander toegangspatroon en bieden horizontale schaalbaarheid die traditionele relationele databases moeilijk kunnen evenaren.
Grafiek databases
Een grafendatabase gebruikt grafentheorie โ knooppunten en verbindingen โ om relaties direct op te slaan en op te vragen. Het is ideaal voor fraudedetectie, aanbevelingssystemen en sociale netwerkanalyse, waar de verbindingen tussen entiteiten net zo belangrijk zijn als de entiteiten zelf.
OLTP-databases
OLTP-databases (Online Transaction Processing) zijn gericht op transacties met een hoge doorvoer en lage latentie in omgevingen met meerdere gebruikers. Ze garanderen ACID-eigenschappen en zijn geoptimaliseerd voor veel kleine lees- en schrijfbewerkingen die operationele systemen zoals kassasystemen en bankapplicaties aandrijven.
Persoonlijke database
Een persoonlijke database slaat gegevens op รฉรฉn computer op voor รฉรฉn gebruiker of een klein team. Microsoft Toegang en SQLite zijn typische voorbeelden.
Multimodale database
Een multimodale database ondersteunt verschillende datamodellen โ bijvoorbeeld document-, grafiek- en sleutel-waardemodellen โ binnen รฉรฉn enkele engine. ArangoDB en Microsoft Azure Cosmos DB is een populaire multimodale optie.
Document-/JSON-database
In een documentgeoriรซnteerde database is elk record een op zichzelf staand document, meestal in JSON-, BSON- of XML-formaat. Een enkel document kan rijk geneste gegevens en uiteenlopende velden bevatten, waardoor het model flexibel is voor snel veranderende applicaties. MongoDB En Couchbase zijn bekende voorbeelden.
Hiรซrarchische database
Een hiรซrarchische database maakt gebruik van een boomstructuur met ouder-kindrelaties. Knooppunten vertegenwoordigen records en takken vertegenwoordigen velden. Windows Registreren op Windows XP en IBM IMS-systemen zijn klassieke voorbeelden van hiรซrarchische databases.
Netwerkdatabase
Een netwerk-DBMS ondersteunt vele-op-vele-relaties tussen records, waardoor complexere structuren ontstaan โโdan in het hiรซrarchische model. RDM Server is een voorbeeld van een databasemanagementsysteem dat het netwerkmodel implementeert.
Databasecomponenten
Databasecomponenten.
Elke database is opgebouwd uit vijf componenten die samenwerken:
Hardware
Hardware vormt de fysieke laag: computers, I/O-apparaten, opslagmedia en netwerken. Het biedt de interface tussen de database en de rest van de wereld.
Software
Software omvat alles wat de database beheert en controleert: het DBMS zelf, het besturingssysteem, de netwerksoftware waarmee meerdere gebruikers gegevens kunnen delen, en de applicaties die via het DBMS lezen en schrijven.
Data
Data bestaat uit de ruwe feiten, observaties, getallen, symbolen en afbeeldingen die de database opslaat. Ruwe data op zich is betekenisloos; de database organiseert en verwerkt deze tot bruikbare informatie.
procedures
Procedures zijn de gedocumenteerde instructies en regels die bepalen hoe de database is ontworpen, beheerd en onderhouden. Ze vertellen beheerders en gebruikers hoe ze het systeem betrouwbaar kunnen gebruiken.
Taal voor databasetoegang
Een databasetoegangstaal โ meestal SQL โ stelt gebruikers en applicaties in staat om gegevens in te voegen, bij te werken, te verwijderen en op te vragen. Gebruikers geven specifieke commando's die het DBMS analyseert, plant en uitvoert op de onderliggende opslag.
Wat is een databasebeheersysteem (DBMS)?
A Databasebeheersysteem (DBMS) is de softwarelaag waarmee gebruikers gegevens kunnen definiรซren, opslaan, ophalen, bijwerken en beveiligen. dbms Het coรถrdineert de toegang tussen veel gebruikers en applicaties, waarborgt de integriteit en bepaalt wie wat kan zien of wijzigen.
DBMS-technologie is niet nieuw โ Charles Bachman Geรฏntegreerde gegevensopslag (IDS)DBMS, ontwikkeld door General Electric in het begin van de jaren 1960, wordt algemeen beschouwd als het eerste DBMS. Sindsdien is het vakgebied geรซvolueerd via hiรซrarchische, netwerk-, relationele, objectgeoriรซnteerde en NoSQL-modellen, die elk inspelen op de volgende generatie dataworkloads.
Geschiedenis van databasebeheersystemen
De onderstaande mijlpalen trace de evolutie van databasetechnologie.
- 1960s โ Charles Bachman ontwerpt het eerste DBMS (Integrated Data Store) bij General Electric.
- 1968 - IBM Het informatiemanagementsysteem (IMS) van schepen, een van de eerste hiรซrarchische databasemanagementsystemen.
- 1970 โ Edgar F. Codd publiceert โA Relational Model of Data for Large Shared Data Banksโ, waarin hij het relationele model introduceert.
- 1976 โ Peter Chen formaliseert het Entity-Relationship (ER) model.
- 1980s - De relationeel model SQL wordt het dominante databaseparadigma en wordt gestandaardiseerd.
- 1985 โ Objectgeoriรซnteerde databasesystemen lijken goed aan te sluiten bij de opkomst van objectgeoriรซnteerde programmeertalen.
- 1990s โ Object-relationele functionaliteiten doen hun intrede in de gangbare RDBMS'en.
- 1992 - Microsoft brengt de eerste versie uit van Microsoft Toegang tot persoonlijke databases.
- 1995 โ Webapplicaties beginnen het gebruik van databases op internetschaal te stimuleren.
- 1997 โ XML wordt in databases gebruikt als zowel een formaat als een querydoel.
- 2009 โ De term NoSQL wint aan populariteit tracNaarmate document-, sleutel-waarde- en grafiekdatabases zich snel ontwikkelen.
- 2010s en nog veel meer โ Cloud-native en gedistribueerde SQL-databases (Aurora, Spanner, CockroachDB) tevoorschijnkomen.
Voordelen van DBMS
Een goed geรฏmplementeerd DBMS biedt organisaties diverse praktische voordelen:
- Biedt diverse technieken voor het efficiรซnt opslaan en ophalen van gegevens.
- Brengt de behoeften van meerdere applicaties die dezelfde gegevens delen in evenwicht.
- Zorgt voor uniforme administratieve procedures.
- Beschermt applicatieprogrammeurs tegen details over opslag.
- Garandeert data-integriteit en -beveiliging door middel van beperkingen en toegangscontrole.
- Plant gelijktijdige toegang in, zodat alleen geldige bewerkingen slagen.
- Verkort de ontwikkeltijd van applicaties door herbruikbare services.
Nadelen van DBMS
Ook het DBMS-model kent compromissen:
- De kosten voor hardware en software kunnen aanzienlijk zijn.
- De meeste systemen zijn complex, dus gebruikers en beheerders hebben training nodig.
- Het centraliseren van gegevens in รฉรฉn enkele database maakt deze een aantrekkelijk doelwit voor storingen, corruptie of aanvallen.
- Gelijktijdige toegang vereist een zorgvuldig ontwerp om verloren updates en impassen te voorkomen.
- Een DBMS is niet ontworpen voor zware numerieke berekeningen; gespecialiseerde tools kunnen die werklast beter aan.


