Olemisuhete (ER) diagrammi mudel koos DBMS-i näitega

⚡ Nutikas kokkuvõte

Üksustevaheliste suhete (ER) diagrammimudel koos andmebaasihaldussüsteemi näitega illustreerib struktureeritud meetodit andmete ja nende omavaheliste seoste visuaalseks esitamiseks relatsioonandmebaasides. Peter Cheni pakutud meetod pakub kontseptuaalse modelleerimise aluse üksuste, atribuutide, seoste ja nende olulisuse täpseks määratlemiseks.

  • 🔍 Põhikontseptsioon: ER-diagrammid defineerivad andmebaasi struktuuri kolme põhikomponendi – üksuste, atribuutide ja seoste – kaudu, tagades selge kaardistuse andmeobjektide ja nende interaktsioonide vahel.
  • 🧱 Struktuurisümbolid: Ristkülikud tähistavad üksusi, ellipsid esindavad atribuute ja rombid illustreerivad seoseid; ühendusjooned näitavad loogilisi seoseid, kusjuures allajoonitud atribuudid on märgistatud primaarvõtmetega.
  • ⚙️ Üksuse klassifikatsioon: Üksused on rühmitatud hulmadesse, millest igaüks on identifitseeritud unikaalsete võtmete või atribuutidega. Nõrkadel üksustel puuduvad sõltumatud võtmed ja nad tuginevad identifitseerimiseks tugevatele üksustele, kasutades topeltristkülikuid ja kriipsjoontega allajoonimist.
  • 🔗 Suhte definitsioon: Seosed väljendavad üksuste vahelisi seoseid (nt „Üliõpilane registreerub kursusele“) ja liigitatakse kardinaalsuse järgi – üks-ühele, üks-mitmele, mitu-ühele või mitu-mitmele.
  • 🧩 Atribuutide tüübid: Atribuudid võivad olla lihtsad, liit-, tuletatud või mitmeväärtuselised, määratledes erinevad andmeomadused, näiteks nimed, kuupäevad ja arvutatud väljad.
  • 🧭 ERD loomise sammud: Enne täieliku diagrammi koostamist tuvastage üksused, looge seosed, määrake kardinaalsused, määrake atribuudid ja defineerige primaarvõtmed.
  • 📈 Optimeerimise praktika: Eemaldage koondamised, märgistage kõik komponendid ja säilitage selguse huvides unikaalsed üksuste esinemisjuhud, tagades, et diagramm toetab kõiki vajalikke andmesalvestusnõudeid.

Olemi suhete diagramm

Mis on ER-diagramm?

Entiteetide seoste diagramm (ER) on võimas visuaalne tööriist relatsioonandmebaaside struktuuride kujundamiseks. Peter Chen pakkus selle esmakordselt välja 1976. aastal ning see pakub kontseptuaalse modelleerimise aluse, mis määratleb täpselt entiteedid, atribuudid, seosed ja nende kardinaalsused. See õpetus hõlmab kõike alates põhimõistetest kuni edasijõudnute tehnikateni, aidates teil omandada andmebaasi skeemi kujundamise oskused.

ER-diagrammid sisaldavad erinevaid sümboleid, mis kasutavad üksuste tähistamiseks ristkülikuid, atribuutide määratlemiseks ovaale ja seoste kujutamiseks rombikujulisi kujundeid.

Esmapilgul näeb ER-diagramm välja väga sarnane vooskeemiga. ER-diagramm sisaldab aga palju spetsiaalseid sümboleid ja nende tähendused muudavad selle mudeli ainulaadseks. ER-diagrammi eesmärk on kujutada üksuse raamistiku infrastruktuuri.

ER diagrammi näited
Olemi seoste diagrammi näide

ER-mudelite ajalugu

Peter Chen pakkus ER-diagrammi välja 1976. aastal oma murrangulises artiklis „Entiteetide-suhete mudel: andmete ühtse vaate poole“. Tema eesmärk oli luua ühtne konventsioon, mida saaks kasutada nii relatsioonandmebaaside kui ka võrkude jaoks. Chen nägi ER-mudelit kontseptuaalse modelleerimisviisina, mis ületaks lõhe reaalsete nõuete ja andmebaasi tehnilise rakendamise vahel.

Sellest ajast alates on ER-mudel arenenud erinevate tähistussüsteemidega, sealhulgas Cheni tähistus (originaal), varese jala tähistus (populaarne tänapäevastes tööriistades) ja UML-põhised lähenemisviisid. Vaatamata neile variatsioonidele jäävad põhikontseptsioonid kõigis rakendustes samaks.

Miks kasutada ER-diagramme?

