Metode de execuție în paralel a interogărilor bazelor de date complexe

Referat
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 12 în total
Cuvinte : 4296
Mărime: 86.68KB (arhivat)
Publicat de: Alistar Burlacu
Puncte necesare: 10
Profesor îndrumător / Prezentat Profesorului: Gavril Godza
Metode de executie in paralel a interogarilor bazelor de date complexe - a fost prezentat in cadrul materiei "Retele de calcul si prelucrare distribuita". Universitatea Politehnica Bucuresti Facultatea de Automatica si Calculatoare 2007

Extras din referat

1. Introducere

Pe parcursul ultimei decade, toate sistemele comerciale de baze de date au inclus in produsele lor functii de procesare in paralel. Evolutia a fost generata de cresterea intr-un ritm considerabil a dimensiunilor bazelor de date. Potrivit rezultatelor din 1998 a “Concursului pentru baze de date foarte mari“, cele mai mari baze de date din lume, care au depasit dimensiunea de 10 TB, isi dubleaza marimea in fiecare an. In acest ritm, ele depasesc cresterea in viteza a procesoarelor si pe cea in marime a memoriilor, astfel incat sunt necesare actiuni suplimentare pentru a face fata efectelor survenite in urma cresterii rapide a volumului de date. Una dintre acele optiuni este paralelismul. Ajuta la procesarea multiplicata constanta , chiar daca se mareste dimensiunea bazei de date. Acest efect, deseori denumit “marire la scara” este important in incarcarea datelor, crearea de indecsi, in varii operatiuni de administrator care se fac asupra bazei de date, si bineinteles pentru aplicatiile ce folosesc loturi mari de date. Paralelismul este de asemenea folosit pentru a accelera sarcinile care altminteri ar lua zile sau chiar saptamani pentru a fi procesate devenind astfel inutile pentru aplicatie. Cerinte: aplicatiile de suport decisional sunt caracterizate prin rezultate rapide la sarcini complexe in structuri mari de date. Paralelismul in bazele de date poate rezolva asemenea tipuri de probleme si acest fapt va fi demonstrat in continuare.

Bazele de date au exploatat paralelismul inca de la inceput (la inceputul anilor ’60), intr-o maniera similara cu sistemele de operare. Un sistem de operare permite mai multor utilizatori sa foloseasca aceleasi resurse hardware, concomitent, adica in paralel, iar un sistem de baze de date permite ca aceeasi baza de date sa fie accesata concomitent de mai multe aplicatii. Ideea de fond este aceeasi: de fiecare data cand o aplicatie este blocata din cauza unei operatiuni lente, precum discurile I/O, comunicarea cu un nod la distanta, interactiune cu utilizatorul, functia procesorului este directionata catre o aplicatie gata de executie.Tostusi este o diferenta notabila intre modul in care un sistem de operare foloseste distribuirea timpului si ce poate face un sistem de baze de date cu multiplii utilizatori: avand in vedere ca sistemul de operare aloca fiecarui utilizator propriile resurse (procese, spatii pentru adrese, fisiere, sesiuni de lucru, etc ), baza de date este vazuta ca un obiect in comun. Diferite aplicatii pot accesa aceleasi inregistrari sau campuri in acelasi timp, si problema de a mentine in mod automat corectitudinea actiunilor intr-un asemenea mediu de executare in paralel, a fost una din marile provocari ale cercetarilor in domeniul bazelor de date, din anii ’70. Problema a fost solutionata de notiunea de tranzactie, cu interactiunile sale complexe intre verificarea structurala, recuperarea, iar fiabilitatea obtinuta s-a dovedit o baza ideala pentru larg raspanditele sistemele de informatii online. Faptul ca toate aspectele tehnice legate de fixare si recuperare pot fi complet ascunse de aplicatie, fac bazele de date moderne in stil SQL, primele medii de programare folosite comercial care in mod automat controleaza analogiile, adica paralelismul intre interogari.

