Es presenta el sistema operatiu distribuït DBOS que s'executa sobre el DBMS

Es presenta el projecte DBOS (DBMS-oriented Operating System), desenvolupant un nou sistema operatiu per executar aplicacions distribuïdes escalables. Una característica especial del projecte és l'ús d'un DBMS per emmagatzemar aplicacions i estat del sistema, així com organitzar l'accés a l'estat només mitjançant transaccions. El projecte està desenvolupat per investigadors de l'Institut Tecnològic de Massachusetts, la Universitat de Wisconsin i Stanford, la Universitat Carnegie Mellon i Google i VMware. El treball es distribueix sota la llicència MIT.

Els components per interactuar amb equips i serveis de gestió de memòria de baix nivell es col·loquen al micronucli. Les capacitats proporcionades pel micronucli s'utilitzen per llançar la capa DBMS. Els serveis del sistema d'alt nivell que permeten l'execució d'aplicacions interactuen només amb el SGBD distribuït i estan separats del micronucli i dels components específics del sistema.

Construir sobre un SGBD distribuït permet fer que els serveis del sistema estiguin distribuïts inicialment i no lligats a un node específic, cosa que distingeix DBOS dels sistemes de clúster tradicionals, en què cada node executa la seva pròpia instància del sistema operatiu, a la part superior de la qual es separa. Es llancen els programadors de clúster, els sistemes de fitxers distribuïts i els gestors de xarxa.

Es presenta el sistema operatiu distribuït DBOS que s'executa sobre el DBMS

Cal assenyalar que l'ús de SGBD distribuïts moderns com a base per a DBOS, emmagatzemar dades a la memòria RAM i donar suport a transaccions, com VoltDB i FoundationDB, pot proporcionar un rendiment suficient per a l'execució eficient de molts serveis del sistema. El SGBD també pot emmagatzemar dades del programador, del sistema de fitxers i de l'IPC. Al mateix temps, els DBMS són altament escalables, proporcionen atomicitat i aïllament de transaccions, poden gestionar petabytes de dades i proporcionen eines per al control d'accés i el seguiment dels fluxos de dades.

Entre els avantatges de l'arquitectura proposada hi ha una important expansió de les capacitats d'anàlisi i una reducció de la complexitat del codi a causa de l'ús de consultes ordinàries al SGBD en els serveis del sistema operatiu, al costat de les quals la implementació de transaccions i eines per garantir un alt nivell. es porta a terme la disponibilitat (aquesta funcionalitat es pot implementar al costat del SGBD una vegada i utilitzar-la en el sistema operatiu i les aplicacions).

Per exemple, un planificador de clúster pot emmagatzemar informació sobre tasques i controladors a taules de DBMS i implementar operacions de programació com a transaccions habituals, barrejant codi imperatiu i SQL. Les transaccions faciliten la resolució de problemes com ara la gestió de concurrència i la recuperació d'errors perquè les transaccions garanteixen la coherència i la persistència de l'estat. En el context de l'exemple del planificador, les transaccions permeten l'accés simultània a les dades compartides i garanteixen que es mantingui la integritat de l'estat en cas de fallades.

Els mecanismes de registre i anàlisi de dades proporcionats pel SGBD es poden utilitzar per fer un seguiment de l'accés i dels canvis en l'estat de l'aplicació, la supervisió, la depuració i el manteniment de la seguretat. Per exemple, després de detectar l'accés no autoritzat a un sistema, podeu executar consultes SQL per determinar l'abast de la filtració, identificant totes les operacions realitzades pels processos que van obtenir accés a informació confidencial.

El projecte porta més d'un any en desenvolupament i es troba en l'etapa de creació de prototips de components arquitectònics individuals. Actualment, s'ha preparat un prototip de serveis del sistema operatiu que s'executen sobre el SGBD, com ara FS, IPC i planificador, i s'està desenvolupant un entorn de programari que proporciona una interfície per executar aplicacions basades en FaaS (function-as- model a-servei).

La següent etapa de desenvolupament preveu proporcionar una pila de programari completa per a aplicacions distribuïdes. Actualment, VoltDB s'utilitza com a SGBD en experiments, però s'estan discutint sobre la creació de la nostra pròpia capa per emmagatzemar dades o la implementació de les capacitats que falten als SGBD existents. També s'està discutint la qüestió de quins components s'han d'executar al nivell del nucli i quins es poden implementar a sobre del SGBD.

Font: opennet.ru

Afegeix comentari