ER-diagrammid pakuvad andmebaaside kujundamisel ja arendamisel arvukalt eeliseid:

  • Visuaalne kommunikatsioon: Need pakuvad selget visuaalset esitust, millest saavad aru nii tehnilised kui ka mittetehnilised sidusrühmad.
  • Arengukava: Need näitavad täpselt, kuidas tabelid peaksid ühenduma ja milliseid välju iga tabel sisaldab.
  • Tõlge valmis: ER-diagramme saab otse relatsioonitabeliteks teisendada, mis võimaldab andmebaase kiiresti luua.
  • Vigade ennetamine: Need aitavad enne rakendamist tuvastada disainivigu ja koondamisi, säästes aega ja ressursse.
  • Dokumentatsioon: Need toimivad püsiva dokumentatsioonina, mis aitab uutel meeskonnaliikmetel süsteemi arhitektuuri mõista.
  • Süsteemi analüüs: Need aitavad tuvastada kõiki süsteemis eksisteerivaid üksusi ja nendevahelisi seoseid.

ER-diagrammi komponendid

Iga ER-diagramm koosneb kolmest põhikomponendist: üksustest, atribuutidest ja seostest. Iga komponendi ja nende omavahelise suhtluse mõistmine on tõhusate andmebaaside kujundamiseks hädavajalik.

ER diagrammi näited

Näiteks ülikooli andmebaasis võivad meil olla üksused üliõpilaste, kursuste ja õppejõudude jaoks. Üliõpilase üksusel võivad olla atribuudid nagu õpilase number, nimi ja osakonna ID. Neil võivad olla seosed kursuste ja õppejõududega.

ER diagrammi komponendid

ER diagrammi komponendid

Üksused

Entiteet esindab mis tahes reaalse maailma objekti – elavat või eluta –, mida saab selgelt tuvastada ja mille kohta saab andmeid salvestada. See võib olla füüsiline asi, ettevõtte kohta käiv fakt või reaalses maailmas toimuv sündmus. Entiteetide hulka võivad kuuluda inimesed, kohad, objektid, sündmused või kontseptsioonid.

Näited üksustest kategooria järgi:

  • Isik: Töötaja, üliõpilane, patsient, klient
  • koht: Kauplus, Hoone, Kontor, Ladu
  • Objekt: Masin, Toode, Auto, Raamat
  • sündmus: Müük, registreerimine, uuendamine, tehing
  • Kontseptsioon: Konto, Kursus, Osakond, Projekt

näited andmebaasihaldussüsteemides olevatest üksustest

Üksuste komplekt

Üksuste hulk on sarnaste üksuste rühm, millel on ühised atribuudid. Näiteks moodustavad kõik ülikooli tudengid üksuste hulga „Tudeng“. Üksused on ER-diagrammides kujutatud ristkülikute abil, mille sisse on kirjutatud üksuse nimi.

Üksusi esindavad nende omadused, mida nimetatakse ka atribuutideks. Kõigil atribuutidel on oma eraldi väärtused. Näiteks õpilasüksusel võivad atribuutidena olla nimi, vanus ja klass.

Entity

Tugevad üksused vs. nõrgad üksused

Üksused liigitatakse tugevateks või nõrkadeks vastavalt nende võimele iseseisvalt eksisteerida. Selle eristuse mõistmine on andmebaasi õige kujundamise seisukohalt ülioluline.

Tugeval üksusel on oma primaarvõti ja see võib eksisteerida iseseisvalt. Näiteks üksust „Student” saab unikaalselt identifitseerida Student_ID abil, sõltumata ühestki teisest üksusest.

Nõrgal üksusel puudub oma primaarvõti ja see sõltub tuvastamiseks tugevast üksusest (nimetatakse omaniküksuseks). Unikaalsuse saavutamiseks kasutab see osalist võtit (diskriminaatorit) koos omaniku primaarvõtmega. Näiteks pangandussüsteemis sõltub „Tehingu” üksus „Konto” üksusest – tehingu number üksi ei ole kogu andmebaasis unikaalne, kuid koos kontonumbriga muutub see ainulaadseks.

Nõrgad olemid

Tugev üksus Nõrk üksus
Omab oma peamist võtit Puudub primaarvõti; kasutab osalist võtit
Esitatakse ühe ristkülikuna Esitatakse kahekordse ristkülikuna
Primaarvõti on alla joonitud pideva joonega Osaline võti on kriipsjoonega alla joonitud
Võib eksisteerida iseseisvalt Sõltub omaniku olemasolust
Ühendatud ühe teemandi suhtega Ühendatud kahekordse rombiga (suhet tuvastav)
Näide: Õpilane, Töötaja, Toode Näide: Tehing, Sõltuv, Tellimus_Item

