Cardinaliteit (gegevensmodellering)

De hoofdsectie van dit artikel moet wellicht worden herschreven. De opgegeven reden is: Geen definitie in de intro. Gebruik de gids voor hoofdopmaak om ervoor te zorgen dat de sectie de normen van Wikipedia volgt en alle essentiële details bevat. (Oktober 2019) (Leer hoe en wanneer u dit sjabloonbericht verwijdert)

De cardinaliteit van een join tussen twee tabellen is de numerieke relatie tussen rijen van de ene tabel en rijen in de andere. Veel voorkomende kardinaliteiten zijn één-op-één, één-op-veel en veel-op-veel.

Zie bijvoorbeeld een database met elektronische medische dossiers. Een dergelijke database zou tabellen als de volgende kunnen bevatten:

  • Een doctor tabel met informatie over artsen.
  • Een patient tabel voor medische proefpersonen die een behandeling ondergaan.
  • Een encounter tabel met een vermelding voor elk ziekenhuisbezoek.

Natuurlijke relaties bestaan tussen deze entiteiten, zoals een ontmoeting waarbij veel artsen betrokken zijn. Er is een veel-op-veel relatie tussen records in doctor en records in patient omdat artsen veel patiënten hebben en patiënten veel artsen kunnen bezoeken. Er is een één-op-veel relatie tussen records in patient en records in encounter omdat patiënten veel ontmoetingen kunnen hebben en elke ontmoeting slechts één patiënt betreft.

Een “één-op-één” relatie wordt meestal gebruikt om een tabel in tweeën te splitsen om de informatie beknopter en begrijpelijker te maken. In het voorbeeld van het ziekenhuis zou een dergelijke relatie kunnen worden gebruikt om de eigen unieke professionele informatie van artsen gescheiden te houden van administratieve details.

In gegevensmodellering worden verzamelingen van gegevenselementen gegroepeerd in “gegevenstabellen” die groepen van gegevensveldnamen bevatten die “database-attributen” worden genoemd. De tabellen zijn met elkaar verbonden door “sleutelvelden”. Een “primaire sleutel” wijst een veld toe aan zijn “speciale volgorde tabel”. Bijvoorbeeld, het “Doctor Last Name” veld kan worden toegewezen als een primaire sleutel van de dokterstabel met alle mensen met dezelfde achternaam alfabetisch geordend op basis van de eerste drie letters van hun voornaam. Een tabel kan ook een foreign key hebben die aangeeft dat dat veld gekoppeld is aan de primary key van een andere tabel.

Een complex gegevensmodel kan honderden verwante tabellen omvatten. De computerwetenschapper Edgar F. Codd creëerde een systematische methode om relationele databases te ontleden en te organiseren. Codd’s stappen voor het organiseren van databasetabellen en hun sleutels wordt databasenormalisatie genoemd, waarmee bepaalde verborgen fouten in het databaseontwerp (verwijderanomalieën of updateanomalieën) worden vermeden. In de echte wereld leidt het proces van databasenormalisatie ertoe dat tabellen worden opgesplitst in een groter aantal kleinere tabellen.

In de echte wereld is datamodellering van cruciaal belang, omdat naarmate de gegevens volumineuzer worden, tabellen die door sleutels zijn verbonden, moeten worden gebruikt om het geprogrammeerd opvragen van gegevens te versnellen. Als een gegevensmodel slecht is opgezet, zal zelfs een computerapplicatiesysteem met slechts een miljoen records de eindgebruikers onaanvaardbare vertragingen in de reactietijd opleveren. Om deze reden is datamodellering een hoeksteen van de vaardigheden die een moderne software-ontwikkelaar nodig heeft.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.