Turso는 Rust로 SQLite를 재작성한 경험을 바탕으로, Postgres와 호환되는 새로운 데이터베이스를 구축 중임
핵심 아키텍처를 '데이터베이스 LLVM'으로 삼아, 다양한 데이터베이스 프론트엔드를 컴파일하는 방식 채택
자동 업데이트되는 머티리얼라이즈드 뷰(Materialized Views) 등 Postgres의 한계를 넘어서는 현대적 기능 구현 목표
커뮤니티에서는 프로젝트의 기술적 타당성과 발표 방식에 대한 논쟁이 있음
Turso는 데이터베이스 코어를 '데이터베이스 LLVM(LLVM of Databases)'으로 간주하며, SQL 파싱 후 자체 바이트코드(VDBE)로 컴파일하는 방식을 채택했습니다. 이는 SQLite의 VM과 유사하지만, Postgres와 같은 복잡한 데이터베이스 프론트엔드를 컴파일할 수 있도록 확장 가능성을 염두에 둔 설계입니다. 커뮤니티에서는 이러한 접근 방식이 기존 데이터베이스의 내부 구조와 얼마나 유사한지에 대한 논의가 있었습니다.
이 프로젝트는 Postgres와 호환되는 데이터베이스를 Rust로 재구축하는 것을 목표로 합니다. 특히, Postgres 대비 자동 업데이트되는 머티리얼라이즈드 뷰(Materialized Views)와 같은 현대적인 기능을 제공하려 합니다. 다만, FAQ에서 언급된 바와 같이 100% Postgres 호환성보다는 핵심 기능 구현에 집중하며, 필요에 따라 Turso만의 독자적인 기능을 추가할 가능성도 시사되었습니다.
일부 커뮤니티 멤버들은 SQLite의 VM 구조를 특별히 강조하는 점에 대해 의문을 제기했으며, 다른 데이터베이스들도 유사한 내부 구조를 가질 수 있다고 지적했습니다. 또한, 프로젝트 발표 방식이 'AI 슬롭(AI Slop)'처럼 보인다는 비판과 함께, 이러한 발표 스타일이 커뮤니티의 신뢰를 저해할 수 있다는 의견이 있었습니다. 반면, 프로젝트의 오픈 소스 기여 방식과 기술적 깊이를 옹호하는 목소리도 존재했습니다.
Rust로 데이터베이스를 재작성하는 것은 메모리 안전성(Memory Safety)과 동시성(Concurrency) 측면에서 이점을 제공할 수 있습니다. Turso는 이러한 Rust의 장점을 활용하여 브라우저 내장, 파일 기반 실행 등 다양한 환경에서의 데이터베이스 활용 가능성을 제시합니다. 그러나 기존의 거대한 데이터베이스 생태계(ORM, psql 등)와의 통합 및 실제 워크로드에서의 성능 검증이 향후 중요한 과제가 될 것으로 보입니다.