Suhe

Suhe esindab seost kahe või enama üksuse vahel. Suhetega tähistatakse tavaliselt tegusõnu või tegusõnafraase, mis kirjeldavad, kuidas üksused üksteisega suhtlevad. ER-diagrammides on seosed kujutatud rombikujuliste kujundite abil. Näide: Tom töötab keemiaosakonnas.

Suhe

Üksused osalevad suhetes. Sageli võime tuvastada seoseid tegusõnade või verbifraasidega.

Näited:

  • Sa osaled sellel loengul
  • Pean loengu
  • Üliõpilane käib loengus
  • Lektor peab loengut

Näitajad

Atribuut on omadus või tunnus, mis kirjeldab üksust või seost. Atribuudid pakuvad üksikasjalikku teavet, mis muudab iga üksuse eksemplari ainulaadseks ja tähendusrikkaks. ER-diagrammides on atribuudid esitatud ovaalide (ellipsi) abil, mis on joonega ühendatud nende ülemüksusega.

Näitajad

Näiteks võivad õpilase üksusel olla atribuudid nagu õpilase ID, nimi, sünnikuupäev, e-posti aadress ja telefoninumber.

Atribuutide tüübid

Atribuudi tüüp Kirjeldus Näide
Lihtne (Atomic) Ei saa jagada edasi väiksemateks osadeks Telefoninumber, sotsiaalkindlustuse number, e-post
Liit- Võib jagada väiksemateks alam-atribuutideks Täisnimi (eesnimi, keskmine nimi, perekonnanimi), aadress (tänav, linn, postiindeks)
Tuletatud Väärtus arvutatakse teiste atribuutide põhjal; seda ei salvestata otse Vanus (tuletatud sünnikuupäevast), koguhind
Mitmeväärtuseline Võib ühe üksuse jaoks sisaldada mitut väärtust Telefon Numbers, E-posti aadressid, Oskused
Võtme atribuut Identifitseerib iga üksuse eksemplari unikaalselt (primary Key) Üliõpilase_ID, töötaja_ID, ISBN

Võtme vihje: ER-diagrammides on võtmeatribuudid näidatud allajoonitud nimedega. Tuletatud atribuudid on näidatud katkendlike ovaalidena ja mitme väärtusega atribuudid topeltovaalidena.

Kardinaalsus (suhete tüübid)

Kardinaalsus määrab seose numbrilised piirangud – täpsemalt, mitu ühe üksuse eksemplari saab seostada teise üksuse eksemplaridega. Kardinaalsuse mõistmine on oluline tõhusate andmebaasistruktuuride kujundamiseks.

Kardinaalsus

1. Üks-ühele (1:1)

Üks hulk A kuuluv üksus saab olla seotud maksimaalselt ühe hulku B kuuluva üksusega ja vastupidi.

Näide: Ühele õpilasele on määratud täpselt üks õpilasnumber ja iga õpilasnumber kuulub täpselt ühele õpilasele.

Üks-ühele kardinaalsus

2. Üks-mitmele (1:N)

Üks hulk A kuuluv üksus saab olla seotud mitme hulga B kuuluva üksusega, kuid iga hulk B kuuluv üksus on seotud ainult ühe hulga A üksusega.

Näide: Üks klass koosneb mitmest õpilasest.

Üks-mitmele kardinaalsus

3. Paljud-ühele (N:1)

Mitu üksust komplektist A saab seostada ühe üksusega komplektist B.

Näiteks kuuluvad samasse klassi paljud õpilased.

Paljud ühele kardinaalsusele

4. Paljud-mitmele (M:N)

Mitmeid üksusi komplektist A saab seostada mitme üksusega komplektist B ja vastupidi.

Näiteks üliõpilased kui rühm on seotud mitme õppejõuga ja õppejõud võivad olla seotud mitme üliõpilasega.

Paljudest paljudele kardinaalsus

ER-diagrammi sümbolid ja tähistused

ER-diagrammid kasutavad erinevate komponentide esitamiseks standardiseeritud sümboleid. Kuigi tähistussüsteeme on mitu, on kaks enimkasutatavat Cheni tähistus ja varese jala tähistus.

Cheni tähistus

Peter Cheni poolt 1976. aastal välja töötatud Cheni tähistus kasutab erinevate elementide kujutamiseks geomeetrilisi kujundeid:

