Det distribuerade operativsystemet DBOS som körs ovanpå DBMS presenteras

Projektet DBOS (DBMS-oriented Operating System) presenteras, som utvecklar ett nytt operativsystem för att köra skalbara distribuerade applikationer. En speciell egenskap för projektet är användningen av ett DBMS för att lagra applikationer och systemtillstånd, samt organisera åtkomst till staten endast genom transaktioner. Projektet utvecklas av forskare från Massachusetts Institute of Technology, University of Wisconsin och Stanford, Carnegie Mellon University och Google och VMware. Verket distribueras under MIT-licensen.

Komponenter för interaktion med utrustning och minneshanteringstjänster på låg nivå placeras i mikrokärnan. Möjligheterna som tillhandahålls av mikrokärnan används för att starta DBMS-lagret. Systemtjänster på hög nivå som möjliggör applikationskörning interagerar endast med det distribuerade DBMS och är separerade från mikrokärnan och systemspecifika komponenter.

Att bygga ovanpå ett distribuerat DBMS gör det möjligt att göra systemtjänster initialt distribuerade och inte knutna till en specifik nod, vilket skiljer DBOS från traditionella klustersystem, där varje nod kör sin egen instans av operativsystemet, ovanpå vilken separat klusterschemaläggare, distribuerade filsystem och nätverkshanterare lanseras.

Det distribuerade operativsystemet DBOS som körs ovanpå DBMS presenteras

Det noteras att användning av moderna distribuerade DBMS:er som bas för DBOS, lagring av data i RAM och stödjande transaktioner, såsom VoltDB och FoundationDB, kan ge tillräcklig prestanda för effektiv exekvering av många systemtjänster. DBMS kan också lagra schemaläggare, filsystem och IPC-data. Samtidigt är DBMS:er mycket skalbara, ger atomicitet och transaktionsisolering, kan hantera petabyte med data och tillhandahåller verktyg för åtkomstkontroll och spårning av dataflöden.

Bland fördelarna med den föreslagna arkitekturen är en betydande utökning av analysmöjligheter och en minskning av kodkomplexitet på grund av användningen av vanliga frågor till DBMS i operativsystemtjänsterna, på sidan av vilka implementeringen av transaktioner och verktyg för att säkerställa hög tillgänglighet utförs (sådan funktionalitet kan implementeras på DBMS-sidan en gång och användas i OS och applikationer).

Till exempel kan en klusterschemaläggare lagra information om uppgifter och hanterare i DBMS-tabeller och implementera schemaläggningsoperationer som vanliga transaktioner, blanda imperativ kod och SQL. Transaktioner gör det lättare att lösa problem som samtidighetshantering och felåterställning eftersom transaktioner garanterar konsistens och tillståndsbeständighet. I samband med schemaläggningsexemplet tillåter transaktioner samtidig åtkomst till delad data och säkerställer att statens integritet upprätthålls i händelse av fel.

Mekanismerna för loggning och dataanalys som tillhandahålls av DBMS kan användas för att spåra åtkomst och ändringar i applikationstillstånd, övervakning, felsökning och upprätthållande av säkerhet. Till exempel, efter att ha upptäckt obehörig åtkomst till ett system, kan du köra SQL-frågor för att fastställa omfattningen av läckan och identifiera alla operationer som utförs av processer som fått tillgång till konfidentiell information.

Projektet har varit under utveckling i mer än ett år och är i stadiet att skapa prototyper av enskilda arkitektoniska komponenter. För närvarande har en prototyp av operativsystemtjänster som körs ovanpå DBMS, såsom FS, IPC och schemaläggare, utarbetats, och en mjukvarumiljö håller på att utvecklas som tillhandahåller ett gränssnitt för att köra applikationer baserade på FaaS (function-as- a-service) modell.

Nästa steg i utvecklingen planerar att tillhandahålla en fullfjädrad mjukvarustack för distribuerade applikationer. VoltDB används för närvarande som ett DBMS i experiment, men diskussioner pågår om att skapa ett eget lager för att lagra data eller implementera saknade möjligheter i befintliga DBMS. Frågan om vilka komponenter som ska exekveras på kärnnivå och vilka som kan implementeras ovanpå DBMS är också under diskussion.

Källa: opennet.ru

Lägg en kommentar