Ce este modelarea datelor?
Modelarea datelor este procesul de realizare a unei diagrame (de ex. ERD) a relațiilor dintre diferitele tipuri de informații care urmează să fie stocate într-o bază de date care ne ajută să ne gândim în mod sistematic la punctele cheie de date care urmează să fie stocate și recuperate, precum și la modul în care acestea ar trebui să fie grupate și legate între ele, este ceea ce reprezintă
Un model de date descrie informațiile într-un mod sistematic care permite stocarea și recuperarea eficientă a acestora într-un sistem de baze de date relaționale, care poate fi considerat un mod de a transpune logica descrierii exacte a lucrurilor din lumea reală și a relațiilor dintre ele în reguli care pot fi urmate și aplicate de codul calculatorului. Unul dintre obiectivele modelării datelor este de a crea cea mai eficientă metodă de stocare a informațiilor, asigurând în același timp accesul și raportarea completă.
Diagrama de relații între entități pentru modelarea datelor
O diagramă de relații între entități (ERD), propusă inițial de Peter Chen în 1976, este o reprezentare vizuală a modelării datelor folosind simboluri și notații care descriu modul în care aceste date sunt legate între ele. Ea poate fi utilizată direct de către dezvoltatorii de baze de date ca proiect pentru implementarea datelor în aplicații software specifice. Orice obiect, cum ar fi entitățile, atributele unei entități, seturile de relații și alte atribute ale relației pot fi caracterizate cu ajutorul diagramei ER.
O ERD permite cititorilor să înțeleagă relația dintre diferite câmpuri într-un mod eficient. Simbolurile sunt utilizate pentru a reprezenta informațiile în mod eficient și ajută, de asemenea, la înțelegerea funcționării bazei de date. Diagramele ER constituie o tehnică de modelare a datelor foarte utilă, care include:
- Diagramele ER sunt ușor de înțeles și nu necesită ca o persoană să fie supusă unei instruiri extinse pentru a putea lucra cu ele în mod eficient și precis. Acest lucru înseamnă că proiectanții pot utiliza diagramele ER pentru a comunica cu ușurință cu dezvoltatorii, clienții și utilizatorii finali, indiferent de cunoștințele lor în domeniul IT.
- Diagramele ER sunt ușor de tradus în tabele relaționale care pot fi utilizate pentru a construi rapid baze de date.
- Diagramele ER pot fi aplicate și în alte contexte, cum ar fi descrierea diferitelor relații și operațiuni din cadrul unei organizații.
Elementele ERD
Modelarea ER este o structură de sus în jos pentru proiectarea bazelor de date care începe cu identificarea datelor importante numite entități și relații în combinație cu datele care trebuie caracterizate în model. Apoi, proiectanții de modele de baze de date pot adăuga mai multe detalii, cum ar fi informațiile pe care doresc să le dețină despre entități și relații, care sunt atributele și orice constrângeri asupra entităților, relațiilor și atributelor. Modelarea ER este o tehnică importantă pe care orice proiectant de baze de date trebuie să o stăpânească și constituie baza metodologiei.
Tipul de entitate: Este un grup de obiecte cu aceleași proprietăți care sunt identificate de către întreprindere ca având o existență independentă. Conceptul de bază al modelului ER este tipul de entitate care este utilizat pentru a reprezenta un grup de „obiecte” din „lumea reală” cu aceleași proprietăți. Un tip de entitate are o existență independentă în cadrul unei baze de date.
Atributele sunt proprietățile entităților care sunt reprezentate cu ajutorul unor figuri în formă de elipsă. Fiecare figură eliptică reprezintă un atribut și este direct legată de entitatea sa (care este reprezentată sub forma unui dreptunghi).
Un tip de relație este un set de asocieri între unul sau mai multe tipuri de entități participante. Fiecărui tip de relație i se atribuie un nume care îi descrie funcția. Există patru tipuri de relații. Acestea sunt:
- Unu-la-unu: Atunci când doar o singură instanță a unei entități este asociată cu relația, aceasta este denumită „1:1”.
- Unu-la-mulțime: Atunci când mai mult de o instanță a unei entități este legată și asociată cu o relație, aceasta este denumită „1:N”.
- Mai-la-unu: Atunci când mai mult de o instanță a unei entități este legată cu relația, aceasta se numește „N:1”.
- Many-to-many: Atunci când mai mult de o instanță a unei entități din stânga și mai mult de o instanță a unei entități din dreapta pot fi legate cu relația, atunci aceasta este denumită relație „N:N”.
Iată câteva exemple:
Unu la unu
Unu la mulți
De la mai mulți la mai mulți
De la unul la zero sau mai mulți
Modele de date: Proiectare conceptuală / logică și fizică
ModelareaER recunoaște trei niveluri diferite de abstractizare la care sunt dezvoltate modelele. Cele trei niveluri de modelare a datelor, modelul conceptual de date, modelul logic de date și modelul fizic de date.
Modelele conceptuale, logice și fizice sau ERD sunt trei moduri diferite de a modela datele într-un domeniu. Deși toate conțin entități și relații, ele diferă în ceea ce privește scopurile pentru care sunt create și audiențele pe care trebuie să le vizeze. O înțelegere generală a celor trei modele este aceea că analistul de afaceri folosește modelul conceptual și logic pentru a modela datele necesare și produse de sistem din punct de vedere al afacerii, în timp ce proiectantul de baze de date rafinează proiectarea inițială pentru a produce modelul fizic pentru a prezenta structura fizică a bazei de date gata pentru construcția bazei de date.
În cele ce urmează, vom compara aceste trei tipuri de modele de date. Tabelul de mai jos compară diferitele caracteristici:
Conceptual: Un model conceptual ar trebui să se concentreze pe lucruri legate de afacere și de cerințele acesteia. Se adună din cerințele afacerii. Entitățile și relațiile modelate într-un astfel de ERD sunt definite în jurul nevoilor afacerii. Nevoia de satisfacere a proiectării bazei de date nu este încă luată în considerare. ERD conceptual este cel mai simplu model dintre toate.
Logic: Un model logic ar trebui să se concentreze pe proiectarea datelor despre acele lucruri, dar fără a face referire la o anumită implementare fizică. Este mai complex decât un model conceptual în sensul că sunt stabilite tipurile de coloane. Rețineți că setarea tipurilor de coloane este opțională și, dacă o faceți, ar trebui să o faceți pentru a ajuta analiza de afaceri. Deocamdată nu are nimic de-a face cu crearea bazei de date.
Physical: Un model fizic ar trebui să se concentreze pe modul în care datele logice ar trebui să fie reprezentate și stocate într-o anumită bază de date fizică. Acesta reprezintă planul real de proiectare a unei baze de date relaționale. Acesta reprezintă modul în care datele ar trebui să fie structurate și relaționate într-un anumit SGBD, astfel încât este important să luați în considerare convenția și restricția SGBD pe care o utilizați atunci când proiectați un ERD fizic. Acest lucru înseamnă că este necesară utilizarea exactă a tipului de date pentru coloanele entităților și că trebuie evitată utilizarea cuvintelor rezervate în denumirea entităților și a coloanelor. În plus, proiectanții de baze de date pot, de asemenea, să adauge chei primare, chei străine și constrângeri la proiectare.
Exemplu – Înscrierea studenților
O înțelegere generală a celor trei modele de date este că analistul de afaceri utilizează un model conceptual și logic pentru a modela obiectele de afaceri existente în sistem, în timp ce proiectantul de baze de date sau inginerul de baze de date elaborează modelul ER conceptual și logic pentru a produce modelul fizic care prezintă structura fizică a bazei de date gata pentru crearea bazei de date. Iată un alt exemplu care ilustrează cele 3 niveluri diferite ale modelului de date.
Model conceptual de date
Model logic de date
Model logic de date
Model de date fizice
Comparing Conceptual / Logical and Physical ER Model
While all the three levels of an ER model contain entities with attributes and relationships, they differ in the purposes they are created for and the audiences they are meant to target. The table below shows the difference between the three data models.
ERD features | Conceptual | Logical | Physical |
Entity (Name) | Yes | Yes | Yes |
Relationship | Yes | Yes | Yes |
Columns | Yes | Yes | |
Column’s Types | Optional | Yes | |
Primary Key | Yes | ||
Foreign Key | Yes |