47
DISTRIBUIRANE BAZE PODATAKA -UVODNO PREDAVANJE - Prof. dr.sc. Dražena Gašpar 20.12.2012. Fakultet strojarstva i računarstva – FSR Diplomski studij

Distribuirane baze podataka

  • 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