Mult timp aceasta a fost singura utilizare a paralelismului in bazele de date – cu exceptia catorva sisteme speciale. Totusi, in anii ’80 utilizatorii au inceput in mod progresiv sa dezvolte aplicatii care erau diferite complet de tranzactiile online clasice: au cautat prin bazele lor de date (care, precum s-a spus erau intr-o continua crestere accelerata), sa gaseasca motive interesante, trenduri, preferinte ale clientilor, etc., genul de analiza supranumit “sustinere decizionala“, “exploatarea a datelor“, “procesare analitica online“ si multe alte denumiri. Acele aplicatii folosesc baze de date intr-un alt mod decat cele online. O tranzactie online este scurta; executa in mod normal 100.000 instructiuni, implica mai putin de 100 obiecte din baza de date, si genereaza mai putin de 10 mesaje. Totusi, sunt multe operatiuni simultane de acelasi tip, fiecare solicita raspuns in timp scurt, si astfel sistemul ar trebui sa functioneze la cote maxime. In acest caz paralelismul inseamna o supradimensionare: se doreste capacitatea de a se actiona la fel si in bazele mai mari de date, fara sa afecteze timpul de raspuns la operatiunile online.

Aplicatiile cu suport decizional, pe de alta parte, implica milioane de obiecte, executa 1012 instructiuni sau chiar mai mult, si in mod normal nu se efectueaza in paralel una cu alta sau cu operatiuni uzuale online. Executarea unor asemenea aplicatii in timp util solicita folosirea paralelismului in toate domeniile sistemului bazelor de date, ceea ce are un impact important asupra structurii generale a motorului bazei de date si a interfatei cu sistemul de operare.

2. Nivele de paralelism intr-un sistem de baze de date

Paralelismul poate fi folosit in sistemele de baze de date la diverite niveluri, in doze diferite. Cele mai edificatoare tipuri de paralelism pot fi clasificate astfel:

- Analogii inter-operationale,

- Analogii intre operatiunile bazelor de date in cadrul unei tranzactii,

- Executia in paralel a unei operatiuni unice cu baza de date,

- Acces in paralel la datele stocate.

Lista arata ca pe langa paralelismul din nivelurile joase, sistemele de baze de date au si o capacitate de concomitenta functionala. Sa detaliem deci fiecare tip in parte.

2.1 Analogii inter-operationale

Este vorba despre executarea simultana a diferitelor operatiuni online, mentionata in Sectiunea 1. Din moment ce functioneaza pe aceeasi baza de date (comuna), accesul simultan pentru citire/scriere catre acelasi element informational trebuie mediat automat de sitemul bazei de date pentru a mentine transparente pentru programul aplicatiei a tuturor aspectelor paralelismului; aceasta fiind un program segvential ce functioneaza pe principiul accesului liber la o baza de date cu utilizator unic. Aceasta abordare transparenta a paralelismului cu anumite garantii formale de continut, se bazeaza pe conceptul de tranzactie, ceea ce da executarii asa-numita proprietate ACID (valenta, consistenta, izolare, rezistenta ).

Preview document

Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 1
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 2
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 3
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 4
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 5
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 6
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 7
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 8
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 9
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 10
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 11
Metode de execuție în paralel a interogărilor bazelor de date complexe - Pagina 12

Conținut arhivă zip

  • Metode de Executie in Paralel a Interogarilor Bazelor de Date Complexe.doc

Alții au mai descărcat și

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Placa de Bază

Caracteristici generale ale placii de baza Placa de baza este un dizpozitiv ‘de baza’ un ‘pamânt’ pe care ‘se planteaza’ celelalte componente ....

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Te-ar putea interesa și

Procesările interogărilor în sisteme de gestiune a bazelor de date distribuite

CAPITOLUL I NOTIUNI INTRODUCTIVE DESPRE BAZE DE DATE DISTRIBUITE GENERALITATI Procesarea cererilor este o aplicatie cu performante critice, în...

Ai nevoie de altceva?