Modelul de date relaționale este o abordare unică a gestionării parametrilor folosind structura și limbajul conform logicii predicatelor de ordine unică. A fost descris pentru prima dată în 1969 de către omul de știință englez Codd. În acest proiect, toți parametrii sunt prezentați ca tupluri grupate în anumite relații.
Scopul modelului de date relaționale…
… este de a oferi o metodă declarativă pentru specificarea modelelor și a interogărilor.
Utilizatorii notează direct ce informații conține baza de date și ce teorie doresc de la ea. Și, de asemenea, lăsați software-ul de gestionare a bazei de date să se ocupe de descrierea structurilor pentru a o stoca. Procedura de regăsire a informațiilor pentru a răspunde solicitărilor este, de asemenea, importantă.
Majoritatea RDB-urilor folosesc definiții de date SQL și un limbaj de căutare. Aceste sisteme implementează ceea ce poate fi văzut ca o aproximare de ingineriemodel relațional.
Un tabel dintr-o schemă de bază de date SQL corespunde unei variabile predicate. Constrângerile cheie și interogările SQL se potrivesc cu predicate.
Cu toate acestea, astfel de baze de date se abate de la modelul relațional în multe detalii, iar Codd s-a opus cu vehemență modificărilor care compromit principiile originale.
Prezentare generală
Ideea principală a modelului de date relaționale este descrierea întregii baze de date ca un set de predicate pentru componenta finală a variabilelor, descriind restricțiile asupra posibilelor valori și combinațiile acestora. Conținutul la un moment dat este modelul final (logic). Adică un set de relații, câte una pe variabilă de predicat, astfel încât toate componentele să fie satisfăcute. Acesta este modelul de date relaționale.
alternative
Alte modele sunt sisteme ierarhice și de rețea. Unele dintre ele, folosind arhitecturi mai vechi, sunt încă populare în centrele de date de mare capacitate. Sau în cazurile în care sistemele existente sunt atât de complexe și abstracte încât trecerea la ele folosind modelul relațional ar fi prohibitiv de costisitoare. De asemenea, de remarcat sunt noile baze de date orientate pe obiecte.
Implementare
Au existat mai multe încercări de a obține adevărata materializare a RMD, definită inițial de Codd și explicată de alțiioameni de știință.
Modelul de reprezentare a datelor relaționale a fost principalul de acest fel, care a fost descris în termeni matematici formali. Bazele ierarhice și de rețea existau înaintea sistemelor relaționale, dar specificațiile lor erau relativ informale. Odată ce RMD a fost definit, s-au făcut multe încercări de a compara și contrasta diferite modele - și acest lucru a condus la descrieri mai riguroase ale sistemelor timpurii. Deși natura procedurală a interfețelor de manipulare a datelor pentru bazele de date ierarhice și de rețea a limitat posibilitățile de formalizare.
Teme
Ipoteza fundamentală despre conceptul de model de date relaționale este că toate sunt reprezentate ca un „p” matematic - relații tipice, „Cn - o relație perechi, care este o submulțime în produsul cartezian a mai multor domenii. În modelul matematic, raționamentul despre astfel de date se realizează într-o logică a predicatelor cu două valori, ceea ce înseamnă că pentru fiecare propoziție există două evaluări posibile: fie adevărată, fie falsă (și nu există o a treia valoare, cum ar fi necunoscută sau neaplicabilă)., fiecare dintre acestea fiind adesea asociat cu conceptul de 0). Datele sunt procesate folosind calcul sau algebră, care sunt echivalente ca putere expresivă.
Tipuri de modele de date, model de date relaționale
RMD permite dezvoltatorului să creeze o vizualizare coerentă și logică a informațiilor. Toate acestea se realizează prin încorporarea constrângerilor declarate în proiectarea bazei de date, denumită în mod obișnuit schema logică. Teoria este de a dezvolta un procesnormalizarea modelului, prin care un design cu anumite proprietăți dorite poate fi selectat dintr-un set de alternative echivalente din punct de vedere logic. În planurile de acces și alte implementări și operațiuni, detaliile sunt gestionate de motorul DBMS și nu sunt reflectate în modelul logic. Acest lucru este în contrast cu practica obișnuită în care reglarea performanței necesită adesea modificări ale funcției logice.
Modelul de date relaționale de bază reprezintă un bloc de construcție - este un domeniu sau un tip de informații, de obicei redus la minimum. Un tuplu este un set ordonat de valori ale atributelor. Și ei, la rândul lor, sunt o pereche reciprocă de nume și tip. Poate fi fie o valoare scalară, fie una mai complexă.
O relație constă dintr-un antet și un corp
Primul este un set de atribute.
Corpul (cu a n-a relație) este un set de tupluri.
Antetul de tangență este, de asemenea, subiectul fiecărei structuri.
Modelul de date relaționale este definit ca un set de n-tupluri. Atât în matematică, cât și în MRD, un set este o colecție neordonată de elemente unice neduplicate, deși unele SGBD-uri impun o secvență asupra datelor lor. În matematică, un tuplu are o ordine și permite duplicarea. E. F. Codd a configurat inițial tupluri folosind această definiție matematică.
Mai târziu, una dintre ideile grozave ale lui E. F. Codd a fost că folosirea numelor de atribute în loc de a ordona ar fi mult mai convenabilă (în generalcaz) într-un limbaj informatic bazat pe relații. Această afirmație este utilă și astăzi. Deși conceptul s-a schimbat, numele „tuplu” nu a fost transformat. O consecință imediată și importantă a acestei distincții este că în modelul relațional produsul cartezian devine comutativ.
Un tabel este o reprezentare vizuală comună a relațiilor. Un tuplu este similar cu conceptul de șir.
Relvar este o variabilă numită a unui anumit tip de tangentă căruia îi este atribuită în orice moment o relație de acest tip, deși privirea poate conține tupluri nule.
Bazele modelului de date relaționale: toate informațiile sunt reprezentate de valorile informației în relații. În conformitate cu acest principiu, baza relațională este un set de relvar, iar rezultatul fiecărei interogări este reprezentat ca o tangență.
Consecvența unei baze de date relaționale nu este impusă de regulile încorporate în aplicațiile care o folosesc, ci mai degrabă de constrângeri declarate ca parte a schemei logice și impuse de SGBD pentru toate aplicațiile. Restricțiile sunt exprimate în utilizarea operatorilor de comparație relațională, dintre care doar unul este o submulțime (⊆), teoretic suficientă. În practică, se așteaptă să fie disponibile mai multe comenzi rapide utile, dintre care cheile candidate și constrângerile surselor externe sunt cele mai importante. Iată despre ce se referă modelul de date relaționale.
Interpretare
Pentru a aprecia pe deplin RMD, este necesar să înțelegeți interpretarea dorităca o relație.
Corpul unei atingeri este uneori numit extensia sa. Acest lucru se datorează faptului că ar trebui interpretat ca reprezentând o creștere a unui predicat. Acesta este setul de propoziții adevărate care pot fi formate prin înlocuirea fiecărei variabile libere cu un nume.
Există o corespondență unu-la-unu între modelele de date obiect-relaționale. Fiecare tuplu al corpului relației oferă valori de atribut pentru a instanția predicatul prin înlocuirea fiecăreia dintre variabilele sale libere. Rezultatul este o afirmație care este considerată adevărată datorită apariției unui tuplu în corpul relației. În schimb, fiecare proces al cărui titlu se potrivește cu numele relației, dar nu apare în corp este considerat fals.
Această ipoteză este cunoscută sub numele de ipoteza lumii închise. Este adesea încălcat în bazele de date practice, unde absența unui tuplu poate însemna că adevărul propoziției corespunzătoare este necunoscut. De exemplu, absența anumitor termeni („Ioan”, „Spaniolă”) în Tabelul de competențe lingvistice poate să nu fie neapărat o dovadă că un băiat pe nume John nu vorbește spaniola.
Aplicarea bazelor de date, teoria normalizării
Subiectul de informații folosit într-un RDM relațional tipic poate fi un set de numere întregi, un set de șiruri de caractere care formează datele sau doi booleeni adevărat și fals și așa mai departe. Numele de subiecte corespunzătoare pentru aceste figuri pot fi șiruri cu numele „Index”, „Fă munca necesară”,„Timp”, „Boolean” și așa mai departe.
Cu toate acestea, este important să înțelegeți că teoria relațională nu specifică ce tipuri ar trebui să fie acceptate. Și este într-adevăr adevărat, în prezent se așteaptă ca prevederile să fie disponibile pentru entitățile personalizate în plus față de cele încorporate furnizate de sistem.
Atribut
Acesta este termenul folosit în teorie pentru ceea ce se numește de obicei o coloană. În mod similar, tabelul este folosit în mod obișnuit în locul termenului teoretic de tangență (deși nu este în niciun caz sinonim cu relația în SQL). Structura de date a unui tabel este specificată ca o listă de definiții de coloane, fiecare cu un nume unic de coloană și tipul de valori permise pentru aceasta.
Valoarea atributului este o intrare într-o anumită locație, cum ar fi John Doe și 35.
Un tuplu este practic același cu un rând, cu excepția faptului că în SQL RDBMS, unde semnificațiile coloanelor dintr-un rând sunt ordonate, tuplurile nu sunt separate. În schimb, fiecare valoare de definiție este identificată numai prin numele ei, nu prin poziția sa ordinală în tuplu. Numele atributului poate fi Nume sau Vârstă.
Atitudine
Este un tabel de definire a structurii împreună cu apariția datelor în acea structură. Definiția este antetul, iar datele din acesta sunt corpul, un set de rânduri. Variabila de relație este de obicei numită tabelul principal. Titlul valorii care i se atribuie înoricând se potrivește cu cea specificată în celula dată, iar corpul său se potrivește cu cea care ia fost atribuită ultima dată, invocând o instrucțiune de actualizare (de obicei INSERT, UPDATE sau DELETE).
Formulare teoretică a seturilor
Conceptele de bază în modelul relațional al relațiilor sunt numele și numele atributelor. Acestea trebuie să fie reprezentate ca șiruri de caractere, cum ar fi „Persoană” și „Nume” și, de obicei, vor trebui să utilizeze variabile pentru a le cuprinde. Un alt concept de bază este un set de valori atomice care conține semnificații necesare și importante precum numere și șiruri.