Predstavljen je distribuirani operativni sustav DBOS koji radi povrh DBMS-a

Predstavljen je projekt DBOS (DBMS-oriented Operating System) koji razvija novi operativni sustav za pokretanje skalabilnih distribuiranih aplikacija. Posebnost projekta je korištenje DBMS-a za pohranu aplikacija i stanja sustava, kao i organiziranje pristupa stanju samo putem transakcija. Projekt razvijaju istraživači s Massachusetts Institute of Technology, Sveučilišta Wisconsin i Stanford, Sveučilišta Carnegie Mellon te Googlea i VMwarea. Djelo se distribuira pod licencom MIT-a.

Komponente za interakciju s opremom i usluge upravljanja memorijom niske razine smještene su u mikrojezgru. Mogućnosti koje pruža mikrokernel koriste se za pokretanje sloja DBMS. Sistemske usluge visoke razine koje omogućuju izvođenje aplikacija međusobno djeluju samo s distribuiranim DBMS-om i odvojene su od mikrojezgre i komponenti specifičnih za sustav.

Izgradnja na vrhu distribuiranog DBMS-a omogućuje da usluge sustava budu inicijalno distribuirane i da nisu vezane za određeni čvor, što razlikuje DBOS od tradicionalnih sustava klastera, u kojima svaki čvor pokreće vlastitu instancu operativnog sustava, na čijem vrhu se nalaze zasebni Pokreću se planeri klastera, distribuirani datotečni sustavi i mrežni upravitelji.

Predstavljen je distribuirani operativni sustav DBOS koji radi povrh DBMS-a

Primijećeno je da korištenje modernih distribuiranih DBMS-ova kao osnove za DBOS, pohranjivanje podataka u RAM i podržavanje transakcija, kao što su VoltDB i FoundationDB, može pružiti performanse dovoljne za učinkovito izvršavanje mnogih usluga sustava. DBMS također može pohraniti planer, datotečni sustav i IPC podatke. U isto vrijeme, DBMS-ovi su visoko skalabilni, pružaju atomičnost i izolaciju transakcija, mogu upravljati petabajtima podataka i pružaju alate za kontrolu pristupa i praćenje protoka podataka.

Među prednostima predložene arhitekture je značajno proširenje analitičkih mogućnosti i smanjenje složenosti koda zbog korištenja uobičajenih upita prema DBMS-u u uslugama operacijskog sustava, na čijoj strani je implementacija transakcija i alata za osiguranje visoke dostupnost se provodi (takva se funkcionalnost može jednom implementirati na strani DBMS-a i koristiti u OS-u i aplikacijama).

Na primjer, planer klastera može pohraniti informacije o zadacima i rukovateljima u DBMS tablicama i implementirati operacije raspoređivanja kao redovne transakcije, miješajući imperativni kod i SQL. Transakcije olakšavaju rješavanje problema kao što su upravljanje paralelnošću i oporavak od kvara jer transakcije jamče dosljednost i postojanost stanja. U kontekstu primjera planera, transakcije dopuštaju istovremeni pristup zajedničkim podacima i osiguravaju održavanje integriteta stanja u slučaju kvarova.

Mehanizmi zapisivanja i analize podataka koje pruža DBMS mogu se koristiti za praćenje pristupa i promjena u stanju aplikacije, praćenje, otklanjanje pogrešaka i održavanje sigurnosti. Na primjer, nakon otkrivanja neovlaštenog pristupa sustavu, možete pokrenuti SQL upite kako biste odredili opseg curenja, identificirajući sve operacije koje su izvršili procesi koji su dobili pristup povjerljivim informacijama.

Projekt je u razvoju više od godinu dana iu fazi je izrade prototipova pojedinih arhitektonskih komponenti. Trenutačno je pripremljen prototip usluga operativnog sustava koji rade na vrhu DBMS-a, kao što su FS, IPC i planer, a razvija se softversko okruženje koje pruža sučelje za pokretanje aplikacija temeljenih na FaaS-u (funkcija-kao- a-service) model.

Sljedeća faza razvoja planira osigurati potpuni softverski skup za distribuirane aplikacije. VoltDB se trenutno koristi kao DBMS u eksperimentima, ali su u tijeku rasprave o stvaranju vlastitog sloja za pohranjivanje podataka ili implementaciji nedostajućih mogućnosti u postojeće DBMS-ove. Pitanje koje komponente treba izvršiti na razini jezgre, a koje se mogu implementirati na vrhu DBMS-a također je predmet rasprave.

Izvor: opennet.ru

Dodajte komentar