프로젝트 소개

rudb는 Rust로 작성된 임베디드 분석 데이터베이스로, 야심찬 성능 및 리소스 목표를 가진 DuckDB 호환 대안으로 설계되었습니다. 이 프로젝트는 ClickBench와 TPC-H에서 DuckDB보다 10배 빠른 성능, 쿼리별로 DuckDB보다 결코 느리지 않은 하한선, 디스크 사용량·메모리·CPU 10배 절감을 목표로 합니다. 핵심 설계는 런타임에 선택되는 물리적 레이아웃, 전역 사전을 활용한 다중 컬럼 압축, 그리고 먼저 디코딩하지 않고 인코딩된 데이터에서 직접 실행되는 연산자에 기반합니다. 현재 상태는 초기 단계입니다. v0.1.0 기준으로 M0이 완료되어 27개 크레이트로 구성된 워크스페이스, 인메모리 쿼리 엔진, 16가지 출력 모드를 갖춘 DuckDB 호환 명령줄 셸을 제공하며, Linux·macOS·Windows에서 CI가 통과합니다. 아직 영구 저장 형식, 옵티마이저, 트랜잭션이 없으며 조인은 중첩 루프 방식입니다. 다음 마일스톤인 M1은 추가 개발 전에 예상 압축률 달성 가능 여부를 측정하기 위한 형식 실험입니다. 저장소에는 구현 전에 작성된 20개 문서의 상세 명세가 포함되어 있으며, 저장, 압축, 실행, 코드 생성, 최적화, SQL 호환성, 트랜잭션, 벤치마킹 방법론, 테스트를 다룹니다. 개발은 이슈로 추적되는 12개 마일스톤으로 구성되며, M3, M6, M10이 유용한 중단 지점으로 확인되었습니다. 이 프로젝트는 Apache-2.0 라이선스를 따르며 DuckDB Labs와 제휴 관계가 아닙니다. 호환성은 공개된 형식과 헤더를 기준으로 재구현되었습니다.