1 / 16

Porazdeljena podatkovna baza (Distributed Database)

Porazdeljena podatkovna baza (Distributed Database). Zakaj bi vsebino PB porazdelili na več računalniških sistemov? geografsko dislocirane organizacije zahtevajo prenos velikih količin podatkov po omrežju  ‘zadušitev’ strežnika  ‘zadušitev’ omrežja

Download Presentation

Porazdeljena podatkovna baza (Distributed Database)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Porazdeljena podatkovna baza(Distributed Database) • Zakaj bi vsebino PB porazdelili na več računalniških sistemov? • geografsko dislocirane organizacije zahtevajo prenos velikih količin podatkov po omrežju  ‘zadušitev’ strežnika  ‘zadušitev’ omrežja • velika ranljivost podjetja (le en strežnik)

  2. Računalniški sistem 4 Komunikacijsko omrežje SUPB SUPPB SUPPB SUPPB Računalniški sistem 3 Računalniški sistem 3 PB PB PB PB Komunikacijsko omrežje Računalniški sistem 2 Računalniški sistem 1 Računalniški sistem 2 Računalniški sistem 1 Centralizirana PB Porazdeljena PB SUPPB = sistem za upravljanje porazdeljene PB oz. distributed DBMS

  3. Opredelitev porazdeljene PB • PPB je urejena zbirka logično povezanih podatkov, ki je fizično porazdeljena (nameščena) na vozliščih računalniškega omrežja - podatkovnih računalnikih (data computer oz. DC). Cilj uvedbe porazdeljenih podatkovnih baz: • Boljše performanse(zakaj?) • Večja zanesljivost (zakaj?) SUPPB – programska oprema, ki omogoča upravljanje porazdeljene podatkovne baze in hkrati uporabnikom prikrije porazdelitev podatkov.

  4. (poenostavljen)Prikaz arhitekture porazdeljene PB Pozor: večje število nivojev kot pri ANSI/SPARC arhitekturi => večja kompleksnost SUPPB-jev Zunanja shema 1 Zunanja shema 2 Zunanja shema n Globalna konceptualna shema Lokalna konceptualna shema m Lokalna konceptualna shema 1 Lokalna konceptualna shema 2 Notranja shema 1 Notranja shema 2 Notranja shema m PB 1 PB 2 PB m

  5. Pravila (želje/pričakovanja) za delovanje PPB Osnovno pravilo: uporabnik mora dojemati porazdeljene podatkovne sisteme enako kot neporazdeljene • Lokalna avtonomnost • Neodvisnost od centralnega sistema • Nenehno delovanje • Transparentnost lokacij • Transparentnost fragmentacij • Transparentnost replikacij • Porazdeljeno procesiranje povpraševanj • Porazdeljeno procesiranje transakcij • Neodvisnost od HW / OS / omrežja / podatkovne baze

  6. Delitve porazdeljenih PB1. Glede na stopnjo homogenosti • Homogena • na vseh strežnikih se nahajajo enaki SUPB-ji v veljavi je tudi enoten podatkovni model • Lažje načrtovanje, vzdrževanje • Težava: kako prepričati vse uporabnike, da se odločijo za isti SUPB • Heterogena • na strežnikih so nameščeni različni SUPB-ji

  7. Delitve porazdeljenih PB2. Glede na stopnjo lokalne avtonomije • Brez lokalne avtonomije • vsi dostopi do PPB se izvajajo le preko odjemalca, ki zahtevo posreduje SUPPB-ju (distributed concurrency controller) • Slabost: počasnejši dostop do lokalnih podatkov • Prednost: enotnost dostopa do vseh podatkov • Z lokalno avtonomijo • vsaka lokalna PB ima tudi svoje direktne uporabnike, ki neposredno dostopajo do nje s pomočjo lokalnega SUPB

  8. Delitve porazdeljenih PB3. Glede na stopnjo porazdelitvene transparentnosti • Visoka stopnja porazdelitvene transparentnosti • uporabnik  dojema porazdeljeno podatkovno bazo, kot bi bila ena sama • obstaja globalni podatkovni slovar, njegova uporaba je uporabnikom prikrita • boljši način • problem: izdelava integrirane sheme podatkov • Nizka stopnja porazdelitvene transparentnosti • uporabnik mora sam vedeti, na katerem strežniku se nahajajo želeni podatki

  9. Delitve porazdeljenih PB4. Glede na način porazdeljevanja podatkov • Horizontalno (porazdelimo vrstice tabel) • Vertikalno (porazdelimo stolpce tabel) • Pri vertikalni porazdelitvi se stolpec s ključem podvoji (zakaj?) • Kombinirano (h + v); večnivojsko porazdeljevanje – posledica: boljše performanse (manj dostopov do posamezne tabele)

  10. Primer neporazdeljene tabele Primer horizontalne porazdelitve podatkov Delitev narejena na osnovi podatka Razred

  11. Primer vertikalne porazdelitve podatkov Podvajanje ključev!

  12. Posebne zahteve SUPPB (DDBMS) 1. procesiranje in optimizacija povpraševanj • okolje centralizirane baze – primarni so stroški dostopa do podatkov • okolje porazdeljene baze – primarni so stroški omrežja (stroški prenosa podatkov po omrežju – št. zlogov, ki jih prenašamo) • Primer: Tabela Kandidat KandidatID(9), Priimek (15), Ime (15), SolaID(4), .. 10.000 zapisov 100 byte/zapis Tabela Sola SolaID(4), ImeSole(10),Naslov,… 100 zapisov 35 byte/zapis Komunikacijsko omrežje Podatkovni strežnik 2 Podatkovni strežnik1 Poizvedba: SELECT Priimek, Ime, ImeSole FROM Kandidat, Sola WHERE Kandidat.SolaID=Sola.SolaID Računalniški sistem 3

  13. Optimizacija poizvedb (nad.) • Več alternativ: • način • kopiraj vse zapise KANDIDAT in SOLA v vozlišče 3; • poveži podatke (join) in prikaži rezultat • Cena = 1.000.000 + 3.500 = 1.003.500 bytes • način • kopiraj vse zapise KANDIDAT (1,000,000 bytes) iz vozlišča 1 v vozlišče 2 • poveži podatke • rezultat (400,000 bytes) pošlji v vozlišče 3 • Cena = 1.000.000 + 400.000 = 1.400.000bytes • način • kopiraj vse zapise SOLA (3.500) iz vozlišča 2 v vozlišče1 • poveži podatke • rezultat pošlji iz vozlišča 1 v vozlišče 3 (400.000) • Cena = 3.500 + 400.000 = 403.500 bytes • Tudi druge alternative (semijoin) • ‘Pamet’ (logika) SUPPB-ja pri optimizaciji poizvedb bistveno vpliva na preformanse sistema

  14. Posebne zahteve SUPPB (DDBMS) 2. zaščita transakcij • Obstajajo optimistični in pesimistični načini zaščite transakcij (razlika?) • Ena od možnosti je dvofazno potrjevanje uspešnega zaključka transakcije (Two Phase Commit ali synchronous replication protocol) • 2PC – transakcijska zaščita pri ažuriranju podatkov, ki se nahajajo v različnih strežnikih; • Potek 2PC: • Faza 1: Vsem vozliščem pošlji sporočilo: “Ali lahko izvedeš transakcijo X?” Vozlišča, ki lahko izvedejo transakcijo, odgovorijo “Da". • Faza 2: Če so vsa vozlišča odgovorila “Da", še enkrat vsem pošlji sporočilo “Izvedi transakcijo".Če je katerokoli vozlišče odgovorilo "Ne", vsem pošlji sporočilo o preklicu transakcije.

  15. Posebne zahteve SUPPB (DDBMS) 3. nadzor vzporednosti • Namen: zagotoviti tekočo konsistentnost (skladnost) vseh v globalni podatkovni bazi podvojenih podatkov pri ažuriranju katerekoli njihove kopije • globalna podatkovna baza mora delovati, kljub izpadu posameznega strežnika; (pred njegovo ponovno vključitvijo v globalni sistem, je potrebno izvesti uskladitev vseh v njem podvojenih podatkov s kopijami iz drugih strežnikov, ki so se med izpadom ažurirale naprej) => operacije replikacije naj se izvajajo avtomatično

  16. Porazdeljena PB: + in - Slabosti • kompleksno načrtovanje in upravljanje PB • kompleksna koordinacija nadzora • manjša varnost • pomanjkanje standardov Prednosti • večja zanesljivost in dostopnost podatkov • hitrejši dostop • nižji komunikacijski stroški • podatki so na mestih, kje je največje povpraševanje • porazdeljeno procesiranje  večja zmogljivost celega sistema • lokalna avtonomija

More Related