Det distribuerte operativsystemet DBOS som kjører på toppen av DBMS er presentert

DBOS-prosjektet (DBMS-oriented Operating System) presenteres, som utvikler et nytt operativsystem for å kjøre skalerbare distribuerte applikasjoner. Et trekk ved prosjektet er bruken av et DBMS for lagring av applikasjoner og systemtilstand, samt organisering av tilgang til staten kun gjennom transaksjoner. Prosjektet utvikles av forskere fra Massachusetts Institute of Technology, University of Wisconsin og Stanford, Carnegie Mellon University og Google og VMware. Verket distribueres under MIT-lisensen.

Komponenter for samhandling med utstyr og lavnivå minneadministrasjonstjenester er plassert i mikrokjernen. Mulighetene gitt av mikrokjernen brukes til å starte DBMS-laget. Systemtjenester på høyt nivå som muliggjør applikasjonskjøring samhandler bare med det distribuerte DBMS og er atskilt fra mikrokjernen og systemspesifikke komponenter.

Å bygge på toppen av et distribuert DBMS gjør det mulig å gjøre systemtjenester initialt distribuert og ikke bundet til en spesifikk node, noe som skiller DBOS fra tradisjonelle klyngesystemer, der hver node kjører sin egen instans av operativsystemet, på toppen av hvilken separat klyngeplanleggere, distribuerte filsystemer og nettverksadministratorer lanseres.

Det distribuerte operativsystemet DBOS som kjører på toppen av DBMS er presentert

Det bemerkes at bruk av moderne distribuerte DBMS-er som grunnlag for DBOS, lagring av data i RAM og støttetransaksjoner, slik som VoltDB og FoundationDB, kan gi ytelse tilstrekkelig for effektiv utførelse av mange systemtjenester. DBMS kan også lagre planlegger, filsystem og IPC-data. Samtidig er DBMS-er svært skalerbare, gir atomitet og transaksjonsisolasjon, kan administrere petabyte med data og gir verktøy for tilgangskontroll og sporing av datastrømmer.

Blant fordelene med den foreslåtte arkitekturen er en betydelig utvidelse av analytiske evner og en reduksjon i kodekompleksitet på grunn av bruken av vanlige spørsmål til DBMS i operativsystemtjenestene, på siden av hvilke implementering av transaksjoner og verktøy for å sikre høy tilgjengelighet utføres (slik funksjonalitet kan implementeres på DBMS-siden én gang og brukes i OS og applikasjoner).

For eksempel kan en klyngeplanlegger lagre informasjon om oppgaver og behandlere i DBMS-tabeller og implementere planleggingsoperasjoner som vanlige transaksjoner, og blande imperativ kode og SQL. Transaksjoner gjør det lettere å løse problemer som samtidighetshåndtering og feilgjenoppretting fordi transaksjoner garanterer konsistens og tilstandsutholdenhet. I sammenheng med planleggereksemplet tillater transaksjoner samtidig tilgang til delte data og sikrer at statens integritet opprettholdes i tilfelle feil.

Logg- og dataanalysemekanismene levert av DBMS kan brukes til å spore tilgang og endringer i applikasjonstilstand, overvåking, feilsøking og vedlikehold av sikkerhet. For eksempel, etter å ha oppdaget uautorisert tilgang til et system, kan du kjøre SQL-spørringer for å bestemme omfanget av lekkasjen, og identifisere alle operasjoner utført av prosesser som har fått tilgang til konfidensiell informasjon.

Prosjektet har vært under utvikling i mer enn ett år og er i ferd med å lage prototyper av individuelle arkitektoniske komponenter. For tiden er det utarbeidet en prototype av operativsystemtjenester som kjører på toppen av DBMS, slik som FS, IPC og planlegger, og det utvikles et programvaremiljø som gir et grensesnitt for å kjøre applikasjoner basert på FaaS (function-as- a-service) modell.

Det neste utviklingsstadiet planlegger å tilby en fullverdig programvarestabel for distribuerte applikasjoner. VoltDB brukes for tiden som et DBMS i eksperimenter, men det pågår diskusjoner om å lage vårt eget lag for lagring av data eller implementere manglende evner i eksisterende DBMS. Spørsmålet om hvilke komponenter som skal kjøres på kjernenivå og hvilke som kan implementeres på toppen av DBMS er også under diskusjon.

Kilde: opennet.ru

Legg til en kommentar