Softver telekomunikacionih sistema
Univerzitet u Novom SaduFakultet tehničkih naukaDepartman za energetiku, elektroniku i
telekomunikacije
Katedra za telekomunikacije i obradu signala
Baze podataka na cloudu
Sadržaj
• Izazovi u skladištenju podatak na cloud-u
• Database as a servis - DBaaS
• Zaključak
Izazovi u skladištenju podataka na cloud-u
Aktuelni trendovi
• Gartner predviđa da čak 75% baza podataka do 2022. godine migrira na cloud, a glavni razlozi su:– Ogroman rast broj novih aplikacija koje
rade u cloud okruženju
– Potreba za analizom ogromnih količina podataka u oblastima veštačke inteligencije i mašinskog učenja što cloud čini pogodnijim od lokalnih baza podataka
– Rentabilnije, brže i skalabilnije rešenje.
• Očekuje se, da samo 5% baza podataka nakon nekog perioda bude vraćeno u lokalne data centre.
Suštinska pitanja u cloud computing-u
• Briga o bezbednosti i pristupu podacima predstavlja jedno od najvažnijih pitanja razvoja cloud computing-a.
• Interes korisnika - da podaci na cloud-u budu zaštićeni i dostupni na zahtev.
• Provajdera cloud-a muče sledeća pitanja:– Koju bazu podataka koristiti sa aspekta
skalabilnosti i distribuiranosti cloud-a
– Kako administrirati bazu podataka
– Kome dopustiti da vrši administraciju
– Na koji način definisati zakonsku regultivu, da bi se izbegli eventualni problemi.
Podaci na cloud-u
• Konceptom cloud computing-a je definisano da na cloud-u korisnik može držati svoje podatke bilo gde, koristiti bilo koju aplikaciju i bilo koju infrastrukturu i platformu.
• Korisniku neke od usluga cloud-a nije važno gde se podaci nalaze, već samo da se garantuje:
– Privatnost podataka
– Zabrana neovlašćenog pristupa
– Integritet podataka
– Dostupnost podataka
– Brz pristup podacima
– Poštovanje zaključenog govora između korisnika i pružaoca usluge.
Bezbednost podataka na cloud-u
• Pitanje bezbednosti podataka je usko povezano sa kontrolom pristupa:– Kada je baza podataka unutar kompanije zna
se ko i pod kojim uslovima ima pravo pristupa– Ako je baza podataka izvan kompanije, mora
se odrediti ko ima pristup podacima i koje standarde za bezbednost podataka primenjuje onaj kod koga su podaci smešteni.
• Fizička bezbednost objekta sadrži problem kako fizički zaštiti mrežu od neovlašćenog pristupa. – U mrežnim komunikacija se koriste DMZ zone,
firewall uređaji, IDS sistemi i dr.
• Generalno posmatrano smeštanje podataka na cloud predstavlja izazov jer i svi drugi to mogu uraditi kroz legalan zakup servisa čak i na istom segmentu mreže.
Latencija na cloud-u
• Latencija (eng. Latency) u velikoj meri zavisi od lokacije baze podataka odnosno da li je ista kod korisnika ili je npr. na cloud-u.
• Zahtevi korisnika su da ona bude ista kao kada se radi sa sa lokalnom bazom podataka.
• Dostupnost podataka u bazi u velikoj meri zavisi od mrežne konekcije, performansi same baze podataka, ali i od ponašanja u slučaju bilo kakvog prekida odnosno mogućnosti da se isti izbegne.
Ostali problemi na cloud-u
• Da bi se podaci upisivali u baze podataka neophodno je da postoje standardi, a ne da se prave zasebne aplikacije.
• Raspolaganje podacima u slučaju raskida saradnje predstavlja problem koji se mora rešiti kroz zaključivanje sveobuhvatnog ugovora između korisnika i provajdera cloud-a.
• Poseban problem nastupa kada se zaključuje ugovor sa SaaS provajderom koji zakup skladištnog prostora zakupljuje sa drugim provajderom.
Specifičnosti skladištenja podataka na cloud-u• Razvoj cloud computing-a vodi ka jasnom definisanju
pravila igre između korisnika i pružaoca usluge, ali neki problemi i dalje ostaju nerešeni.
– Npr. ako korisnika ne interesuje gde su podaci smešteni na cloud-u, a cloud provajder svojim poslovanjem briše granice između država, ko je onda nadležan za rešavanje problema kao što su krađe ili zaključavanja podataka?
• Glavni problemi na koje treba naći odgovor su:
– Vlasništvo nad podacima: lokacija podataka i zakoni, privatnost i pouzdanost, vlasništvo
– Bezbedonosna pitanja: interoperabilnost i portabilnost, pouzdanost, obavezivanje na servis i sl.
– Poslovno okruženje: autorizirani pristup, integritet i dostupnost, gubitak podataka, uništavanje podataka.
Database as a servis - DBaaS
Usluge na cloud-u
• Cloud computing nudi tri osnovna tipa usluga:
– Infrastructure-as-a-Service (IaaS): pruža usluge na najnižem tehnološkom nivou tj. davanje procesorskih usluga, usluga skladištenja podataka i sl.
– Platform-as-a-Service (PaaS): obezbeđuje razvojne alate za izgradnju aplikacija
– Software-as-a-Service (SaaS): opisuje model korištenja aplikacija na zahtev.
Posebne usluge na cloud-u koje se odnose na podatke• Cloud Storage je model servisa kojim se korisniku daje
mogućnost da svoje podatke smesti na cloud na način kako se smeštaju i na bilo koji drugi uređaj.
• Data-as-a-Service je servis koji omogućava skladištenje podataka na cloud-u i pristup preko lokalne aplikacije. – Za razliku od baza podataka, ovim podacima se ne
pristupa preko uobičajenog interfejsa, a sam servis je smešten između IaaS i PaaS
• Database-as-a-Service (DBaaS) je najkompleksnije rešenje za rad i čuvanje podataka na cloud-u gde je pristup moguć korištenjem API poziva. – Upravljački sloj se nalazi u pozadini i brine o
nadgledanju baze i njenom konfigurisanju sa ciljem da se postigne optimalna skalabilnost, visoka dostupnost i efikasna upotreba resursa na cloud-u.
– DBaaS možemo tretirati kao SaaS podskup koji pruža softver i hardver za baze podataka kao servis.
Šta se podrazumeva pod Dbaas?
• DBaaS servisom se tretira servis koji ispunjava sledeće uslove:
– Usluga mora biti dostupna na zahtev, bez prethodne instalacije softvera ili hardvera
– Provajder servisa je odgovoran za održavanje baze podataka.
• Pri izboru servisa mora se voditi računa o zahtevima i prirodi korisnikove aplikacije:
– Da li je potrebno obezbediti samo udaljeno skladište za smeštaj podataka (dovoljan je i Cloud storage) ili
– Da li traži osobine koje daje baza podataka kao što su npr. transakcije.
Baze podataka na cloud-u
• Baze podataka na cloud-u (eng. Cloud database) služe za skladištenje podataka na cloud-u, koriste odgovarajući DBMS tako da moraju da odgovore na zahteve korisnika i prilagode se osobinama cloud-a.
• Osnovne karakteristika koje trebaju posedovati ove baze su:
– Visoka dostupnost
– Brzina upisa i čitanja podataka
– Bezbednosti i privatnost
– Pouzdanost
– Konzistentnost
– Skalabilnost
– Distribuiranost.
Osnovne karakteristike baza podataka na cloud-u
• Od posebne važnosti za korisnike je da podaci u bazi podataka budu dostupni u svakom trenutku.
– Replikacija podataka bi trebala poboljšati pouzdanost, otpornost na greške i dostupnost.
• Da bi se povećala brzina izvršavanja upita ostavljena je mogućnost da se uključe i algoritmi paralelnog izvršavanja.
• Skalabilnost baze podataka treba da omogući dodavanje novih resursa kako bi se poboljšale performanse, bez prevelikih ulaganja u nadogradnje i izmene. ne bi smjeli remetiti rad baze. Takoÿer bi trebalo saþuvati sigurnost i konzistentnost podataka.
Distribuiranost baza podataka na cloud-u
• Distribuirana baza je skup baza smeštenih na više server u mreži koji se obično prezentuje kao jedna baza. – Distribuiranost treba da poboljša performanse baze
podataka i omogući veću dostupnost podacima.
• Distribuirani DBMS sistem za upravljanje distribuiranim bazama podataka je particionisan, tako da se svaka particija širi preko više čvorova.– Korisnik na čvoru može izvoditi lokalne transakcije na
particiji.
– Ukoliko jedan čvor izgubi vezu s ostalima, može se dopustiti funkcioniranje tog čvora, što se naziva "partition tolerance„ (baza podataka normalno nastavlja raditi, ali se postavlja pitanje konzistentnosti podataka jer svi čvorovi ne "vide" iste podatke).
Pristup bazama podataka na cloud-u
• Baze podataka na cloud computing platformi rade i koriste se na jedan od dva načina:
– Tradicionalno gde korisnici samostalno pokreću bazu podataka na oblaku koristeći image virtuelne mašine
– Database as a Service (DBaaS) kada kupovinom servisa baze podataka korisnici prustupaju bazi podataka koju održava provajder oblaka.
Baze podataka
Operativni sistem
virtuelne mašine
Izbor hardvera
Konfiguracija hardvera
Instalacija softvera za bazu
podataka i OEM
Instalacija i konfiguracija
operativnog sistema
Konfiguracija softvera i baze
podataka
Ako je potrebno još resursa dodaje se
hardver i vrši rekonfiguracija
Tradicionalan prisupDatabase as a service
Samouslužni portal
(енг. Self service portal)
Zahtev za pristup bazi
podataka preko portala
Ako je potrebno još resursa
uptiti zahtev preko portala
Tradicionalan pristup
19
• Na kvalitet rada utiče:
– Stalan porast broja baza podataka na oblaku
– Različite verzije softvera
– Problem kompatibilnosti
– Visoki troškovi produkcije.
Dani u nedelji
Zahtev BP
Odobrenje
Zahtev za hardver
i storage
Konfiguracija
operativnog
sistema i mreže
Alokacija storage-
a
Konfiguracija
klastera i kreiranje
BP
Dobijanje pristupa
u BP
Database as a Service (DBaaS)
• Neke platforme na oblaku nude mogućnost korišćenja baze podataka kao servisa, bez fizičkog pokretanja virtuelne instance za bazu podataka.
• Vlasnici aplikacija ne moraju da instaliraju i održavaju bazu podataka.
Fizička baza podataka
Database as a
Service (Daas)
Održava administrator
baze podataka
Servis za
programera
Zašto primeniti DBaaS?
• DBaaS je poželjan za korisnike i provajdere oblaka jer omogućava:
– Self service za korisnike
– Merenje upotrebe i optimizaciju performansi servisa
– Jednostavnu primenu na standardnim platformama
– Manje održavanja i bolju podršku
– Kraće vreme za inovacije.
DBaaS
Ljudski resursi
Marketing
Proizvodnja Inženjering
Prodaja
Servis
Finansije i
rukovodstvoInformacione
tehnologije
Virtuelizacija u DBaaS okruženju
Virtuelizacija u DBaaS okruženju
Hardverski sloj
Sloj virtuelnih
mašina
Sloj servera baza
podataka
Sloj instanci
Sloj baza podataka
Instanca Instanca Instanca Instanca Instanca Instanca
BP BP BP BP BP
Implementacija
Aplikacije i biznis servisi
Baza podataka
- platforma -
Infrastruktura
1. Planiranje i konfiguracija baza podataka na oblaku: - Katalog servisa
- Planiranje kapaciteta & konsolidacija
- Isporuka opreme
- konfiguracija рool-a resursa
- Konfiguracija različitih politika
2. ОMogućavanje sopstvenog servisa: - Implementacija kataloga servisa
- Omogućavanje upravljanja servisima
- Integracija preko API-a
3. Upravljanje & Monitoring - Monitoring baze podataka
- Konfiguracija sistema za upravljanje
- Upravljanje na svim nivoima
4. Merenje, tarifiranje i optimizacija servisa: - Merenje korišćenja pojedinih resursa
- Tarifiranje i prikaz potrošnje
Automatizacija
• Provajderi oblaka zbog velikog broja korisnika automatizuju brojne aktivnosti, a funkcije koje zahtevaju određen interval vremena kao backup se raspoređuju i izvršavaju u batch-u.
• Provajderi oblaka zaključuju SLA sporazume sa korisnicima i garantuju im kvalitet servisa ograničavajući broj konekcija i maksimalno dozvoljeno opterećenje procesora.
Lokalna mreža
Lokacija A
Lokalna mreža
Lokacija B
WMS сервис
Google maps,
Bing maps
Explorer
Izrada kataloga servisa
Definisanje nivoa servisa
da bi se ponuda
pojednostavila
Rezervacija resursa za
svaki nivo servisa
Determinisanje
pojedinačnih servisa koji
će biti omogućeni
Ujednačavanje servisa sa
homogenim modelom
resursa
Baza podataka tenanatBaza podataka šema
Mala količina Velika količina
Srednja količina Ogromna količina
I nivo II nivo III nivo
Konsolidacija DBaaS arhitekture
Virtuelne mašine
Baze podataka
namenjene korisnicima
Šeme servisa namenjenih
korisnicimaBaze podataka tenanata
Dele servere
Dele servere i operativne
sistema
Dele servere, operativni
sisem i bazu podataka
Dele servere, operativni
sistem i bazu podataka
konsolidacija
Modelovanje DBaaS servisa
• Pool resursa baze podataka (eng. Database resource pool) –homogeno grupisani resursi u klasteru ili van klastera sa zajedničkim karakteristikama.
• Zone su logički grupisani resursi infrastrukture oblaka na bazi QoS-a, funkcionalnosti, poslovnih ili geografskih kriterijuma
– Zone se koriste i za kontrolu pristupa i povraćaj sredstava.
http://www.oracle.com/technetwork/oem/cloud-mgmt/dbaas-overview-2148971.pdf
Self-Service
• Self-Service podrazumeva sledeće:
– Automatizovano i inteligentno postavljanje opterećenja i konfiguraciju
– Kompletan katalog namenskih baza podataka i šeme
– Upravljanje, kvote, politike i prikaze za Self-Service
– Fleksibilnu arhitekturu za kloniranje
– Potpuno kloniranje podataka
– Pravljenje instant baze podataka pomoću “SnapClone“-a
– Monitoring backup-a i instalacije softverskih dodataka (pach)
– Na API-ima vođen razvoj (RESTful i komandne linije).
Self-service portal
DBaaS
Портал & API
Evidencija
Brisanje
Primena
Управљање
· Lista zona
· Lista šablona servisa
· Lista instanci servisa
· Brisanje servisa
· Proširenje rezeracija
· Zahtevi prema bazi
podataka, šemama i bazi
podataka tenanata
· Praćenje rešavanja zahteva
· Kontrola servisa (Start/stop)
· Backup
· Restore
· Snapshot
· Dobijanje informacije o
povraćaju sredstava
Self-service portal
Kloniranje podataka
• Izazovi vezani za kloniranje podataka su:
– Širenje storage-a
– Trošenje vremena
– Nedostatak automatizacije
– Kompleksna administracija
– Niska brzina osvežavanja podataka.
• Snap Clone baze podataka se brzo kreira i često:
– Na ad hoc način
– Nezavisno od vrste storage-a
– Sa redukovanim kapacitetom u storage-ima.
Snap Clone
• Mogu biti kreirani iz bilo kojeg profila i svaki korisnik dobija lični read/write clone baze podataka.
• Najviše se koristi pri:
– Testiranju upgrade-a aplikacija
– Funkcionalnim testiranjima
– Analizi podataka i izveštavanju
– Razvoju aplikacija.
Snap Clone-ovi
Privatni backup-ovi
(Snapshot-ovi) za
korisnike
Produkciona baza
podataka Master Baza podataka
Sistem za upravljanje DBaaS na cloud-u
• DBaaS zahteva potpunu virtuelizaciju baze podataka i kompatibilnost sa MySQL pa je za kvalitetan servis potrebno da baza podataka zadovoljava sledeće uslove:– Brza migracija sa jednog na drugi server– Visoka dostupnost– Elastičnost odnosno mogućnost skaliranja na dodatne
servere.
• Upravljanje resursima i zahtevima na oblaku podrazumeva:– Upravaljanje zonama i infrastrukturnim resursima (Pool-
ovi baza podataka, serveri, storage-i)– Praćenje fluktuacije resursa, tenanata, bezbedonosnih
pretnji i dr.– Detaljan monitoring do nivoa pojedinačnog resursa– Praćenje zahteva, intenziteta kvarova i otklanjanje uskih
grla– Detaljno upravljanje svim hardverskim i softverskim
komponentama.
Automatizacija administracije
• Provajderi oblaka moraju da obezbede rad desetina hiljada baza podataka u isto vreme što zahteva automatizaciju.
– Da bi se administracija automatizovala na fleksibilan način koristi se najčešće REST API.
• Upravljanje incidentima podrazumeva:
– Uvid, upravljanje, identifikaciju i rešavanje incidenata iz jedne konzole
– Integraciju sa eksternim Helpdesk sistemom.
Fajl storageNoSQL
dokumenti
SQL
baza podatakaEksterni servisi
REST API alati
Zaključak
Zaključak
• Bazama podataka na oblaku pristupa se na:
– Tradicionalan način
– Kupovinom servisa baze podataka (DBaaS).
• DBaaS je koristan za korisnike i provajdere oblaka jer omogućava:
– Self service za korisnike
– Merenje upotrebe
– Optimizaciju performansi servisa
– Jednostavnu primenu na standardnim platformama
– Manje održavanja i bolju podršku
– Kraće vreme za inovacije.
Hvala na
pažnji!
University of Novi SadFaculty of Technical SciencesDepartment of Power, Electronic and
Telecommunication Engineering
Chair of Telecommunications and Signal Processing