Sümbol Eesnimi Esindab
ristkülik Entity Tugev üksus (nt õpilane, toode)
Double ristkülik Nõrk üksus Teisest sõltuv üksus (nt tehing)
Ellips/Ovaal Atribuut Üksuse omadus (nt nimi, ID)
Double Ellipse Mitmeväärtuseline atribuut Mitme väärtusega atribuut (nt Telefon Numbers)
Katkendlik ellips Tuletatud atribuut Arvutatud väärtus (nt vanus sünnikuupäevast)
teemant Suhe Üksuste vaheline seos (nt registreerumised)
Double teemant Suhte tuvastamine Seos nõrga üksusega
joon on siin Ühendab komponendid omavahel
Allajoonitud tekst Esmane võti Üksuse unikaalne identifikaator

Varese jala märge

Varese jala tähistus (tuntud ka kui IE-tähistus) on tänapäevastes andmebaaside kujundamise tööriistades levinum. See kasutab kardinaalsuse esitamiseks erinevaid rea lõppu ja on eriti efektiivne seoste "mitme" poole näitamiseks.

Sümbol Descriptioon Tähendus
Üks vertikaalne joon (|) Kohustuslik Üks (täpselt üks)
Ringjoon joonega (O|) Valikuline Üks (null või üks)
Varesejalg joonega (>|) Kohustuslik Palju (üks või mitu)
Varesejalg ringiga (>O) Valikuline Paljud (null või rohkem)

Cheni tähistus vs. varesejalg: millal kumbagi kasutada

Aspekt Cheni tähistus Varese jala märge
Parim Kontseptuaalne modelleerimine, akadeemiline kasutus Füüsikaline/loogiline modelleerimine, tööstuslik kasutamine
Atribuudi kuvamine Näitab kõiki atribuute visuaalselt Loetleb atribuudid üksuse kastis
Kardinaalsus Kasutab numbreid (1, N, M) Kasutab visuaalseid sümboleid
Keerukus Võib muutuda segaseks Kompaktsem ja puhtam
Tööriistade tugi Piiratud kaasaegsete tööriistade tugi Laialdaselt toetatud tööriistades

Kuidas luua olemisuhete diagrammi (ERD)

Selles ER-diagrammi (ERD) õpetuses õpime, kuidas luua ER-diagrammi. ER-diagrammi loomiseks toimige järgmiselt.

Looge olemi suhete diagramm

ER diagrammi loomise sammud

Uurime neid olemisuhete diagrammi näitega:

Ülikoolis registreerub tudeng kursustele. Tudeng peab olema määratud vähemalt ühele kursusele. Iga kursust õpetab üks professor. Õppekvaliteedi säilitamiseks võib professor läbi viia ainult ühe kursuse.

1. samm) olemi identifitseerimine

Meil on kolm üksust:

  • õpilane
  • Kursus
  • Õpetaja

Üksuse identifitseerimine

2. samm) suhte tuvastamine

Meil on kaks järgmist suhet:

  • Õpilane on määratud kursus
  • Professor annab kursus

Suhte tuvastamine

3. samm) kardinaalsuse tuvastamine

Probleemi püstitusest teame, et:

  • Võib määrata õpilase mitmekordne kursused
  • Professor saab toimetada ainult üks kursus

Kardinaalsuse tuvastamine

4. samm) tuvastage atribuudid

Atribuutide tuvastamiseks peate uurima organisatsiooni poolt praegu hallatavaid faile, vorme, aruandeid ja andmeid. Samuti saate üksuste tuvastamiseks läbi viia intervjuusid erinevate sidusrühmadega. Esialgu on oluline tuvastada atribuudid ilma neid konkreetse üksusega kaardistamata.

Kui sul on atribuutide loend olemas, pead need tuvastatud üksustega kaardistama. Veendu, et atribuut on seotud täpselt ühe üksusega. Kui arvad, et atribuut peaks kuuluma mitmesse üksusse, kasuta modifikaatorit, et muuta see unikaalseks.

Kui kaardistamine on tehtud, tuvastage esmased võtmed. Kui unikaalne võti pole hõlpsasti saadaval, looge see.

Entity Esmane võti Atribuut
õpilane Õpilase ID Õpilase Nimi
Õpetaja Töötaja_ID ProfessorNimi
Kursus Kursuse_ID Kursuse nimi

Olemisuhete diagrammi loomise sammud

Kursuseüksuse atribuudid võivad olla kestus, ainepunktid, ülesanded jne. Lihtsuse huvides oleme käsitlenud ainult ühte atribuuti.

5. samm) Loo ERD

Üksuse ja seose diagrammi näite moodsam esitus:

Looge ERD diagramm

Parimad tavad efektiivsete ER-diagrammide jaoks

