Tiek parādīta izplatītā operētājsistēma DBOS, kas darbojas virs DBVS

Tiek prezentēts DBOS (uz DBMS orientēta operētājsistēma) projekts, kas izstrādā jaunu operētājsistēmu mērogojamu izplatīto lietojumprogrammu darbināšanai. Projekta īpatnība ir DBVS izmantošana lietojumprogrammu un sistēmas stāvokļa glabāšanai, kā arī piekļuves organizēšana stāvoklim tikai ar transakciju palīdzību. Projektu izstrādā pētnieki no Masačūsetsas Tehnoloģiju institūta, Viskonsinas un Stenfordas universitātes, Kārnegija Melona universitātes un Google un VMware. Darbs tiek izplatīts saskaņā ar MIT licenci.

Komponenti mijiedarbībai ar aprīkojumu un zema līmeņa atmiņas pārvaldības pakalpojumiem tiek ievietoti mikrokodolu. Mikrokodola sniegtās iespējas tiek izmantotas, lai palaistu DBVS slāni. Augsta līmeņa sistēmas pakalpojumi, kas nodrošina lietojumprogrammu izpildi, mijiedarbojas tikai ar izplatīto DBVS un ir atdalīti no mikrokodola un sistēmai raksturīgajiem komponentiem.

Pamatojoties uz sadalīto DBVS, ir iespējams izveidot sistēmas pakalpojumus sākotnēji izplatītus un nesaistītus ar konkrētu mezglu, kas atšķir DBOS no tradicionālajām klasteru sistēmām, kurās katrs mezgls palaiž savu operētājsistēmas instanci, kurai virsū ir atsevišķa tiek palaisti klasteru plānotāji, sadalītās failu sistēmas un tīkla pārvaldnieki.

Tiek parādīta izplatītā operētājsistēma DBOS, kas darbojas virs DBVS

Tiek atzīmēts, ka, izmantojot modernas sadalītas DBVS kā DBOS pamatu, datu glabāšana RAM un atbalsta transakcijas, piemēram, VoltDB un FoundationDB, var nodrošināt veiktspēju, kas ir pietiekama daudzu sistēmas pakalpojumu efektīvai izpildei. DBVS var saglabāt arī plānotāja, failu sistēmas un IPC datus. Tajā pašā laikā DBVS ir ļoti mērogojami, nodrošina atomitāti un darījumu izolāciju, var pārvaldīt datu petabaitus un nodrošināt rīkus piekļuves kontrolei un datu plūsmu izsekošanai.

Starp piedāvātās arhitektūras priekšrocībām ir ievērojama analītikas iespēju paplašināšana un koda sarežģītības samazināšanās, jo operētājsistēmas pakalpojumos tiek izmantoti parastie vaicājumi DBVS, no kuriem tiek ieviesti darījumi un rīki, lai nodrošinātu augstu tiek veikta pieejamība (šādu funkcionalitāti DBVS pusē var ieviest vienu reizi un izmantot OS un lietojumprogrammās).

Piemēram, klasteru plānotājs var glabāt informāciju par uzdevumiem un apdarinātājiem DBVS tabulās un ieviest plānošanas darbības kā regulāras transakcijas, sajaucot obligāto kodu un SQL. Darījumi atvieglo tādu problēmu risināšanu kā vienlaicīguma pārvaldība un kļūmju atkopšana, jo darījumi garantē konsekvenci un stāvokļa noturību. Plānotāja piemēra kontekstā transakcijas nodrošina vienlaicīgu piekļuvi koplietotiem datiem un nodrošina stāvokļa integritātes saglabāšanu kļūmju gadījumā.

DBVS nodrošinātos reģistrēšanas un datu analīzes mehānismus var izmantot, lai izsekotu piekļuvei un lietojumprogrammas stāvokļa izmaiņām, uzraudzītu, atkļūdotu un uzturētu drošību. Piemēram, pēc nesankcionētas piekļuves sistēmai noteikšanas varat palaist SQL vaicājumus, lai noteiktu noplūdes apmēru, identificējot visas darbības, ko veic procesi, kas ieguva piekļuvi konfidenciālai informācijai.

Projekts ir izstrādāts vairāk nekā gadu un atrodas atsevišķu arhitektūras komponentu prototipu izveides stadijā. Šobrīd ir sagatavots operētājsistēmas pakalpojumu prototips, kas darbojas virs DBVS, piemēram, FS, IPC un plānotājs, un tiek izstrādāta programmatūras vide, kas nodrošina saskarni lietojumprogrammu palaišanai, pamatojoties uz FaaS (function-as- a-servisa) modelis.

Nākamais attīstības posms plāno nodrošināt pilnvērtīgu programmatūras steku izplatītajām lietojumprogrammām. VoltDB pašlaik tiek izmantots kā DBVS eksperimentos, taču notiek diskusijas par sava slāņa izveidi datu glabāšanai vai trūkstošo iespēju ieviešanu esošajās DBVS. Tiek apspriests arī jautājums par to, kuri komponenti jāizpilda kodola līmenī un kurus var ieviest virs DBVS.

Avots: opennet.ru

Pievieno komentāru