Limbo
Rust로 완전히 새롭게 작성된 SQLite
Features
- Limbo는 메모리 안전성을 제공하는 Rust로 SQLite를 재구현하는 실험적 프로젝트
- SQLite의 임베디드 특성을 좋아하지만, 더 개방적인 개발 모델을 원해 libSQL 프로젝트 시작
- 단점: SQLite의 테스트 스위트가 독점적이고 C로 작성되어 있어 코드 진화가 어려움
- 벡터 검색 기능 추가를 통해 SQLite의 한계를 경험
- SQLite를 처음부터 다시 작성하여 호환성을 유지하면서도 더 공격적인 기능 추가 가능성 탐색
- Limbo를 공식 Turso 프로젝트로 전환
- SQLite와 동일한 신뢰성을 유지하면서 메모리 안전성을 제공하는 새로운 아키텍처 구축 목표
- 결정론적 시뮬레이션 테스트(DST)를 통해 높은 신뢰성 확보
- Antithesis와 협력하여 시스템 수준의 DST 프레임워크 사용
- 완전 비동기 I/O: Limbo는 완전 비동기 설계로, SQLite의 동기 인터페이스 문제 해결
- WASM을 위한 설계: WASM 환경에서의 사용을 고려한 설계
- 성능: 많은 작업에서 SQLite와 동등하거나 더 빠른 성능
- 단순성: 현대 환경에 덜 중요한 기능 제거로 더 나은 사용자 경험 제공
- Limbo는 MIT 라이선스로 GitHub에서 제공
- SQLite의 약속을 다음 단계로 발전시키고자 하는 임베디드 데이터베이스 구축에 관심 있는 사람들을 초대함