Selgete, hallatavate ja tõhusate ER-diagrammide loomiseks järgige neid juhiseid:

  • Koondamise kõrvaldamine: Eemaldage duplikaatüksused, atribuudid või seosed.
  • Kasutage selgeid nimetamiskonventsioone: Kasutage järjepidevaid ja kirjeldavaid nimetusi. Vältige lühendeid.
  • Nõuete alusel valideerimine: Veenduge, et diagramm toetaks kõiki andmesalvestusvajadusi.
  • Hoidke see lihtsana: Loo mitu diagrammi erinevatel tasemetel, mitte üks segamini diagramm.
  • Kasutage värve säästlikult: Kasutage värve järjepidevalt kategooriate esiletõstmiseks.
  • Dokumendi eeldused: Lisage märkused, mis selgitavad ärireeglite eeldusi.
  • RevSuhtlus sidusrühmadega: Laske ärikasutajatel ja tehnilisel meeskonnal diagramm üle vaadata.
  • Versioonihaldus: Säilita versioonid vastavalt disaini arenemisele.

ER-diagrammid vs. UML-klassidiagrammid

Kuigi nii ER-diagramme kui ka UML-klassidiagramme kasutatakse andmete modelleerimiseks, on neil erinevad eesmärgid ja kontekstid. Süsteemi tõhusa disaini jaoks on oluline mõista, millal kumbagi kasutada.

Aspekt ER diagramm UML klassi diagramm
Esmane eesmärk Andmebaasi kujundamine Tarkvara/objektide disain
Focus Andmed ja seosed Objektid, meetodid ja käitumisviisid
Meetodid/Operamine Ei toetata Täielikult toetatud
Pärisosa Piiratud (ainult EER-is) Täielik toetus
Tööstuskasutus Andmebaaside administraatorid, andmeanalüütikud Tarkvaraarendajad, arhitektid

KKK

ER-diagramm kujutab andmebaasi struktuuri visuaalselt, määratledes üksused, nende atribuudid ja seosed. See aitab disaineritel, arendajatel ja sidusrühmadel tagada andmemodelleerimise järjepidevuse, terviklikkuse ja tõhususe enne rakendamise algust.

Kaks peamist tüüpi on kontseptuaalsed ER-diagrammid (mis kirjeldavad kõrgetasemelisi seoseid ja üksusi ilma rakendusdetailideta) ja füüsilised ER-diagrammid (mis kirjeldavad tegelikke andmebaasi struktuure, andmetüüpe, võtmeid ja rakenduspiiranguid).

ER-diagrammi loomiseks: (1) tuvastage oma nõuete põhjal peamised üksused, (2) määrake üksuste vahelised seosed, (3) määrake kardinaalsused ärireeglite põhjal, (4) määratlege iga üksuse atribuudid, (5) tuvastage primaarvõtmed ja (6) joonistage diagramm sobiva tähistuse abil.

Valik sõltub kontekstist. Cheni tähistus sobib kõige paremini kontseptuaalse disaini ja akadeemiliste keskkondade jaoks, samas kui varese jala tähistus on eelistatud loogiliseks/füüsiliseks disainiks tööstuskeskkonnas. Enamik tänapäevaseid andmebaasitööriistu toetab varese jala tähistust.

Tugeval üksusel on oma primaarvõti ja see võib eksisteerida iseseisvalt. Nõrgal üksusel primaarvõti puudub ja ta sõltub tuvastamiseks tugevast üksusest, mis kasutab omaniku primaarvõtme ja oma osavõtme (diskriminaatori) kombinatsiooni.

Pilvepõhistes andmebaasihaldussüsteemide platvormides juhivad ER-diagrammid automatiseeritud pakkumist, skaleerimist ja päringute orkestreerimist. Need võimaldavad tehisintellektil põhinevatel tööriistadel viia andmestruktuurid vastavusse töökoormuse prognooside ja reaalajas kasutajate nõudlusega, parandades süsteemi tõhusust.

Kuigi generatiivne tehisintellekt saab pakkuda esialgseid ER-mudeleid ärinõuete või olemasolevate andmekogumite põhjal, on inimese järelevalve endiselt kriitilise tähtsusega seoste valideerimiseks, piirangute jõustamiseks, loogilise sidususe tagamiseks ja vastavuse kontrollimiseks tegelike ärireeglitega tootmissüsteemides.

Paljud-mitmele-seoseid ei saa relatsioonandmebaasides otse rakendada. Peate looma assotsiatiivse üksuse (ühendustabeli), mis jagab M:N-seose kaheks 1:N-seoseks. See ühendustabel sisaldab võõrvõtmeid, mis viitavad mõlemale algsele üksusele.

Võta see postitus kokku järgmiselt: