Un model de date relațional este... Definiția, conceptul, structura și teoria normalizării

Modelul relațional de date este o abordare unică pentru gestionarea parametrilor folosind structura și limbajul conform unei logici de predicat de ordin singular. A fost descrisă pentru prima dată în 1969 de către cercetătorul englez Codd. În acest proiect, toți parametrii sunt prezentați sub formă de tuple, grupate în anumite relații.

Scopul unui model de date relațional...

Modelul relațional de reprezentare a datelor

...oferă o metodă declarativă pentru specificarea modelelor și a interogărilor.

Utilizatorii specifică în mod direct ce informații conține baza de date și ce teorie doresc de la aceasta. Și, de asemenea, permiteți software-ului de gestionare a bazei de date să se ocupe de descrierea structurilor pentru stocarea sa. Procedura de regăsire a informațiilor pentru a răspunde la interogări este de asemenea importantă.

Cele mai multe RDBMS folosesc definiții de date SQL și limbajul de căutare. Aceste sisteme implementează, că se poate.. văzută ca o aproximare inginerească a modelului relațional.

Un tabel din schema bazei de date SQL corespunde unei variabile de predicat. Constrângerile cheie și interogările SQL corespund predicatelor.

Dar astfel de baze de date se abat în multe detalii de la modelul relațional, iar Codd s-a opus vehement schimbărilor care ar compromite principiile inițiale.

Prezentare generală

tipuri de modele de date model de date relațional

Ideea de bază a unui model relațional de date este de a descrie întreaga bază de date ca un set de predicate pentru o componentă finită de variabile, descriind constrângerile asupra valorilor posibile și a combinațiilor acestora. Conținutul la un moment dat reprezintă un model finit (logic). Adică, un set de relații, câte una pentru fiecare variabilă de predicat, astfel încât toate componentele să fie satisfăcute. Acesta este exact ceea ce este un model de date relațional.

Alternative

structura modelului de date relaționale

Alte modele sunt sistemele ierarhice și de rețea. Unele dintre acestea, care utilizează arhitecturi mai vechi, sunt încă populare în centrele de date cu cerințe de volum mare. Sau în cazurile în care sistemele existente sunt atât de complexe și abstracte încât trecerea la un model relațional ar fi prohibitiv de costisitoare. De asemenea, merită menționat și noul Baze de date orientate pe obiecte.

Implementare

Concepte ale unui model de date relațional

S-au făcut mai multe încercări de a obține o materializare reală a RMD-urilor, definite inițial de Codd și explicate de alți oameni de știință.

Modelul relațional de reprezentare a datelor a fost principalul de acest gen, care a fost descris în termeni matematici formali. Bazele de date ierarhice și de rețea au existat înainte de sistemele relaționale, dar specificațiile lor erau relativ informale. Odată ce RMD a fost definit, experții au făcut numeroase încercări de a compara și de a contrapune diferite modele, ceea ce a condus la descrieri mai riguroase ale primelor sisteme. Cu toate că natura procedurală a interfețelor de manipulare a datelor pentru bazele de date ierarhice și în rețea a limitat posibilitățile de formalizare a.

Subiecte

O presupunere fundamentală cu privire la noțiunea de model de date relațional este că toate sunt reprezentate ca un model matematic "п" - relație tipică, "Sp" - o relație de pereche, care este un subset într-un produs cartezian al mai multor domenii. Într-un model matematic, raționamentul cu privire la astfel de date se face în logica predicatelor cu două valori, ceea ce înseamnă că pentru fiecare propoziție există două evaluări posibile: fie adevărat, fie fals (și nici o a treia valoare, cum ar fi necunoscut sau neaplicabil, fiecare dintre acestea fiind adesea asociată cu conceptul de 0). Datele sunt tratate prin calcul sau algebră, care sunt echivalente ca putere de expresie.

Tipuri de modele de date, model de date relațional

RMD permite dezvoltatorului să creeze o reprezentare 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 proces de normalizare a modelului prin care un proiect cu anumite proprietăți dorite poate fi selectat dintr-un set de alternative echivalente din punct de vedere logic. În planurile de acces și în alte implementări și operații, detaliile sunt gestionate de motorul SGBD și nu sunt reflectate în modelul logic. Acest lucru este în contrast cu practica obișnuită în care tuningul de performanță necesită adesea modificări ale unei funcții logice.

Modelul relațional de bază al datelor reprezintă un bloc de construcție - un domeniu sau un tip de informație, de obicei redus la un minim. Un tuple este un set ordonat de valori de atribute. Iar acestea, la rândul lor, sunt o pereche reciprocă de nume și tip. Aceasta poate fi fie o valoare scalară, fie o versiune mai complexă.

Relația este formată dintr-un antet și un corp

Bazele unui model de date relațional

Primul este un set de atribute.

Corpul (cu o relație n) este un set de tupluri.

Un antet tangent este, de asemenea, subiectul fiecărei structuri.

Un model de date relațional este definit ca un set de n- tuple. Atât în matematică, cât și în RDBMS, un set este o colecție neordonată de elemente unice și neduplate, deși unele RDBMS impun consistență asupra datelor lor. În matematică, tupla are o ordine și permite dublarea. Э. Ф. Codd a stabilit inițial tuplurile folosind această definiție matematică.

