DBMS 위에서 실행되는 분산 운영 체제 DBOS 도입

확장 가능한 분산 애플리케이션을 실행하기 위한 새로운 운영 체제를 개발하는 DBOS(DBMS 지향 운영 체제) 프로젝트가 소개됩니다. 이 프로젝트의 특징은 애플리케이션과 시스템 상태를 저장하고 트랜잭션을 통해서만 상태에 대한 접근을 구성하는 데 DBMS를 사용한다는 것입니다. 이 프로젝트는 MIT, 위스콘신 대학교와 스탠퍼드 대학교, 카네기 멜론 대학교, 구글 및 VMware의 연구원들이 개발하고 있으며, 개발된 결과물은 MIT 라이선스에 따라 배포됩니다.

하드웨어 및 저수준 메모리 관리 서비스와 상호 작용하는 구성 요소는 마이크로커널로 이동합니다. 마이크로커널이 제공하는 기능은 DBMS 계층을 시작하는 데 사용됩니다. 애플리케이션 실행을 보장하는 고수준 시스템 서비스는 분산 DBMS와만 상호 작용하며 마이크로커널 및 시스템별 구성 요소와 분리됩니다.

분산 DBMS를 기반으로 구축하면 시스템 서비스를 처음부터 분산시켜 특정 노드에 묶지 않아도 됩니다. 이는 각 노드가 자체 운영 체제 인스턴스를 실행하고, 그 위에 별도의 클러스터 스케줄러, 분산 파일 시스템, 네트워크 관리자가 시작되는 기존 클러스터 시스템과 DBOS를 구분하는 특징입니다.

DBMS 위에서 실행되는 분산 운영 체제 DBOS 도입

VoltDB 및 FoundationDB와 같은 최신 분산 DBMS를 DBOS 기반으로 사용하고, RAM에 데이터를 저장하며, 트랜잭션을 지원함으로써 여러 시스템 서비스를 효율적으로 실행하는 데 충분한 성능을 제공할 수 있습니다. DBMS는 스케줄러 데이터, 파일 시스템 데이터, 그리고 IPC(Input/Output Control)도 처리할 수 있습니다. 동시에, DBMS는 확장성이 뛰어나고, 트랜잭션의 원자성과 격리성을 제공하며, 페타바이트급 데이터를 관리할 수 있고, 액세스 제어 및 데이터 흐름 추적 도구를 제공합니다.

제안된 아키텍처의 장점으로는 분석 기능이 상당히 확장되고 운영 체제 서비스에서 DBMS에 대한 정기적인 쿼리를 사용함으로써 코드 복잡성이 감소하는 것이 포함되며, 이를 통해 트랜잭션 구현과 고가용성 보장 수단이 DBMS 측으로 이전됩니다(이러한 기능은 DBMS 측에서 한 번 구현하면 OS 및 애플리케이션에서 사용할 수 있음).

예를 들어, 클러스터 스케줄러는 작업 및 프로세서에 대한 정보를 DBMS 테이블에 저장하고, 명령형 코드와 SQL을 혼합하여 스케줄링 작업을 일반 트랜잭션으로 구현할 수 있습니다. 트랜잭션을 사용하면 상태 일관성과 지속성을 보장하므로 동시성 관리 및 장애 복구와 같은 문제가 간소화됩니다. 스케줄러 예시에서 트랜잭션은 공유 데이터에 대한 동시 액세스를 허용하고 장애 발생 시 상태 무결성을 유지합니다.

DBMS가 제공하는 로깅 및 데이터 분석 메커니즘을 사용하여 애플리케이션 상태 접근 및 변경 사항을 추적하고, 모니터링, 디버깅 및 보안을 유지할 수 있습니다. 예를 들어, 시스템에 대한 무단 접근을 감지한 후 SQL 쿼리를 실행하여 기밀 정보에 접근한 프로세스가 수행한 모든 작업을 식별하고 유출 범위를 파악할 수 있습니다.

이 프로젝트는 1년 넘게 개발 중이며, 현재 아키텍처의 개별 구성 요소에 대한 프로토타입을 제작하는 단계에 있습니다. 현재 DBMS 기반 운영 체제 서비스(FS, IPC, 스케줄러 등)의 프로토타입이 준비되었으며, FaaS(Function-as-a-Service) 모델 기반 애플리케이션 실행을 위한 인터페이스를 제공하는 소프트웨어 환경이 개발되고 있습니다.

다음 개발 단계는 분산 애플리케이션을 위한 완전한 소프트웨어 스택을 제공하는 것입니다. VoltDB는 현재 실험용 DBMS로 사용되고 있지만, 데이터 저장을 위한 맞춤형 계층을 생성하거나 기존 DBMS에 없는 기능을 구현하는 방안에 대한 논의가 진행 중입니다. 어떤 구성 요소를 커널 수준에서 실행해야 하고 어떤 구성 요소를 DBMS 위에 구현할 수 있는지에 대한 문제도 논의 중입니다.

출처 : opennet.ru

DDoS 보호, VPS VDS 서버가 있는 사이트를 위한 안정적인 호스팅 구입 🔥 DDoS 공격 방지 기능이 탑재된 안정적인 웹사이트 호스팅, VPS 및 VDS 서버를 구매하세요 | ProHoster