최근 지그(Zig) 언어로 개발된 임베디드 문서 데이터베이스 '알베도(Albedo)'가 공개되어 개발자들 사이에서 주목받고 있습니다. 알베도는 단일 파일에 모든 데이터, 인덱스, 메타데이터를 저장하는 것이 특징이며, 서버 프로세스나 네트워크 통신 없이 애플리케이션 내에서 직접 데이터를 처리합니다. 이는 기존 SQLite가 스키마와 마이그레이션 파일로 인해 복잡하게 느껴지거나, JSON 파일이 전체를 로드해야 하는 비효율성을 해소하려는 시도에서 출발했습니다.
알베도는 BSON(Binary JSON) 형식으로 문서를 저장하고 B+-트리 인덱스를 통해 중첩 필드나 배열 경로까지 효율적으로 쿼리할 수 있습니다. 또한, 쓰기 선행 로깅(WAL)을 통한 충돌 복구와 다중 버전 동시성 제어(MVCC)를 지원하여 데이터 무결성을 보장합니다. 특히, 실시간 구독(real-time subscriptions) 기능을 통해 데이터 변경 이벤트를 즉시 받을 수 있으며, WAL 기반 복제 기능을 제공하여 데이터 동기화에도 활용될 수 있습니다. C 언어 ABI를 제공하여 다양한 언어 바인딩(Node/Bun, Dart/Flutter, Crystal 등)을 지원하며, 리눅스, macOS, 윈도우, iOS, 안드로이드, WASM 등 광범위한 플랫폼에서 사용할 수 있습니다.
이러한 알베도의 등장은 마이크로서비스 아키텍처나 상태를 자체적으로 관리하는 소규모 애플리케이션 개발자들에게 큰 이점을 제공할 것으로 보입니다. 단일 파일로 배포와 관리가 용이하고, 서버리스(serverless) 환경이나 엣지 컴퓨팅(edge computing) 환경에서 경량 데이터 스토리지 솔루션으로 활용될 잠재력이 큽니다. 복잡한 데이터베이스 설정 없이 빠르고 간편하게 데이터를 저장하고 쿼리해야 하는 프로젝트에서 개발 생산성을 높이는 데 기여할 수 있으며, 특히 모바일 앱이나 데스크톱 앱의 로컬 데이터 저장소로도 매력적인 대안이 될 수 있습니다.