Upload
sda-ad
View
273
Download
4
Embed Size (px)
DESCRIPTION
Detaljan opis distribuirane baze podataka
Citation preview
DISTRIBUIRANE BAZE PODATAKA
- UVODNO PREDAVANJE -
Prof. dr.sc. Draena Gapar
20.12.2012.
Fakultet strojarstva i raunarstva FSR
Diplomski studij
SADRAJ PREDAVANJA
Uvod
Arhitektura distribuiranih BP
Dizajn distribuiranih BP
Procesiranje upita
Upravljanje transakcijama
Distribuirana kontrola viekorisnikog pristupa
Pouzdanost distribuiranih BP
Paralelni sustavi BP
LITERATURA
M.Tamer Ozsu, Patrick Valduriez
Principles of Distributed Database Systems
Third edition, 2010
OCJENJIVANJE
Vjebe max 40 bodova
Nastava .max 60 bodova
ILI
- Integralni ispit PISMENI+USMENI
ZATO ?
Distribuirani sustav BP je spoj dva pristupa obradi
podataka koja su na prvi pogled potpuno oprena:
- sustavi baza podataka
- raunalne mree
Raunalne mree promoviraju nain rada suprotan centralizaciji.
A BAZE PODATAKA ????
ZATO ?
Kljuna pitanja za razumijevanje ove kombinacije:
Najznaajniji cilj tehnologije BP je integracija, ne centralizacija
Integracija je mogua i bez centralizacije, odnosno, integriranje baze podataka i
umreavanja ne znai centralizaciju (upravo suprotno)
CILJ
Cilj distribuiranih BP je postii integraciju i transparentnost distribucije podataka
integracija centralizacija
DISTRIBUIRANE BP
to moe biti distribuirano?
Procesna logika
Funkcije
Podaci
Kontrola
TO SU DISTRIBUIRANE BAZE PODATAKA?
Distribuirana baza podataka (DDB) je skup nekoliko,
logiki povezanih baza podataka distribuiranih preko raunalne mree.
Sustav za upravljanje distribuiranim bazama podataka
(DDBMS) je softver koji upravlja DDB i osigurava pristupni mehanizam koji ini tu distribuciju transparentnom za korisnike.
Distribuirani sustav BP (DDBS) = DDB + DDBMS
DEFINICIJA
Skup baza podataka smjetenih na vie razliitih raunala i prostornih lokaliteta, a s kojima korisnik radi kao da je u pitanju
jedna jedinstvena baza.
Aplikacije istovremeno pristupaju i mijenjaju
podatke na vie razliitih baza podataka u mrei, gdje mrea moe biti LAN ili WAN.
DEFINICIJA DDBMS
Implicitne pretpostavke
Podaci pohranjeni na veem brojem lokacija (sites) gdje se svaka lokacija logiki sastoji od jednog procesora
Procesori na razliitim lokacijama su meusobno povezani putem raunalne mree (ne razmatraju se multiprocesori u DDBMS, tj. paralelni sustavi)
DDBS je baza podataka, a ne kolekcija datoteka.
Na smjetanje i upite nad podacima utjee korisniki pristupni uzorak.
DDBMS je skup DBMS-ova, a ne remote
datoteni sustav.
DISTRIBUIRANA DBMS - DEFINICJA
Lokacija5
Lokacija1
Lokacija2
Lokacija3Lokacija4
Komunikacijskamrea
TO NIJE DDBS?
Timesharing raunalni sustav
Slabije ili jae povezani multiprocesorski sustavi
Sustav BP koji postoji na jednom voru raunalne mree to je centralizirana BP na mrenom voru.
TO NIJE ?
Paralelni sustavi BP su znaajno razliiti od distribuiranih BP, iako su s njima povezani.
Shared Memory
TO NIJE DDBS?
Djeljivi disk
Nita se ne dijeli
Centralizirana baza podataka
ZNAAJKE DDBMS
Skup logiki povezanih djeljivih podataka
Podaci su razdvojeni na vie fragmenata
Fragmenti se mogu replicirati
Fragmenti/Replikacije pripadaju lokacijama
Lokacije su povezane komunikacijskom mreom
Podaci na svakoj lokaciji su pod nadzorom DBMS-a
DBMS na svakoj lokaciji moe upravljati lokalnim aplikacijama autonomno
Svaki DBMS uestvuje u najmanje jednoj globalnoj aplikaciji.
OSNOVNA KLASIFIKACIJA DDBMS
Homogeni sustav
sve lokacije koriste isti DBMS produkt
Heterogeni sustav
lokacije koriste razliite DBMS produkte
mogu koristiti i razliite modele podataka
OSNOVNA FUNKCIONALNOST DDBMS
Proireni komunikacijski servisi koji osiguravaju pristup udaljenim lokacijama i dozvoljavaju prijenos upita i podataka izmeu lokacija putem mree
Proireni katalog sustava za pohranjivanje detalja o distribuciji podataka
Distribuirano procesiranje upita, ukljuujui optimiziranje upita i pristup udaljenim podacima
Proirena kontrola sigurnosti za upravljanje odgovarajuim pravima pristupa distribuiranim podacima
Proireni servisi oporavka (engl. recovery) moraju uzeti u obzir ispade/greke pojedinih lokacija i ispade/greke komunikacijskih veza
ARHITEKTURA DDBMS
Sheme:
Skup globalnih vanjskih shema
Globalna konceptualna shema
Fragmentacijska shema i alokacijska shema
Skup shema za svaku lokalnu DBMS koji
zadovoljava ANSI-SPARC arhitekturu s tri
razine shema.
Globalna v anjska shema
Fragmentacijska shema
Alokacijska shema
Globalna v anjska shema Globalna v anjska shema
Data Data Data
Globalna
konceptualna shema
Lokalna v anjska
shema
Lokalna v anjska
shema
Lokalna v anjska
shema
Lokalna konceptualna
shema
Lokalna konceptualna
shema
Lokalna konceptualna
shema
Lokalna unutarnja
shema
Lokalna unutarnja
shema
Lokalna unutarnja
shema
. . . SnS1 S2
S1 S2 . . . Sn
STRATEGIJE ALOCIRANJA PODATAKA
etiri osnovne:
Centralizirana
Fragmentirana
Potpuna replikacija
Selektivna replikacija
STRATEGIJE ALOCIRANJA PODATAKA
Lokalizacija Pouzdanost
Raspoloiv.
Performans
e
Trokovi pohrane
Komunikac.
trokovi
Centralizirana Najmanja Najmanja Nezadovolja
vajueNajnii Najvii
Fragmentirana Velika Mala za
item, velika
za sustav
Zadovoljava
jueNajnii Niski
Potpuna
replikacijaNajvea Najvea Najbolje za
itanjeNajvii Visoki za
aurir., mali za itanje
Selektivna
replikacijaVelika Mala za
item, velika
za sustav
Zadovoljava
jueProsjeni Niski
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
Visoka razina pouzdanosti
Poboljane performanse
Lake proirenje sustava
Transparentnost distribuiranih, fragmentiranih i
repliciranih podataka
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
Visoka razina pouzdanosti
Replikacija komponenti
Ne postoji jedna toka pogreke, tj. puknut komunikacijski link ili procesni element ne obara
itav sustav
Procesiranje distribuiranih transakcija jami konzistentnost i viekorisniki rad DDB
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
Poboljane performanse
Blizina podataka mjestu uporabe
Smanjuje remote kanjenja u pristupu Trai odreenu potporu za fragmentaciju i
replikaciju
Paralelizam u izvravanju Meu-upit paralelizam (Inter-query parallelism) Intra-upit paralelizam (Intra-query parallelism)
Auriranje i read-only upiti utjeu znaajno na dizajn DDBS-a
Ako se uglavnom trai read-only pristup, potrebno je replicirati to je mogue vie podataka Zapisivanje postaje kompliciranije s repliciranim podacima
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
Lake proirenje sustava
Pitanje skaliranja baze podataka
Razvoj mikroprocesora i tehnologije radnih
stanica
Mrea radnih stanica je znatno jeftina od jednog mainframe raunala
Podatkovni komunikacijski trokovi naspram telekomunikacijskih trokova
Poveavanje veliine baze podataka
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
Transparentnost
Odnosi se na razdvajanje visoke razine
semantike sustava od nie razine implementacijskih pitanja
Transparentan sustav skriva implementacijske
detalje od korisnika.
Potpuno transparentan DBMS omoguava visoku razinu pristupa za razvoj kompleksnih
splikscijs.
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
(a) Korisnik eli vidjeti jednu BP
(b) Programer vidi vie baza podataka
Razlikuju se razliiti oblici transparentnosti DDBMSa:
Mrena transparentnost (takoer se naziva distribuirana transparentnost)
Lokacijska transparentnost
Transparentnost imenovanja
Replikacijska transparentnost
Fragmentacijska transparentnost
Transakcijska transparentnost
Transparentnost istovremenog pristupa
Transparentnost pogreaka
Transparentnost performansi
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Mrena/Distribucijska transparentnost omoguava korisniku promatranje baze kao jednog, loginog entitet.
Korisnik je zatien od operativnih detalja mree (ili ak ne zna za njeno postojanje)
Korisnik ne treba znati lokaciju podataka, a naredba koja se koristi za izvravane zadataka je neovisna o loklaciji podataka i mjestu izvravanja zadataka (lokacijska transparentnost)
Jedinstveno ime se daje za svaki objekt u bazi podataka (transparentnost imenovanja)
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Razliiti naini osiguravanja transparentnosti imenovanja:
Rjeenje 1: Kreirati ime centralnog servera, to rezultira
gubitkom dijela lokalne autonomije
sredinje mjesto moe postati usko grlo
niska raspoloivost (ako sredinje mjesto ispadne preostala mjesta ne mogu kreirati
nove objekte)
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
Rjeenje 2: Koristiti prefiks ispred objekta koji identificira mjesto gdje je kreiran
npr., podrunica kreirana na lokaciji S1 moe se imenovati S1.PODRUNICA
Takoer je potrebno identificirati svaki fragment i njegovu kopiju
npr., kopija 2 fragmenta 3 podrunice kreirane na lokaciji S1 moe se imenovati kaoS1.PODRUNICA.F3.C2
OBEANJA DISTRIBUIRANIH BAZA PODATAKA
Replikacijska transparentnost osigurava da
korisnik nije ukljuen u upravljanje kopijama nekih podataka.
Korisnik ne bi trebao biti ni svjestan postojanja replikacija, ve raditi kao da postoji smao jedna kopija podataka.
Replikacija podataka je potrebna iz razliitih razloga
npr. Poveanje efikasnosti pristupa za read-only podatke
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Fragmentacijska transparentnost osigurava da korisnik nije svjestan i nije ukljuen u fragmentaciju podataka
Korisnik nije ukljuen u pronalaenje strategije procesiranja upita nad fragmentima niti u formuliranje upita nad fragmentima
Evaluacija upita koji je specificiran nad cijelom relacijom, ali se treba izvriti nad fragmentima zahtijeva odgovarajuu strategiju evaluacije upita.
Fragmentacije se obino radi zbog performansi, raspoloivosti i pouzdanosti
Dvije alternative fragmentacije
Horizontalna fragmentacija: podjela relacije na podskupove n-torki
Vertikalna fragmentacija: podjela relacije po stupcima
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Transakcijska transparentnost osigurava da sve
distribuirane transakcije odre integritet i konzistentnost DDB, te podri istovremeni pristup
Svaka distribuirana transakcije se dijeli na vie pod-transakcija (pod-transakcija za svaku lokaciju koja
ima relevantne podatke) koje istovremeno pristupaju
podacima na na razliitim lokacijama
DDBMS mora osigurati nedjeljivost i globalne
transakcije i svake pod-transakcije
Moe se dalje dijeliti na
Transparentnost istovremenog pristupa
Transparentnost pogreaka
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Transparentnost istovremenog pristupa jami da se transakcije moraju izvravati neovisno i biti logiki konzistentne, tj. paralelno izvravanje skupa transakcija treba dati isti rezultat kao da su se te transakcije izvravale serijski.
Ovaj temeljni princip centraliziranih BP je puno kompliciraniji za realiziranje kod DBMS:
DDBMS moraju osigurati da se globalne i lokalne transakcije ne mijeaju jedna s drugom DDBMS moraju osigurati konzistentnost svih pod-transakcija globalne transakcije
Replikacija ini istovremeni pristup jo kompliciranijim
Ako je kopija repliciranih podataka aurirana, auriranje se mora primijeniti na sve kopije.
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Opcija 1: Propagirati promjene kao dio originalne transakcije, inei je atomiziranom operacijom; meutim, ako jedna lokacija koja dri kopiju nije dostupna, onda se transakcija odgaa dok ne postane dostupna
Opcija 2: Ogranieno propagiranje auriranja na samo one lokacije koje su trenutno raspoloive, dok e se ostale lokacije aurirati kada ponovno budu raspoloive.
Option 3: Doputa asinkrono auriranje kopija nakon nekog vremena to je original auriran. Odgaanje u postizanju konzistentnosti moe biti na rasponu od nekoliko sekundi do nekoliko sati.
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Transparentnost pogreaka: DDBMS mora osigurati atomiziranost i trajnost globalne
transakcije, odnosno pod-transakcije globalne
transakcije na nain da se itava potvrdi ili itava odbije.
DDBMS mora sinkronizirati globalnu transakciju
kako bi osigurao da su sve pod-transakcije
uspjeno kompletirane prije biljeenja konane potvrde (COMMIT) za globalnu transakciju
Rjeenje bi trebalo biti robusno na postojanje pogreaka na lokaciji ili mrei.
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Transparentnost performansi: DDBMS se mora
izvravati kao da je centralizirani DBMS
DDBMS ne bi trebao trpiti nikakvu degradaciju performansi zbog distribuirane arhitekture
DDBMS bi trebao odrediti najbolju cost-effective strategiju za izvravanje zahtjeva
Distribuirani procesor upita (DQP) mapira
zahtjeve za podacima u ureeni slijed operacija na lokalnim bazama
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
DQP mora voditi rauna o fragmentacji, replikaciji i alokacijskim shemama
DQP mora odluiti:
kojem fragmentu pristupiti
koju kopiju fragmenta koristiti
koju lokaciju koristiti
DQP formira izvrnu strategiju optimiziranu na temelju funkcije trokova
Obino trokovi povezani s distribuiranim zaktjevima ukljuuju: I/O troak, CPU troak i komunikacijski troak
OBEANJA DISTRIBUIRANIH BAZA
PODATAKA
Komleksnost
Trokovi
Sigurnost
Mnogo tea kontrola integriteta
Nedostatak standarda
Nedostatak iskustva
Kompleksniji dizajn baze podataka
KOMPLIKACIJE
Distribuiran dizajn baze podataka
Kako fragmentirati podatke?
Particionirani vs. Replikacijski podaci?
Distribuirano procesiranj eupita
Design algoritama koji analiziraju upite i prevode ih u seriju operatora manipuliranja podacima.
Pronalaenje optimalnog plana upita
Distribuirano upravljanje direktorijem
Distribuirana kontrola istovremenog pristupa
Sinkronizacija konkurentnog pristupa na nain da se ofri integritet BP
Integritet viestrukih kopija mora biti uzet u razmatranje
Dupravljanje distribucijskim deadlock management
Deadlock upravljanje: prevencija, izbjegavanje,otkrivanje/oporavak
TEHNIKI PROBLEMI
TEHNIKI PROBLEMI
Pouzdanost
Koliko je sustav otporan na greke
Atomiziranost i trajnost
Heterogene baze podataka
Ako nema homogenosti meu BP na razliitim lokacijama, bilo da su podaci logiki strukturirani (model podataka) ili na nain pristupnih mehanizama (jezici), postaje neophodno osigurati
translacijski mehanizam
DDBMS
Prednosti Nedostaci
Odraava organizacijsku strukturu Kompleksnost
Poboljana djeljivost i lokalna autonomija
Trokovi
Poboljana raspoloivost Sigurnost
Poboljana pouzdanost Oteana kontrola integriteta podataka
Poboljane performanse Nedostatak standarda
Ekonominost Nedostatak iskustva
Modularni rast Mnogo kompleksniji dizajn baze
CHRIS DATE-OVA PRAVILA
Lokalna autonomija lokalnim podacima seupravlja neovisno od ostalih mjesta;
Neovisnost o lokaciji korisnici i programeri nemoraju znati lokaciju ili put do podataka;
Nepostojanje centralnog mjesta niti jedno mjestonije vanije od drugog;
Neprekinuti rad niti jedna planirana aktivnostne bi trebala kao preduvjet za svoje izvravanjetraiti "sputanje" (engl. shutdown) bazepodataka;
Neovisnost od dijeljenja tablicu koja jefragmentirana (podijeljena) korisnici i dalje videkao jedinstvenu tablicu;
CHRIS DATE-OVA PRAVILA
Neovisnost o replikaciji transparentno upravljanje,pristup i auriranje redundantnih podataka,rekonstruiranje nakon ispada zbog razliitihgreaka;
Optimizaciju distribuiranih upita i neovisnost operformansama;
Upravljanje distribuiranim transakcijama: umetnutetransakcije koje auriraju vie mjesta izvravaju se sistovremenom kontrolom i oporavkom od konflikata;
Neovisnost od hardvera, operativnog sustava, mree,baze podataka;
Postojanje distribuiranog pristupa rjenikupodataka.
PITANJA ????
47