La distribuita operaciumo DBOS kuranta sur la DBMS estas prezentita

La projekto DBOS (DBMS-oriented Operating System) estas prezentita, evoluigante novan operaciumon por ruli skaleblajn distribuitajn aplikaĵojn. Speciala trajto de la projekto estas la uzo de DBMS por stoki aplikojn kaj sisteman staton, kaj ankaŭ organizi aliron al la ŝtato nur per transakcioj. La projekto estas disvolvita de esploristoj de la Masaĉuseca Instituto de Teknologio, la Universitato de Viskonsino kaj Stanfordo, Carnegie Mellon University kaj Google kaj VMware. La laboro estas distribuita sub la MIT-licenco.

Komponantoj por interagado kun ekipaĵo kaj malaltnivelaj memoradministradservoj estas metitaj en la mikrokernon. La kapabloj provizitaj de la mikrokerno estas uzataj por lanĉi la DBMS-tavolon. Altnivelaj sistemservoj kiuj ebligas aplikaĵekzekuton interagas nur kun la distribuita DBMS kaj estas apartigitaj de la mikrokerno kaj sistem-specifaj komponentoj.

Konstrui supre de distribuita DBMS ebligas igi sistemajn servojn komence distribuitaj kaj ne ligitaj al specifa nodo, kiu distingas DBOS de tradiciaj clustersistemoj, en kiuj ĉiu nodo prizorgas sian propran petskribon de la operaciumo, sur kiu disigas. grapolhoraroj, distribuitaj dosiersistemoj kaj retaj administrantoj estas lanĉitaj.

La distribuita operaciumo DBOS kuranta sur la DBMS estas prezentita

Oni rimarkas, ke uzi modernajn distribuitajn DBMS-ojn kiel bazon por DBOS, stoki datumojn en RAM kaj subtenante transakciojn, kiel VoltDB kaj FoundationDB, povas disponigi efikecon sufiĉan por la efika ekzekuto de multaj sistemaj servoj. La DBMS ankaŭ povas stoki planilon, dosiersistemon kaj IPC-datumojn. Samtempe, DBMS-oj estas tre skaleblaj, disponigas atomecon kaj transakcian izolitecon, povas administri petabajtojn da datenoj kaj disponigas ilojn por alirkontrolo kaj spurado de datumfluoj.

Inter la avantaĝoj de la proponita arkitekturo estas signifa ekspansio de analizaj kapabloj kaj redukto de koda komplekseco pro la uzo de ordinaraj demandoj al la DBMS en la operaciumaj servoj, sur kies flanko la efektivigo de transakcioj kaj iloj por certigi altan. havebleco estas efektivigita (tia funkcieco povas esti efektivigita sur la DBMS-flanko unufoje kaj uzita en OS kaj aplikoj).

Ekzemple, clusterplanisto povas stoki informojn pri taskoj kaj prizorgantoj en DBMS-tabeloj kaj efektivigi planadoperaciojn kiel regulajn transakciojn, miksante imperativan kodon kaj SQL. Transakcioj faciligas solvi problemojn kiel samtempa administrado kaj malsukcesa reakiro ĉar transakcioj garantias konsistencon kaj ŝtatan persiston. En la kunteksto de la ekzemplo de planisto, transakcioj permesas samtempan aliron al komunaj datumoj kaj certigas ke ŝtatintegreco estas konservita en la okazaĵo de fiaskoj.

La registradaj kaj datennalizaj mekanismoj provizitaj de la DBMS povas esti uzataj por spuri aliron kaj ŝanĝojn en aplika stato, monitorado, senararigado kaj konservado de sekureco. Ekzemple, post detektado de neaŭtorizita aliro al sistemo, vi povas ruli SQL-demandojn por determini la amplekson de la liko, identigante ĉiujn operaciojn faritajn per procezoj kiuj akiris aliron al konfidencaj informoj.

La projekto estis en evoluo dum pli ol jaro kaj estas en la stadio de kreado de prototipoj de individuaj arkitekturaj komponentoj. Nuntempe, prototipo de operaciumaj servoj kurantaj sur la DBMS, kiel ekzemple FS, IPC kaj planilo, estis preparita, kaj softvarmedio estas evoluigita kiu disponigas interfacon por ruli aplikojn bazitajn sur la FaaS (funkcio-kiel-). a-servo) modelo.

La sekva etapo de disvolviĝo planas provizi plenkreskan programaron por distribuitaj aplikoj. VoltDB estas nuntempe uzata kiel DBMS en eksperimentoj, sed diskutoj okazas pri kreado de nia propra tavolo por stoki datumojn aŭ efektivigi mankantajn kapablojn en ekzistantaj DBMSoj. La demando pri kiuj komponantoj devas esti ekzekutitaj ĉe la kernnivelo kaj kiuj povas esti efektivigitaj aldone al la DBMS ankaŭ estas diskutata.

fonto: opennet.ru

Aldoni komenton