Wat is gegevensmodellering in DBMS

Gegevensmodellering in DBMS (databasebeheersysteem) is het proces van het opnemen van complexe softwaresysteemontwerpen als gemakkelijk te begrijpen diagrammen, waarbij symbolen en tekst worden gebruikt om de manier weer te geven waarop gegevens moeten stromen. Het diagram kan worden gebruikt om een ​​oude applicatie opnieuw te ontwerpen of als een ontwerp voor het maken van nieuwe software.

Gewoonlijk worden datamodellen gebouwd tijdens de analyse- en ontwerpfase van een project voor een volledig begrip van de vereisten van een nieuwe toepassing. Datamodellering kan worden gezien als een stroomschema dat de relaties tussen gegevens illustreert, maar het vastleggen van alle waarschijnlijke relaties in een datamodel kan tijdrovend zijn, daarom moet deze stap niet overhaast worden uitgevoerd. Goed gedocumenteerde logische, fysieke en conceptuele gegevensmodellen stellen modelbouwers in staat fouten te detecteren en wijzigingen aan te brengen voordat een programmacode wordt geschreven.

Datamodellen gebruiken regelmatig verschillende modellen om dezelfde gegevens te bekijken en ervoor te zorgen dat alle entiteiten, processen, gegevensstromen en relaties zijn geïdentificeerd. Verschillende benaderingen van datamodellering omvatten:

ik. Conceptuele gegevensmodellering - Identificeert de relaties op het hoogste niveau tussen twee of meer verschillende entiteiten.

ii. Enterprise Data Modeling - Vergelijkbaar met conceptuele gegevensmodellering. Het richt zich echter op de onderscheidende behoeften van een bepaald bedrijf.

iii. Modellering van logische gegevens - Illustreert de specifieke attributen, relaties en entiteiten die betrokken zijn bij een zakelijke functie. Het is gewoon de basis bij het maken van het fysieke gegevensmodel.

iv. Modellering van fysische gegevens - Vertegenwoordigt de database-specifieke implementatie en toepassing van logische datamodellen.

Databasemodellen

Een databasemodel beschrijft het logische ontwerp van de data. Het gegevensmodel definieert relaties tussen verschillende gegevensdelen. Deze modellen worden normaal gesproken gebruikt in datamodellering. Dit zijn netwerkmodel, relationeel model, hiërarchisch model, objectgericht model, enz.

Netwerkmodel

In dit model worden entiteiten weergegeven in een grafiek die sommige entiteiten via talloze paden kunnen ophalen. Het netwerkdatabasemodel is ontworpen om enkele van de ernstige problemen op te lossen die zich voordoen met het hiërarchische databasemodel. Het corrigeert gegevensredundantie door relaties als sets te tonen in plaats van hiërarchie. Daarom is het hiërarchische model de subset van het netwerkmodel. Dit model ondersteunt vele tot vele relaties.

Relationeel model

In een relationeel model worden gegevens georganiseerd in 2-dimensionale tabellen die relaties worden genoemd. De tabellen / relatie hebben betrekking op elkaar. Dit model is op grote schaal toegepast en wordt beschouwd als een geweldig model voor efficiënte gegevensorganisatie. Momenteel is er een uitgebreide verzameling van beschikbare relationele databaseproducten, variërend van lichtgewicht desktopapplicaties tot veelzijdige serversystemen met zeer geoptimaliseerde ophaalmethoden. Enkele van de populaire RDBMS (Relational Database Management Systems) omvatten Oracle, Microsoft SQL-server, MySQL, IBM en Microsoft Access.

Hiërarchisch model

In het hiërarchische model heeft elke entiteit één ouder, maar deze kan uit meerdere kinderen bestaan. De root staat bovenaan de hiërarchie en bestaat uit slechts één entiteit. Het hiërarchische model bestrijkt een breed conceptspectrum. Het verwijst vaak naar veel instellingen zoals Multi-Level-modellen waarbij verschillende niveaus van gegevens of informatie gerelateerd zijn aan een grotere vorm. Het hiërarchische model is vergelijkbaar met het netwerkmodel, omdat het een groep records in bomen toont in plaats van willekeurige grafieken.

Object georiënteerd model

Dit model is ontworpen om databasefunctionaliteit in object programmeertalen te verbeteren. Objectmodellen maken uitbreiding van C ++ -semantiek, Java- en Smalltalk-programmeertalen voor objecten, mogelijk. Ze worden meestal gebruikt om een ​​volledig functionele databaseprogrammeringscapaciteit aan te bieden, terwijl ze tegelijkertijd de natuurlijke taalcompatibiliteit behouden.

Afbeelding met dank aan:

Typen databasemodellen door Marcel Douwe Dekker - Eigen werk, CC BY-SA 3.0, via Wikicommons