Professional Documents
Culture Documents
U1. Baze de Date
U1. Baze de Date
Unitatea de învăţare 1.
BAZE DE DATE
Introducere
Organizaţiile gestionează colecţii de date în scopul satisfacerii cerinţelor
informaţionale la toate nivelele decizionale (operaţional, tactic,
strategic). În absenţa datelor asupra funcţionării interne şi asupra
mediului extern, o organizaţie nu ar putea supravieţui.
Procesul de organizare şi prelucrare a datelor a parcurs mai multe
etape, până s-a ajuns la soluţia dominantă în prezent, care constă în
organizarea datelor în baze de date.
O colecţie de date reuneşte date despre o anumită clasă de obiecte (reale sau
conceptuale). De exemplu, în domeniul contabilităţii financiare, colecţia de date
CONTURI conţine informaţiile referitoare la clasa de obiecte conturi: simbolul
contului (SIMB_CONT), denumirea contului (DEN_CONT), tipul contului (TIP_CONT),
soldul iniţial debitor (SID) şi respectiv soldul iniţial creditor (SIC). Evident, un cont
dat va avea soldul iniţial fie debitor, fie creditor. Pentru exemplificare considerăm
colecţia de date CONTURI.
Procesul de organizare şi prelucrare a datelor a parcurs mai multe etape, până s-a
ajuns la soluţia dominantă în prezent, care constă în organizarea datelor în baze de
date.
Principalele etape ale evoluţiei tehnicilor de organizare şi prelucrare a datelor sunt:
Prima etapă – se caracterizează prin adaptarea tipurilor de organizare a
datelor existente în sistemele de prelucrare manuală la condiţiile tehnice
impuse de calculator. În această etapă apare fişierul organizare
secvenţială, iar ca suport de memorare externă se utilizează benzile
magnetice. Este caracteristică prelucrarea pe loturi (batch processing).
A patra etapă – este etapa bazelor de date. Sintagma bază de date apare
în anul 1964, în titlul conferinţei Development and Management of a
Computer – Centered Data Base organizată la Santa Monica (California) de
System Development Corporation. Momentul consacrării termenului
DATA BASE este 1969, când la CODASYL (Conference On DAta SYstems
Language) se prezintă într-un raport conceptul de bază de date.
Baze de date relaţionale 9
DATA - înregistrarea unei observaţii, obiect, fenomen, imagine, sunet sau text,
într-o formă convenabilă unei prelucrări, interpretări sau transmiteri prin
mijloacele informaticii. Datele reprezintă aspecte elementare nesupuse unei
prelucrări şi neevaluate din punct de vedere al utilităţii.
Arhitectura internă a unui sistem de baze de date (figura 1.1) - conţine trei nive
niveluri de abstractizare şi percepţie a datelor, introduse în anul 1975, prin raportul
ANSI/SPARC DBMS – Report of the Study Group on Data Base Management Systems
Baze de date relaţionale 12
Schema Schema
externă A - Vedere externă externă B - Vedere externă
interfaţa cu interfaţa cu
utilizatorul A utilizatorul B
Corespondenţa
extern/conceptual pentru
Corespondenţa B
extern/conceptual pentru
A
Schema Vedere
conceptual conceptuală
ă
Sistemul de
Corespondenţa
gestiune a
conceptual bazelor de date
/intern
(SGBD)
Definiţia
structurii de Baza de date stocată
stocare
(Vedere internă)
(schema
internă)
Baze de date relaţionale 14
Cereri
compilate
Impunerea
Scheme şi
Optimizator constrângerilor de
corespondenţe
securitate şi
sursă şi obiect
integritate
Cereri
optimizate
Manager de Metadate
execuţie
Baza de date
Date
În fiecare din părţi se regăsesc cele trei niveluri intern, conceptual şi extern.
Din punct de vedere al manipulării datelor, cererile (de exemplu: APPEND, MODIFY,
DELETE ) sunt tratate de analizorul de cereri, care realizează analiza sintactică
(conform gramaticii) şi analiza semantică (conform vizualizării referite sau schemei)
şi le traduce în format intern. O cerere în format intern care se referă la o
vizualizare este tradusă în una sau mai multe cereri care fac referinţă la obiecte ce
există în baza de date. Această funcţie este realizată de către un procesor-
translator numit controlor de cereri, care modifică cererile şi în plus asigură
controlul drepturilor de acces (autorizează
citirea / scrierea unui obiect) şi controlul integrităţii în cazul actualizărilor. Controlul
integrităţii constă în verificarea că baza de date nu a fost “poluată” în timpul
actualizării, adică regulile de coerenţă a datelor se verifică şi după actualizare.
Baze de date relaţionale 20
Analiza sintactică
Analizor
Analiza semnatică
Gestiunea schemelor
Modificarea cererilor
Controlor
Controlul integrităţii
Controlul automatizării
Dicţionarul Optimizare
datelor Optimizor
(metabaza) Elaborarea planului
Execuţia planului
Executor
Metode de acces
Controlul concurenţei
BD Atomicitatea tranzacţiilor
Executorul este un procesor care are rolul de a executa planul de acces ales şi
elaborat de optimizator. El se bazează pe metodele de acces care permit accesul la
fişiere prin intermediul indecşilor şi / sau legăturilor. La acest nivel este gestionat
controlul accesului concurent şi atomicitatea tranzacţiilor.
Baze de date relaţionale 21
Arhitectura client – server (Fig.1.4.) include nucleul unui sistem de gestiune de baze
de date numit DMCS (Description Manipulation snd Control Sub-system), care
funcţionează în mod server [GAR03]. Limbajul DL (Data Language) este limbajul
standard de acces la SGBD.
Utilizatori finali
Clienţi
Aplicaţii
Server
SGBD
Baza de date
Reţea de comunicaţii
Server
SGBD
BD
Un sistem de baze de date distribuit (Distributed Database System) poate avea atât
datele cât şi sistemul de gestiune al bazei de date, distribuite pe mai multe staţii
interconectate printr-o reţea de comunicaţie. Un astfel de sistem poate fi
reprezentat asemănător prin prisma structurării client-server (Fig.1.6.).
Reţea de comunicaţii
Server Server
SGBD SGBD
BD BD
modelul ierarhic
modelul reţea
modelul relaţional
modelul orientat-obiect
modelul obiect relaţional
sunt tipurile de entităţi, iar muchiile reprezintă legăturile dintre tipurile de entităţi.
Relaţiile sunt de tipul M:N şi se reprezintă fără duplicarea înregistrărilor, fiecare
înregistrare putând fi referită de mai multe înregistrări. Acest model este în prezent
rar folosit pentru baze de date generale care implică operaţii de interogare.
Aplicarea modelului reţea se întâlneşte în bazele de date grafice utilizate în
modelarea realităţii virtuale.
Tip de entitate - toate entităţile similare, care pot fi descrise prin aceleaşi atribute,
aparţin unui tip de entitate.
În proiectarea bazelor de date există două tipuri de entităţi: entităţi tari (puternice,
normale) şi entităţi slabe (dependente). Entitatea tare are o existenţă proprie în
cadrul modelului, în timp ce entitatea slabă nu poate exista decât dacă există o
entitate tare cu care să fie asociată.
Asocierea este o corespondenţă (corelaţie, legătură) între entităţi din două sau mai
multe mulţimi de entităţi.
Gradul unei asocieri este dat de numărul de mulţimi de entităţi asociate. Vom
presupune în continuare, pentru simplitate, că asocierile au gradul 2.
Considerăm două mulţimi de entităţi E1 şi E2. Asocierile de gradul 2 pot fi de trei
categorii:
asociere 1:1 (one-to-one) – unei entităţi din E1 îi corespunde o singură
entitate din E2 şi reciproc (relaţie de tip soţ – soţie, mai exact căsătoria
monogamă)
asociere 1:N (one-to-many) – unei entităţi din E1 îi corespund una sau mai
multe entităţi din E2, dar fiecărei entităţi din E2 îi corespunde o singură
entitate din E1 (relaţie de tip tată – fiu)
Baze de date relaţionale 27
entitate tare
entitate slabă
atribut
asociere 1:N
E1 1 A N E2
între 2 tipuri
de entităţi
Asocierea Facultate-Cadru didactic este de tipul 1:N, deoarece într-o facultate sunt
mai multe cadre didactice, iar un cadru didactic aparţine unei singure facultăţi.
Asocierea Cadru didactic-Proiect este de tipul M:N, deoarece la un proiect de
cercetare pe bază de contract lucrează mai multe cadre didactice şi fiecare cadru
didactic poate lucra la mai multe proiecte.
Asocierea Cadru didactic-Curs este de tipul 1:N, deoarece un cadru didactic are în
norma didactică mai multe cursuri şi fiecare curs are un singur cadru didactic
titular.
În modelul prezentat asocierile sunt reprezentate prin verbele: cuprinde, predă,
lucrează:
- facultatea cuprinde mai multe cadre didactice
- un cadru didactic predă mai multe cursuri
- un cadru didactic lucrează la mai multe proiecte de cercetare
cuprinde
1 N
Facultate Cadru didactic
M
1
predă lucrează
N N
Curs Proiect
Există în literatura de specialitate mai multe abordări ale celor două concepte.
Modul lor de tratare este departe de a fi unitar. În unele lucrări se consideră că
banca de date este formată din:
Baza de date
Baze de date relaţionale 29
Alţi autori extind noţiunea de bancă de date şi consideră banca de date formată
din :
Baza de date
Sistemul de gestiune al bazei de date (SGBD)
Hardware – ul necesar funcţionării sistemului
Programele de aplicaţii
Utilizatorii
În cartea L’art des bases de données, autorii S.M. Miranda, J.M. Busta fac o
distincţie clară între cele două concepte *MIR88+:
Baza de date conţine date primare care sunt exploatate cu ajutorul unui SGBD. În
cazul unei interogări, sistemul de gestiune al bazei de date furnizează direct
răspunsul.
Banca de date date conţine date referenţiale şi accesul este asigurat cu ajutorul
unui sistem documentar (SD). Sistemul documentar permite o direcţionare către un
text (carte, articol, referinţă web,...) şi după consultare se obţine răspunsul la
interogarea formulată.
Exemplul prezentat în lucrarea mai sus citată clarifică cele două abordări:
Considerăm o colecţie de date care conţine informaţii despre preşedinţii statelor
lumii. Printre atributele care caracterizează tipul de entitate preşedinte avem
atributul “stare de sănătate” , care poate lua mai multe valori, printre care {....,
nebun, ...}.
1961 - apariţia sistemului IDS (Integrated Data Storage) al firmei General Electric.
Terminologia utilizată (tipul record şi tipul set) va sta la baza modelului reţea
dezvoltat la "Conference On DAta SYstems and Languages Data Base Task Group"
(CODASYL DBTG).
1975 - prima conferinţă internaţională VLDB (Very Large Data Base); publicarea
raportului ANSI-SPARC.
1990-1995 - apar baze de date pentru Internet. Sunt utilizate conceptele client-
server şi astfel complexitatea Internet-ului creşte exponenţial.
Să ne reamintim...
DATA - înregistrarea unei observaţii, obiect, fenomen, imagine,
sunet sau text, într-o formă convenabilă unei prelucrări, interpretări
sau transmiteri prin mijloacele informaticii. Datele reprezintă aspecte
elementare nesupuse unei prelucrări şi neevaluate din punct de
vedere al utilităţii.
Rezumat
Procesul de organizare şi prelucrare a datelor a parcurs mai multe
etape, până s-a ajuns la soluţia dominantă în prezent, care constă în
organizarea datelor în baze de date.
ARHITECTURA UNUI SISTEM DE BAZE DE DATE (Database System)
cuprinde: