Sunteți pe pagina 1din 19

Elemente Avansate de Baze de

Date
Cursul 1
Organizare
Sisteme de baze de date
distribuite
Conf. dr. Dan-Andrei Sitar-Tăut
E-mail: dan.sitar@econ.ubbcluj.ro
Departamentul de Informatică Economică, etaj 4, Birou 432

Cluj-Napoca, 8 Octombrie 2019


Organizare
 Curs: Conf. dr. Dan-Andrei SITAR-TĂUT
 Laborator:
– Conf. dr. Dan-Andrei SITAR-TĂUT (441)
– Lect. dr. Cristian Sorin BOLOGA (418)
Examinare Sesiune
 Teorie – 50%
 Examen(e) teoretic(e) cu întrebări închise – 40% (Re: 50%)
 Quiz-uri – 10% (Re: 0%)
n
 Practic – 50%
 Online Oracle – 25%
q   Qi / n
 Proiect – 25% i 1
 Bonusuri online, Studentul săptămânii – max. 1,50p (Re: 0p)
 În Restanţe se recunosc probele promovate cu nota >= 9
Cluj-Napoca, 8 Octombrie 2019
 Cursuri:

Organizare
Moodle : https://econ.elearning.ubbcluj.ro/moodle/course/view.php?id=1075
 Cheie: EABD2019zi
– Studentul săptămânii (+0,25 p)
 Laborator:
– iLearning:
http://ilearning.oracle.com/ilearn/en/learner/jsp/login.jsp?site=OracleAc
ad SAU https://academy.oracle.com/en/oa-student.html -> Sign
In/Register for Account -> iLearning (15 secţiuni)
– !!! Actualizare e-mail în profil
– !!! Studiu individual obligatoriu: 3 secţiuni/săptămână.
Termen: marţi ora 8:00 săptămâna următoare (ex. S1-S3 termen
15.10.2019 ora 8:00)
– APEX: https://iacademy3.oracle.com A951 sau A953
 Student Workspace: RO_A951_PLSQL_Snn/RO_A953_PLSQL_Snn

Student Admin Username: RO_A951_PLSQL_Snn_ADMIN/


RO_A953_PLSQL_Snn_ADMIN
Student Username: identic cu workspace
 Parola: nMmUP96% sau oLkMT44*

 Conturile vor fi repartizate pe Moodle


Cluj-Napoca, 8 Octombrie 2019
Bibliografie
Obligatorie
 Database Programming With PL/SQL – Documentaţie
Oracle Academy 2018 - 2019
 Sitar-Tăut, D. Baze de date distribuite, Risoprint, ISBN 973-
651-038-0, 2005
 Curs M101P: MongoDB for Developers – MongoDB
University, 2016
Facultativă
 Ozsu M, Valduriez T., Principles of Distributed Database
Systems, Second Edition, Prentice-Hall, 2002
 Connolly, T., Begg, C., Strachan, A. – „Baze de date.
Proiectare. Implementare. Gestionare”, Editura Teora,
Bucureşti, 2001, ISBN 973-20-0601-3
 Date C.J., An Introduction to Data Bases, vol I şi II,
Addison-Wesley, 2004; Baze de date Teora, 2005 E+
Cluj-Napoca, 8 Octombrie 2019
Sisteme de baze de date
distribuite
 Introducere în sisteme de baze de
date distribuite
 Sisteme de Gestiune a Bazelor de
Date Distribuite
 Fragmentarea

Cluj-Napoca, 8 Octombrie 2019


Sisteme de baze de date
distribuite
 Introducere în sisteme de baze de
date distribuite
 Sisteme de Gestiune a Bazelor de
Date Distribuite
 Fragmentarea

Cluj-Napoca, 8 Octombrie 2019


Introducere în sisteme de baze de
date distribuite
Context. Tehnologia bazelor de date şi cea a reţelelor avansate
individual, NU şi la nivelul integrării lor
Precursor – Sistemul cu prelucrare distribuită
 sistem centralizat de baze de date
 implică accesarea unei singure baze de date (baza de date centrală) prin
intermediul unei reţele de calculatoare
Puncte forte:
– integrarea aplicaţiilor şi a datelor din cadrul unei organizaţii
– simplitatea proiectării LAN
Neajunsuri:
– rezolvarea problemei accesului concurent
– vulnerabilitatea şi disponibilitatea nodului central
– număr relativ scăzut de utilizatori şi accese concomitente
– viteza scăzută şi „distanţa” acceselor
– restricţia de omogenitate

Cluj-Napoca, 8 Octombrie 2019


Definirea sistemelor distribuite
Motivaţie
 Neajunsurile sistemelor centralizate
 Caracterul distribuirii geografice naturale a organizaţiilor
!!! Observaţie: SD nu reprezintă un panaceu al informatizării
organizaţiilor
Definiţii:
 O bază de date distribuită reprezintă o colecţie de date
integrate logic, însă repartizate fizic pe siturile unei reţele
de calculatoare. LAN
 Un ansamblu de baze de date administrate de diferite
situri, dar care apar pentru utilizator ca o bază unică. Ele
sunt proiectate sub forma unor colecţii de date integrate,
omogene sau nu, împrăştiate cu discernământ într-o reţea
de calculatoare sub forma unei baze de date globale.

Cluj-Napoca, 8 Octombrie 2019


Elemente definitorii
 Integrarea logică. Se referă la aspectul că datele
înmagazinate nu sunt simple colecţii de fişiere. Ele
reprezintă o structură bine organizată pe care
utilizatorul trebuie s-o perceapă ca făcând parte
dintr-o singură bază de date globală, la fel ca şi în
cazul bazelor de date locale sau centralizate;
 Repartizarea fizică. Relevă faptul că baza de date
nu este stocată într-o singură locaţie, precum în
cazul bazelor de date locale şi sistemelor
centralizate, ci este împărţită între mai multe staţii
de lucru (birouri, clădiri, secţiile, atelierele de
producţie, sucursalele, agenţiile, sau punctele de
lucru ale organizaţiei).
Cluj-Napoca, 8 Octombrie 2019
Hibridizarea tehnologiilor
 Apariţia reţelelor de calculatoare a fost un
prim pas în integrarea informaţiei existente
într-o companie;
 Integrarea tehnologiei bazelor de date cu cea a
reţelelor a dat naştere unei tehnologii mult mai
puternice decât era fiecare dintre cele două
domenii anterior momentului hibridizării;
 Deşi explozivă, dezvoltarea s-a făcut în trepte
de evoluţie.
Cluj-Napoca, 8 Octombrie 2019
Sisteme de baze de date
distribuite
 Introducere în sisteme de baze de
date distribuite
 Sisteme de Gestiune a Bazelor de
Date Distribuite
 Fragmentarea

Cluj-Napoca, 8 Octombrie 2019


Sisteme de Gestiune a Bazelor de Date
Distribuite
Definiţie: Un sistem de gestiune a bazelor de date distribuite reprezintă
sistemul software care permite gestiunea bazelor de date distribuite, făcând
distribuirea fizică transparentă pentru utilizatori.
SGBDD au ca obiectiv crearea unei „punţi” între „insulele de informaţii”. Ideea
unui astfel de sistem este de a face accesibile toate datele necesare
funcţionării unei organizaţii, oriunde s-ar afla ele, şi de a le răspândi fizic,
dacă este cazul, în acele locaţii unde vor fi utilizate cel mai des
Rolul unui SGBDD este de a face ca o aplicaţie să poată efectua transparent
diverse operaţii asupra datelor împrăştiate în mai multe baze de date,
gestionate de diverse SGBD-uri, care rulează pe calculatoare cu tehnologii
de fabricaţie diferită şi care sunt înzestrate cu sisteme de operare diferite,
toate fiind conectate prin reţele de calculatoare de topologii posibil diferite.
SGBDD-ul este o extensie software şi funcţională a sistemelor SGBD
locale.
Termeni vehiculaţi:
FRAGMENTARE, ALOCARE, REPLICARE
Cluj-Napoca, 8 Octombrie 2019
Sisteme de baze de date
distribuite
 Introducere în sisteme de baze de
date distribuite
 Sisteme de Gestiune a Bazelor de
Date Distribuite
 Fragmentarea

Cluj-Napoca, 8 Octombrie 2019


Fragmentarea (partiţionarea)
Definiţie: Fragmentarea reprezintă procedeul
de spargere al relaţiilor utilizate într-un
sistem distribuit prin operaţiuni relaţionale
de proiecţie şi selecţie controlate, în
vederea plasării aşa-numitelor fragmente
rezultate în locul în care sunt cel mai
frecvent solicitate datele pe care le conţin.
Scop – divizarea tabelelor de date în unul sau
mai multe fragmente disjuncte, în scopul
stocării fizice optime.
Cluj-Napoca, 8 Octombrie 2019
Avantaje
 Uzanţa. În aplicaţiile proiectate pentru baze de date – în general, multiutilizator
– se practică frecvent utilizarea tabelelor virtuale în detrimentul relaţiilor
întregi. De cele mai multe ori un operator poate să se concentreze strict asupra
problemelor cu care interacţionează şi nu asupra unor aspecte colaterale.
Unitatea atomică de proiectare şi utilizare în cadrul unor astfel de sisteme, nu va
fi deci relaţia (de cele mai multe ori), ci o subdiviziune a acesteia;
 Eficienţa. Distribuirea unor relaţii întregi pe diferite staţii de lucru ar anula
aspectul „semantic” al siturilor în funcţionalitatea sistemului distribuit. Cu ce ar
ajuta dacă în situl X localizat în Cluj-Napoca am avea stocată relaţia ce conţine
materiile de studiu, iar pe nodul Y aflat în Sighetu Marmaţiei am avea relaţia
care conţine datele de identificare ale tuturor studenţilor? Principiu de bun simţ:
plasarea datelor în acel loc de unde vor fi solicitate cel mai des;
 Paralelismul. Mai multe fragmente ale unei baze de date permit sporirea