Ulterior, una dintre ideile remarcabile ale lui E. Ф. Ideea lui Codd era că folosirea numelor de atribute în loc de ordonare ar fi mult mai convenabilă (în general) într-un limbaj de calculator bazat pe relații. Această afirmație este utilă și astăzi. Deși conceptul s-a schimbat, denumirea "tuple" nu s-a transformat. O consecință directă și importantă a acestei distincții este că în modelul relațional produsul cartezian devine comutativ.

Un tabel este o reprezentare vizuală acceptată a unei relații. Un tuple este similar cu conceptul de șir de caractere.

Relvar este o variabilă cu nume de un anumit tip de relație, la care se referă în orice moment o anumită relație de acest tip este atribuit, deși aspectul poate conține tupluri nule.

Fundamentele modelului relațional de date: toate informațiile sunt reprezentate prin valori ale informațiilor în relații. Conform acestui principiu, o bază de date relațională este un set de relvars, iar rezultatul fiecărei interogări este reprezentat ca o tangentă.

Consistența unei baze de date relaționale nu este asigurată de reguli încorporate în aplicațiile care o utilizează, ci mai degrabă de constrângeri declarate ca parte a schemei logice și implementate de SGBD pentru toate aplicațiile. Limitările sunt exprimate prin utilizarea operatorilor de comparație relațională, dintre care doar unul este un subset (⊆), suficient din punct de vedere teoretic. În practică, este de așteptat să fie disponibile mai multe contracții utile, dintre care cele mai importante sunt cheile candidate și constrângerile de sursă externă. Iată ce înseamnă un model de date relațional.

Interpretare

Pentru a aprecia pe deplin RMD, este necesar să se înțeleagă interpretarea intenționată sub forma unei atitudini.

Corpul unei relații se numește uneori extensia sa. Acest lucru se datorează faptului că ar trebui interpretat ca o reprezentare a unei creșteri a unui predicat oarecare. Este un set de propoziții adevărate care pot fi formate prin înlocuirea fiecărei variabile libere cu un nume.

Există o corespondență biunivocă între modelele de date obiect-relaționale. Fiecare tupla din corpul relației furnizează valori ale atributelor pentru a crea o instanță a predicatului prin înlocuirea fiecăreia dintre variabilele sale libere. Rezultatul este o afirmație care se presupune a fi adevărată datorită apariției unui tuplu în corpul relației. Dimpotrivă, orice proces al cărui antet corespunde numelui relației, dar care nu apare în corp, este considerat fals.

Această propoziție este cunoscută sub numele de ipoteza lumii închise. Ea este adesea încălcată în bazele de date practice, unde absența unui tuple poate însemna că adevărul propoziției corespunzătoare este necunoscut. De exemplu, absența unor concepte ("John", "spaniolă") în tabelul de competențe lingvistice nu este neapărat o dovadă că un băiat pe nume John nu vorbește spaniola.

Aplicarea la bazele de date, teoria normalizării

Un subiect de informație utilizat într-un PMD relațional tipic poate fi un set de numere întregi, un set de șiruri de caractere care constituie date sau două valori logice, adevărat și fals, și așa mai departe. Denumirile corespunzătoare pentru aceste cifre pot fi șirurile de nume "Index", "Efectuați lucrările necesare", "Timp", "Valoare logică" și așa mai departe și așa mai departe.

Cu toate acestea, este important să înțelegem că teoria atitudinală nu determină ce tipuri ar trebui să fie susținute. Și, într-adevăr, este adevărat, se așteaptă ca acum să fie disponibile prevederi pentru entitățile utilizatorilor, în plus față de cele încorporate furnizate de sistem.

Atributul

Modelul relațional de date reprezintă

Acesta este termenul folosit în teorie pentru ceea ce se numește de obicei o coloană. În mod similar, tabelul este utilizat în mod obișnuit în locul termenului teoretic de relație (deși în SQL nu este în niciun caz sinonim cu relația). Structura de date a unui tabel este specificată sub forma unei liste de definiții de coloane, fiecare cu un nume unic de coloană și tipul de valori permise pentru aceasta.

Valoarea atributului este o înregistrare într-un anumit loc, de exemplu: John Doe și 35 de ani.

Un tuple este practic același lucru cu un rând, cu excepția faptului că în SGBD SQL, unde semnificațiile coloanelor dintr-un rând sunt ordonate, tuplurile nu sunt separate. În schimb, fiecare valoare a unei definiții este identificată numai prin numele său, nu prin poziția sa ordinală într-un tupluplu. Numele atributului poate fi Nume sau Vârstă.

Relația

Modelul relațional de date este

Este un tabel de definire a structurii împreună cu aspectul datelor din această structură. Definiția este antetul, iar datele din el sunt corpul, un set de șiruri de caractere. Variabila de relație se numește de obicei tabelul principal. Antetul valorii care îi este atribuită în orice moment corespunde cu cea specificată în celula dată, iar corpul său corespunde cu cea care i-a fost atribuită ultima dată prin apelarea unei instrucțiuni de actualizare (de obicei INSERT, UPDATE sau DELETE).

Formulare teoretică-multiplă

Concepte de bază în modelul relațional relațional - nume și denumiri de atribute. Acestea trebuie să fie reprezentate sub formă de șiruri de caractere, cum ar fi "Persoană" и "Nume", și, de obicei, va trebui să utilizați variabile pentru a le acoperi. Un alt concept de bază este setul de valori atomice, care conține semnificații necesare și importante, cum ar fi numere și șiruri de caractere.

Articole pe această temă