Prikazan je distribuirani operativni sistem DBOS koji radi na DBMS-u

Predstavljen je projekat DBOS (DBMS-oriented Operating System) kojim se razvija novi operativni sistem za pokretanje skalabilnih distribuiranih aplikacija. Posebnost projekta je korištenje DBMS-a za pohranjivanje aplikacija i stanja sistema, kao i organizovanje pristupa stanju samo putem transakcija. Projekat razvijaju istraživači sa Massachusetts Institute of Technology, University of Wisconsin i Stanford, Carnegie Mellon University i Google i VMware. Djelo se distribuira pod MIT licencom.

Komponente za interakciju sa opremom i usluge upravljanja memorijom niske razine smještene su u mikrokernel. Mogućnosti koje pruža mikrokernel koriste se za pokretanje DBMS sloja. Sistemske usluge visokog nivoa koje omogućavaju izvršavanje aplikacije komuniciraju samo sa distribuiranim DBMS-om i odvojene su od mikrokernela i komponenti specifičnih za sistem.

Izgradnja na vrhu distribuiranog DBMS-a omogućava da se sistemske usluge inicijalno distribuiraju i ne vezuju za određeni čvor, što razlikuje DBOS od tradicionalnih klaster sistema, u kojima svaki čvor pokreće svoju vlastitu instancu operativnog sistema, na vrhu koje je odvojeno Pokreću se programeri klastera, distribuirani sistemi datoteka i mrežni menadžeri.

Prikazan je distribuirani operativni sistem DBOS koji radi na DBMS-u

Napominje se da korištenje modernih distribuiranih DBMS-a kao osnove za DBOS, pohranjivanje podataka u RAM i prateće transakcije, kao što su VoltDB i FoundationDB, može obezbijediti performanse dovoljne za efikasno izvršavanje mnogih sistemskih usluga. DBMS također može pohraniti podatke planera, sistema datoteka i IPC. Istovremeno, DBMS-ovi su visoko skalabilni, obezbeđuju atomičnost i izolaciju transakcija, mogu da upravljaju petabajtima podataka i obezbeđuju alate za kontrolu pristupa i praćenje tokova podataka.

Među prednostima predložene arhitekture je značajno proširenje analitičkih mogućnosti i smanjenje složenosti koda zbog upotrebe običnih upita prema DBMS-u u uslugama operativnog sistema, na čijoj strani se implementiraju transakcije i alati za osiguranje visoke dostupnost se provodi (takva funkcionalnost se može jednom implementirati na strani DBMS-a i koristiti u OS i aplikacijama).

Na primjer, planer klastera može pohraniti informacije o zadacima i rukovateljima u DBMS tablicama i implementirati operacije planiranja kao redovne transakcije, miješajući imperativni kod i SQL. Transakcije olakšavaju rješavanje problema kao što su upravljanje konkurentnošću i oporavak od kvarova jer transakcije garantuju konzistentnost i postojanost stanja. U kontekstu primjera planera, transakcije dozvoljavaju istovremeni pristup dijeljenim podacima i osiguravaju održavanje integriteta stanja u slučaju kvarova.

Mehanizmi evidentiranja i analize podataka koje obezbjeđuje DBMS mogu se koristiti za praćenje pristupa i promjena u stanju aplikacije, praćenje, otklanjanje grešaka i održavanje sigurnosti. Na primjer, nakon otkrivanja neovlaštenog pristupa sistemu, možete pokrenuti SQL upite da odredite opseg curenja, identificirajući sve operacije koje izvode procesi koji su dobili pristup povjerljivim informacijama.

Projekat se razvija više od godinu dana i nalazi se u fazi izrade prototipova pojedinih arhitektonskih komponenti. Trenutno je pripremljen prototip usluga operativnog sistema koji rade na vrhu DBMS-a, kao što su FS, IPC i planer, a razvija se i softversko okruženje koje pruža interfejs za pokretanje aplikacija zasnovanih na FaaS-u (function-as- a-service) model.

Sljedeća faza razvoja planira da obezbijedi kompletan softverski stog za distribuirane aplikacije. VoltDB se trenutno koristi kao DBMS u eksperimentima, ali su u toku rasprave o stvaranju vlastitog sloja za pohranjivanje podataka ili implementaciji nedostajućih mogućnosti u postojećim DBMS-ovima. Pitanje koje komponente treba da se izvršavaju na nivou kernela, a koje se mogu implementirati na DBMS je takođe u diskusiji.

izvor: opennet.ru

Dodajte komentar