accesului concurent. Rezolvarea cererilor ar fi încetinită de secvenţialitatea
procesării, sau întârzieri datorate metodelor de gestionare a accesului
concurent, dimensiunea mai mare a relaţiei, şi nu în ultimul rând, distanţa;
 Securitatea. În ceea ce priveşte securitatea, un atac din partea unor persoane
rău-voitoare n-ar afecta funcţionarea întregului sistem (şi în general chiar deloc,
datorită replicării datelor) în cazul unui atac asupra unui sit, care conţine doar
câteva fragmente ale bazei de date şi nicidecum întreaga bază sau relaţii întregi.
Cluj-Napoca, 8 Octombrie 2019
Dezavantaje
 Complexitatea proiectării. Un sistem distribuit este mai greu
de proiectat decât unul nedistribuit. Existenţa fragmentelor
implică o serie de factori suplimentari, cum ar fi de exemplu
stabilirea locaţiei unui fragment, optimizarea interogărilor
etc.;
 Performanţa. Chiar dacă în general, datorită unei alocări
eficiente a fragmentelor, performanţele unui sistem distribuit
sunt mai mari decât ale unui sistem nedistribuit, lucrurile se
pot complica în cazul unor interogări mai complexe care
solicită informaţii prea disparate (de pe mai multe situri);
 Controlul integrităţii. Păstrarea integrităţii bazei de date este
dezideratul primordial al oricărui sistem tranzacţional. Faţă de
abordarea în cazul unui sistem centralizat, existenţa mai
multor fragmente răspândite pe siturile sistemului, complică
lucrurile.

Cluj-Napoca, 8 Octombrie 2019


Caracteristicile fragmentării
 Completitudinea. Fragmentele rezultate, să asigure acoperirea
întregii relaţii iniţiale. Deci, fragmentarea are ca obiectiv
eliminarea apariţiei pierderilor informaţionale şi nu cea a
redundanţelor.
 Refacerea relaţiei iniţiale. În orice moment să poată fi
reprodusă relaţia iniţială din care fragmentele provin. Operatorii
de recompunere trebuie să fie strict relaţionali.
 Caracterul disjunct. Completare la prima condiţie. Fragmentele
trebuie să fie disjuncte, adică să nu se suprapună, atât ca tuple
cât şi ca atribute.
Excepţie: Pentru a nu pierde legătura între datele unui
tuplu şi pentru a putea face recompunerea cu uşurinţă, cheile
primare trebuie replicate pentru fiecare fragment creat de-a
lungul atributelor

Cluj-Napoca, 8 Octombrie 2019


Tipuri de fragmentare
În funcţie de operatorii relaţionali utilizaţi,
avem:
 Fragmentare orizontală
 Fragmentare verticală şi
 Fragmentare mixtă.
Pe lângă tipurile clasice:
– Fragmentări derivate
– Relaţii nefragmentate

Cluj-Napoca, 8 Octombrie 2019


Bibliografie
[Connolly et al. 2001] CONNOLLY, T., BEGG, C. şi STRACHAN, A. – „Baze de date.
Proiectare. Implementare. Gestionare”, Editura Teora, Bucureşti, 2001, ISBN 973-20-
0601-3
[Date 2005] DATE, Chris J. – „Baze de date”, Ediţia a VIII-a, Editura Plus, Bucureşti, 2005
[Gardarin & Valduriez 1989] GARDARIN, Georges, VALDURIEZ, Patrick – ”Relational
Databases and Knowledge Base”, Addison-Wesley, 1989
[Lungu et al. 1995] LUNGU, Ion, BODEA, C., BĂDESCU, G., IONIŢĂ, C. – „Baze de date.
Organizare, Proiectare şi Implementare”, Editura All Educational, Bucureşti, 1995,
ISBN: 973-571-106-0
[Messaoui 2001] MESSAOUI, Rokia – ”Bases de donées reparties”, Site, UQAM, Montreal,
2001
[Őzsu & Valduriez 1991] ŐZSU, M. Tamer, VALDURIEZ, Patrick – ”Principles of
Distributed Database Systems”, Prentince-Hall, Inc., New Jersey, 1991, ISBN: 0-13-
715681-2
[Sacca & Wiederhold 1985] SACCA, D., WIEDERHOLD, G. – ”Database Partitioning in a
Cluster of Processors”, ACM Trans. Database Systems, pag. 29-56, Octombrie, 1985
[Schmitt & Saake 2005] SCHMITT, Ingo, SAAKE, Gunter – ”A Comprehensive Database
Schema Integration Method Based on the Theory of Formal Concepts”, Acta Informatica,
Vol.41, Iss. 7-8; pg. 475, Heidelberg, Jun 2005, ISSN: 0015903
[Sitar & Sitar 2002-2] SITAR-TĂUT, Adela-V., SITAR-TĂUT, Dan-A. – „O scurtă privire
asupra sistemelor distribuite” – Sesiune jubiliară, Editura Risoprint, Cluj-Napoca, 2002
[Sitar 2005] – SITAR-TĂUT, Dan-A.Baze de de date distribuite, RISOPRINT, Cluj-Napoca,
2005 , pagina 157 - 161

Cluj-Napoca, 8 Octombrie 2019

S-ar putea să vă placă și