Prezentovaný je distribuovaný operačný systém DBOS bežiaci nad DBMS

Prezentuje sa projekt DBOS (DBMS-oriented Operating System), ktorý vyvíja nový operačný systém pre spustenie škálovateľných distribuovaných aplikácií. Zvláštnosťou projektu je použitie DBMS na ukladanie aplikácií a stavu systému, ako aj organizovanie prístupu k stavu iba prostredníctvom transakcií. Projekt vyvíjajú výskumníci z Massachusetts Institute of Technology, University of Wisconsin a Stanford, Carnegie Mellon University a Google a VMware. Dielo je šírené pod licenciou MIT.

V mikrokerneli sú umiestnené komponenty na interakciu so zariadením a nízkoúrovňové služby správy pamäte. Možnosti, ktoré poskytuje mikrokernel, sa používajú na spustenie vrstvy DBMS. Systémové služby na vysokej úrovni, ktoré umožňujú spúšťanie aplikácií, interagujú iba s distribuovaným DBMS a sú oddelené od mikrojadra a komponentov špecifických pre systém.

Stavanie na distribuovanom DBMS umožňuje, aby sa systémové služby na začiatku distribuovali a neboli viazané na konkrétny uzol, čo odlišuje DBOS od tradičných klastrových systémov, v ktorých každý uzol prevádzkuje vlastnú inštanciu operačného systému, nad ktorou je samostatný spustia sa plánovače klastrov, distribuované súborové systémy a správcovia siete.

Prezentovaný je distribuovaný operačný systém DBOS bežiaci nad DBMS

Je potrebné poznamenať, že používanie moderných distribuovaných DBMS ako základu pre DBOS, ukladanie údajov do pamäte RAM a podpora transakcií, ako sú VoltDB a FoundationDB, môže poskytnúť výkon dostatočný na efektívne vykonávanie mnohých systémových služieb. DBMS môže tiež ukladať údaje plánovača, systému súborov a IPC. DBMS sú zároveň vysoko škálovateľné, poskytujú atomicitu a izoláciu transakcií, dokážu spravovať petabajty údajov a poskytujú nástroje na riadenie prístupu a sledovanie tokov údajov.

Medzi výhody navrhovanej architektúry patrí výrazné rozšírenie analytických možností a zníženie zložitosti kódu vďaka využívaniu bežných dotazov na DBMS v službách operačného systému, na strane ktorých implementácia transakcií a nástrojov na zabezpečenie vysokej dostupnosť (takúto funkcionalitu možno implementovať na strane DBMS raz a použiť v OS a aplikáciách).

Napríklad plánovač klastrov môže ukladať informácie o úlohách a obslužných programoch v tabuľkách DBMS a implementovať operácie plánovania ako bežné transakcie, pričom kombinuje imperatívny kód a SQL. Transakcie uľahčujú riešenie problémov, ako je riadenie súbežnosti a obnovenie zlyhania, pretože transakcie zaručujú konzistentnosť a stálosť stavu. V kontexte príkladu plánovača transakcie umožňujú súbežný prístup k zdieľaným údajom a zabezpečujú zachovanie integrity stavu v prípade zlyhania.

Mechanizmy protokolovania a analýzy údajov, ktoré poskytuje DBMS, možno použiť na sledovanie prístupu a zmien stavu aplikácie, monitorovanie, ladenie a udržiavanie bezpečnosti. Napríklad po zistení neoprávneného prístupu do systému môžete spustiť SQL dotazy na určenie rozsahu úniku, pričom identifikujete všetky operácie vykonávané procesmi, ktoré získali prístup k dôverným informáciám.

Projekt je vo vývoji viac ako rok a je v štádiu vytvárania prototypov jednotlivých architektonických komponentov. V súčasnosti je pripravený prototyp služieb operačného systému bežiacich nad DBMS, ako sú FS, IPC a plánovač, a vyvíja sa softvérové ​​prostredie, ktoré poskytuje rozhranie pre spúšťanie aplikácií založených na FaaS (function-as- a-service) model.

Ďalšia fáza vývoja plánuje poskytnúť plnohodnotný softvérový balík pre distribuované aplikácie. VoltDB sa v súčasnosti používa ako DBMS v experimentoch, ale prebiehajú diskusie o vytvorení našej vlastnej vrstvy na ukladanie údajov alebo implementácii chýbajúcich funkcií v existujúcich DBMS. Diskutuje sa aj o tom, ktoré komponenty by sa mali spúšťať na úrovni jadra a ktoré môžu byť implementované nad DBMS.

Zdroj: opennet.ru

Pridať komentár