Het Entity-Relationship Diagram (ERD), of entiteitsrelatiemodel, is een visuele weergave van databasetabellen (entiteiten) en hoe deze via primaire en externe sleutels (relaties) aan elkaar zijn gekoppeld. Dit artikel beschrijft ERD's in meer detail en benadrukt de gratis ERD-wizard die IRI biedt voor meerdere databases die zijn verbonden in Eclipse binnen de Workbench IDE.
Tabelkenmerken
Binnen elke tabel in het diagram staan de kolomnamen, hun gegevenstypen en lengtes, en of ze een primaire sleutel, een externe sleutel of beide zijn. De sleutelstatus van de kolom bepaalt niet alleen de volgorde waarin de tabel wordt onderhouden, maar ook hoe die waarde is gekoppeld aan of afhankelijk is van de waarde in een andere tabel. Bovendien geeft het diagram aan of dat veld een index is of nullable is.
Een primaire sleutel is een of meer kolommen die een rij uniek identificeren. Elke tabel zou een primaire sleutel moeten hebben en kan er maar één hebben.
Een vreemde sleutel is een een of meer kolommen waarvan de waarden moeten overeenkomende waarden hebben in de primaire sleutel van een andere (of dezelfde) tabel. Een externe sleutel verwijst dus naar zijn primaire sleutel en is de manier waarop gegevens of referentiële integriteit worden gehandhaafd in gekoppelde tabellen.
De belangrijkste kenmerken worden in het model gebruikt om te definiëren hoe de tabellen aan elkaar zijn toegewezen en of hun kolomwaarden op unieke wijze aan andere tabellen zijn gekoppeld of niet. Deze relaties staan bekend als kardinaliteiten in kaart brengen.
Kadinaliteiten in kaart brengen
ERD's geven doorgaans één-op-één-, één-op-veel- en veel-op-veel-relaties weer tussen kolommen in tabellen.
Bij een één-op-één-relatie is een waarde in een tabel op unieke wijze gekoppeld aan een waarde in een andere en vice versa. Denk bijvoorbeeld aan een studentendatabase waarin elke student in tabel A is gekoppeld aan slechts één student-ID in tabel B.
Er bestaat een een-op-veel-relatie waarbij een waarde in tabel A kan worden gekoppeld aan een of meerdere waarden in tabel B, maar die in tabel B terugkoppelen naar de waarde van tabel A. Scholen in tabel A kunnen bijvoorbeeld zijn gekoppeld aan veel leerlingen in tabel B, maar niet andersom.
Bij een veel-op-veel-relatie kunnen waarden in tabel A worden gerelateerd aan een of meerdere waarden in tabel B en vice versa. Bijvoorbeeld, voor een bedrijf waarin al zijn werknemers aan meerdere projecten werken, is elke instantie van een werknemer (A) gekoppeld aan vele instanties van een project (B), en tegelijkertijd wordt elke instantie van een project (B ) heeft meerdere medewerkers (A) ermee verbonden.
Kaartmodaliteit
ERD's kunnen ook vereiste versus optionele relaties weergeven. Het verschil wordt weergegeven door het type lijn tussen de tabellen:vast voor vereist en onderbroken voor een optionele relatie.
IRI ERD's
In de IRI Workbench GUI, gebouwd op Eclipse™, kan elke relationele database die via een JDBC-stuurprogramma in de Data Source Explorer is aangesloten, worden gemodelleerd. De Nieuwe ER-diagrammodel Wizard is een van de vele gratis faciliteiten voor gegevensprofilering die beschikbaar zijn in de Workbench (inclusief een wizard voor databaseprofilering voor statistische rapportage en het zoeken naar waarden) en is toegankelijk via het Data Discovery-menu van de werkbalk.
De wizard begeleidt u bij het maken van het diagram.
Selecteer de tabellen die nodig zijn voor het maken van diagrammen en er wordt een nieuwe afbeelding gemaakt die kan worden gedownload en die de tabelstructuren en hun belangrijkste relaties laat zien:
Sommige kardinaliteiten kunnen worden afgeleid uit de belangrijkste informatie in de entiteiten. Als een Foreign Key (FK) niet ook een Primary Key (PK) of Unieke waarde is in de gekoppelde tabel, kan deze aan meerdere instanties worden gekoppeld. Als het veld in de gekoppelde tabel echter een PK is, kan er in die tabel maar één waarde aan zijn gekoppeld.
De ERD in de Workbench is een handige manier om elk database- of datawarehouse-schema te modelleren dat is gebouwd op relationele databases. Deze activiteit is bedoeld voor DBA's en gegevensarchitecten die werken aan ETL, gegevensmaskering, databasemigratie en het testen van gegevensgeneratieprojecten met IRI-gegevensbeheer of beschermingsproducten in de Workbench.