Det distribuerede operativsystem DBOS, der kører oven på DBMS, præsenteres

DBOS-projektet (DBMS-oriented Operating System) præsenteres, der udvikler et nyt operativsystem til at køre skalerbare distribuerede applikationer. Et særligt træk ved projektet er brugen af ​​et DBMS til lagring af applikationer og systemtilstand, samt tilrettelæggelse af adgang til staten kun gennem transaktioner. Projektet udvikles af forskere fra Massachusetts Institute of Technology, University of Wisconsin og Stanford, Carnegie Mellon University og Google og VMware. Værket distribueres under MIT-licensen.

Komponenter til interaktion med udstyr og hukommelsesadministrationstjenester på lavt niveau er placeret i mikrokernen. Mulighederne fra mikrokernen bruges til at starte DBMS-laget. Systemtjenester på højt niveau, der muliggør applikationsudførelse, interagerer kun med det distribuerede DBMS og er adskilt fra mikrokernen og systemspecifikke komponenter.

At bygge oven på et distribueret DBMS gør det muligt at gøre systemservices initialt distribueret og ikke bundet til en specifik node, hvilket adskiller DBOS fra traditionelle klyngesystemer, hvor hver node kører sin egen instans af operativsystemet, oven på hvilken separat klyngeplanlæggere, distribuerede filsystemer og netværksadministratorer lanceres.

Det distribuerede operativsystem DBOS, der kører oven på DBMS, præsenteres

Det bemærkes, at brug af moderne distribuerede DBMS'er som grundlag for DBOS, lagring af data i RAM og understøttende transaktioner, såsom VoltDB og FoundationDB, kan give tilstrækkelig ydeevne til effektiv udførelse af mange systemtjenester. DBMS kan også gemme skemalægger, filsystem og IPC-data. Samtidig er DBMS'er meget skalerbare, giver atomicitet og transaktionsisolering, kan håndtere petabytes af data og giver værktøjer til adgangskontrol og sporing af datastrømme.

Blandt fordelene ved den foreslåede arkitektur er en betydelig udvidelse af analytiske muligheder og en reduktion i kodekompleksitet på grund af brugen af ​​almindelige forespørgsler til DBMS i operativsystemtjenesterne, på den side af hvilke implementeringen af ​​transaktioner og værktøjer til at sikre høj tilgængelighed udføres (en sådan funktionalitet kan implementeres på DBMS-siden én gang og bruges i OS og applikationer).

For eksempel kan en klyngeplanlægger gemme information om opgaver og behandlere i DBMS-tabeller og implementere planlægningsoperationer som almindelige transaktioner, blande imperativ kode og SQL. Transaktioner gør det lettere at løse problemer som f.eks. samtidighedsstyring og fejlgendannelse, fordi transaktioner garanterer konsistens og tilstandsvedholdenhed. I forbindelse med planlægningseksemplet tillader transaktioner samtidig adgang til delte data og sikrer, at statens integritet opretholdes i tilfælde af fejl.

De mekanismer til logning og dataanalyse, der leveres af DBMS, kan bruges til at spore adgang og ændringer i applikationstilstand, overvågning, fejlretning og opretholdelse af sikkerhed. For eksempel, efter at have opdaget uautoriseret adgang til et system, kan du køre SQL-forespørgsler for at bestemme omfanget af lækagen og identificere alle operationer udført af processer, der har fået adgang til fortrolig information.

Projektet har været under udvikling i mere end et år og er på stadiet med at skabe prototyper af individuelle arkitektoniske komponenter. I øjeblikket er der udarbejdet en prototype af operativsystemtjenester, der kører oven på DBMS, såsom FS, IPC og scheduler, og der udvikles et softwaremiljø, der giver en grænseflade til at køre applikationer baseret på FaaS (function-as- a-service) model.

Det næste udviklingstrin planlægger at levere en fuldgyldig softwarestak til distribuerede applikationer. VoltDB bliver i øjeblikket brugt som et DBMS i eksperimenter, men diskussioner er i gang om at skabe vores eget lag til lagring af data eller implementere manglende kapaciteter i eksisterende DBMS'er. Spørgsmålet om, hvilke komponenter der skal udføres på kerneniveau, og hvilke der kan implementeres oven på DBMS, er også under diskussion.

Kilde: opennet.ru

Tilføj en kommentar