Je představen distribuovaný operační systém DBOS běžící nad DBMS

Je představen projekt DBOS (DBMS-oriented Operating System), který vyvíjí nový operační systém pro provoz škálovatelných distribuovaných aplikací. Zvláštností projektu je použití DBMS pro ukládání aplikací a stavu systému a také organizace přístupu ke stavu pouze prostřednictvím transakcí. Projekt vyvíjejí výzkumníci z Massachusetts Institute of Technology, University of Wisconsin a Stanford, Carnegie Mellon University a Google a VMware. Dílo je šířeno pod licencí MIT.

V mikrokernelu jsou umístěny komponenty pro interakci se zařízením a nízkoúrovňové služby správy paměti. Schopnosti poskytované mikrojádrem se používají ke spuštění vrstvy DBMS. Systémové služby na vysoké úrovni, které umožňují spouštění aplikací, interagují pouze s distribuovaným DBMS a jsou odděleny od mikrojádra a komponent specifických pro systém.

Stavění na distribuovaném DBMS umožňuje, aby byly systémové služby zpočátku distribuovány a nebyly vázány na konkrétní uzel, což odlišuje DBOS od tradičních klastrových systémů, ve kterých každý uzel provozuje svou vlastní instanci operačního systému, nad kterou je oddělen jsou spuštěny plánovače clusterů, distribuované systémy souborů a správci sítě.

Je představen distribuovaný operační systém DBOS běžící nad DBMS

Je třeba poznamenat, že použití moderních distribuovaných DBMS jako základu pro DBOS, ukládání dat do paměti RAM a podpora transakcí, jako je VoltDB a FoundationDB, může poskytnout výkon dostatečný pro efektivní provádění mnoha systémových služeb. DBMS může také ukládat data plánovače, souborového systému a IPC. DBMS jsou zároveň vysoce škálovatelné, poskytují atomicitu a izolaci transakcí, dokážou spravovat petabajty dat a poskytují nástroje pro řízení přístupu a sledování datových toků.

Mezi výhody navržené architektury patří výrazné rozšíření analytických možností a snížení složitosti kódu díky použití běžných dotazů do DBMS ve službách operačního systému, na jejichž straně je implementace transakcí a nástrojů pro zajištění vysoké dostupnost (taková funkčnost může být implementována na straně DBMS jednou a použita v OS a aplikacích).

Například plánovač klastru může ukládat informace o úlohách a obslužných rutinách v tabulkách DBMS a implementovat operace plánování jako běžné transakce, směšující imperativní kód a SQL. Transakce usnadňují řešení problémů, jako je správa souběžnosti a zotavení po selhání, protože transakce zaručují konzistenci a stálost stavu. V kontextu příkladu plánovače umožňují transakce souběžný přístup ke sdíleným datům a zajišťují zachování integrity stavu v případě selhání.

Mechanismy protokolování a analýzy dat poskytované DBMS lze použít ke sledování přístupu a změn stavu aplikace, monitorování, ladění a udržování bezpečnosti. Po zjištění neoprávněného přístupu k systému můžete například spustit dotazy SQL, abyste určili rozsah úniku a identifikovali všechny operace prováděné procesy, které získaly přístup k důvěrným informacím.

Projekt je ve vývoji více než rok a je ve fázi vytváření prototypů jednotlivých architektonických komponent. V současné době je připraven prototyp služeb operačního systému běžících nad DBMS, jako je FS, IPC a plánovač, a vyvíjí se softwarové prostředí, které poskytuje rozhraní pro spouštění aplikací založených na FaaS (function-as- a-service) model.

Další fáze vývoje plánuje poskytnout plnohodnotný softwarový balík pro distribuované aplikace. VoltDB se v současné době používá jako DBMS v experimentech, ale probíhají diskuse o vytvoření naší vlastní vrstvy pro ukládání dat nebo implementaci chybějících funkcí ve stávajících DBMS. Diskutuje se také otázka, které komponenty by měly být spouštěny na úrovni jádra a které mohou být implementovány nad DBMS.

Zdroj: opennet.ru

Přidat komentář