필수사항
Convex는 SQL을 TypeScript 기반의 독점 문서 관계형 모델로 대체하고, 구독 코드를 작성할 필요 없이 쿼리가 변경되는 즉시 자동 실시간 동기화를 제공합니다. Aurabase는 SQL, RLS, pg_dump/pg_restore등 PostgreSQL 16 표준과 Convex의 독점 모델이 허용하지 않는 이식성을 유지합니다. 두 엔진 모두 Rust로 작성되었습니다. 2026년 2월부터 Convex는 EU 지역(아일랜드)을 제공했지만 여전히 미국 회사입니다. Aurabase SAS는 독일과 핀란드에 호스팅된 프랑스 회사입니다. 선택은 우선순위에 따라 달라집니다. TypeScript의 턴키 응답성 또는 문서화된 EU 주권이 있는 이식 가능한 SQL입니다.
기본 Postgres SQL과 독점 TypeScript 쿼리 빌더
Aurabase는 PostgreSQL 16 표준(SQL, 클래식 마이그레이션, RLS 정책)을 기반으로 합니다. Convex는 반대 경로를 취합니다. 공식 문서에는 이 선택에 대해 명시되어 있습니다: "설정할 것도 없고 SQL을 작성할 필요도 없습니다. JavaScript를 사용하여 앱의 요구 사항을 표현하기만 하면 됩니다."(docs.convex.dev/database, 2026년 8월 24일 액세스) 볼록 테이블은 작성할 DDL 없이 처음 insert에서 생성된 선택적 TypeScript 스키마로 입력된 문서를 저장합니다.
다음은 스키마에 인덱스가 선언된 일반적인 Convex 쿼리의 모습입니다.
두 모델 모두 엄격히 우수하지는 않습니다. Convex의 쿼리 빌더는 구성을 통해 전체 SQL 주입 버그 클래스를 제거합니다. 또한 사용자를 자체 쿼리 언어에 고정시킵니다. 표준 BI 도구도 없고, 기존 Postgres ORM도 없고, 데이터 계층을 완전히 다시 작성하지 않으면 pgVector 또는 pg_graphql과 같은 SQL 확장도 없습니다.
채널당 CDC 옵트인에 대한 자동 동기화
Convex에서는 기본적으로 모든 쿼리가 응답합니다. 클라이언트는 배포에 대한 WebSocket 연결을 열고 엔진은 각 요청에서 읽은 모든 라인("읽기 세트")을 유지합니다. 돌연변이가 이 읽기 세트에 영향을 미치면 해당 기능이 서버 측에서 재생됩니다. 업데이트된 결과는 작성할 구독 코드 없이 클라이언트에 푸시됩니다(stack.convex.dev/how-convex-works, 2026년 8월 24일 액세스).
Aurabase 실시간은 반대 방식인 옵트인(opt-in) 방식으로 작동합니다. NATS JetStream은 PostgreSQL 변경 스트림(CDC)을 브로드캐스트합니다. channel().on('postgres_changes', …)를 통해 명시적으로 채널을 구독하며 열별로 필터링이 가능합니다. 이는 라이브 뷰를 위해 작성해야 할 코드가 더 많지만 Postgres 논리적 복제가 지원하는 표준 프로토콜이며 특정 쿼리 빌더와 결합된 독점 메커니즘이 아닙니다.
양쪽의 녹, MIT 대 FSL
여기서는 찾을 수 없을 것으로 예상되는 공통점이 있습니다. 두 엔진 모두 Rust로 작성되었습니다. Convex 오픈 소스 저장소(get-convex/convex-backend)는 주로 Rust 상자로 구성됩니다. TypeScript는 V8 엔진(stack.convex.dev/how-convex-works, 2026년 8월 24일 액세스)을 통해 개발자 기능의 실행 환경에만 사용됩니다. Supabase(Elixir/Go/TypeScript/Node 스택)에 비해 Rust 코어는 여전히 진정한 Aurabase 차별화 요소입니다. Convex에 대해서는 그렇지 않습니다. 둘 다 예측할 수 없는 가비지 수집 중단 없이 안정적인 트랜잭션 엔진을 구축하기 위해 내기를 걸었습니다.
차이점은 라이센스에 달려 있습니다. Convex 엔진 코드(get-convex/convex-backend)는 공정한 소스 라이선스인 FSL-1.1-Apache-2.0에 따라 릴리스됩니다. Convex Cloud와 경쟁하는 제품을 만드는 것을 제외한 모든 사용을 승인합니다. 각 버전은 출시된 지 2년 후 순수 Apache 2.0으로 전환됩니다. 조항은 저장소(github.com/get-convex/convex-backend, 2026년 8월 24일 액세스)의 LICENSE.md 파일에서 직접 확인되었습니다. Rust 작업 공간과 Aurabase JavaScript SDK는 지연이나 사용 제한 없이 오픈 소스인 MIT 라이선스에 따라 게시됩니다.
Convex는 자체 호스팅을 위한 공식 Docker 이미지(ghcr.io/get-convex/convex-backend)를 제공합니다. 기본적으로 SQLite에 저장되지만 애플리케이션에 SQL을 노출하지 않고도 구성에서 Postgres 또는 MySQL을 사용할 수 있습니다. Aurabase는 라이선스 제한 없이 저장소에 공식 Helm 차트와 로컬 k3d 벤치(./start.sh)를 제공하지만 관리형 클라우드는 여전히 프로덕션에 권장되는 기본 경로입니다.
양쪽 RAG, Aurabase 전용 NL2SQL
Convex는 AI에서 제외되지 않습니다. 기본 벡터 검색은 스키마에 선언된 벡터 인덱스를 사용하여 actions에서 액세스할 수 있습니다. @convex-dev/agent 및 rag.search()프레임워크를 통해 서류상으로 Aurabase의 기본 RAG(docs.convex.dev/search/Vector-search, 2026년 8월 24일 액세스)와 유사한 RAG 기능을 형성합니다.
따라서 실제 차이점은 "RAG 대 RAG 없음"이 아닙니다. Aurabase는 또한 NL2SQL 엔진을 통합합니다. 즉, 자연어로 된 질문을 SQL 쿼리로 변환하고 검증한 후 실행 전에 제한합니다. Convex는 구조적으로 동등한 것을 제공할 수 없습니다. 변환할 SQL이 없으면 생성할 것이 없습니다. 이는 제품 지연이 아니라 위에서 설명한 아키텍처 선택의 직접적인 결과입니다.
미국 회사인 Convex의 EU 지역
Convex는 기본 미국 동부 지역(docs.convex.dev/production/regions 및 news.convex.dev, 2026년 8월 24일 액세스) 외에 2026년 2월 6일 이후 배포된 EU West (Ireland)지역을 제공합니다. 인정받을 가치가 있는 실제 옵션입니다. 그러나 Convex Inc.는 미국법에 따라 회사로 남아 있습니다. 창립자이자 CEO인 Jamie Turner는 자신이 샌프란시스코에 거주하고 있다고 말합니다(news.convex.dev, Insight Partners가 주도하는 시리즈 B에서 5,700만 달러 모금, 2026년 8월 4일). 아일랜드 지역을 선택해도 귀하의 데이터를 호스팅하는 회사의 관할권은 변경되지 않습니다.
이는 Supabase에 문서화된 메커니즘과 정확히 동일합니다. 관리 패널에서 선택한 유럽 지역은 모회사가 미국에 있는 한 CLOUD법의 법적 체제를 종료하기에 충분하지 않습니다. 프랑스 법률에 따라 설립된 회사인 Aurabase SAS는 독일(뉘른베르크, 팔켄슈타인)과 핀란드(헬싱키)에서 검증된 생산 인프라를 운영하고 있습니다.
벤치마크에서는 두 가지 방향으로 공유 제한이 적용되었습니다.
Convex는 마케팅 벤치마크 경쟁에 반대하는 공개 입장을 취했습니다. 그의 게시물 제목은 미묘하지 않습니다. "나는 당신의 데이터베이스 벤치마크에 관심이 없습니다(그리고 당신도 마찬가지입니다)"(stack.convex.dev/on-competitive-benchmarks, 2026년 8월 24일 액세스). 표적 공격이 아닌 가정된 자세 선택 – 게시물에는 특정 경쟁자의 이름이 지정되지 않습니다.
Aurabase의 입장은 동일한 관찰에 기초하지만 반대 방향을 취합니다. 즉, 게시 수치를 포기하는 대신 재현 가능하고 날짜가 지정된 벤치마크 방법론을 게시하는 것입니다. 이는 아직 진행 중인 작업입니다. 전체 방법론이 수반될 때까지 이 기사에서는 성능 수치를 강조하지 않습니다.
엔드투엔드 TypeScript와 다중 언어 SDK
Convex는 수동 생성 없이 엔드투엔드 타이핑을 통해 스키마부터 서버 기능, React 클라이언트까지 단일 언어를 선택합니다. 이는 이미 100% TypeScript를 사용하는 팀의 진정한 생산성 향상입니다.
Aurabase JavaScript SDK는 @aurabase/*라벨이 붙은 10 npm 패키지로 배포되며 모두 게시되고 설치 가능합니다. Python, Dart 및 Rust SDK도 저장소에 존재합니다. 세 가지 중 어느 것도 아직 해당 레지스트리(PyPI, pub.dev, crates.io)에 게시되지 않았습니다. 현재로서는 Git 저장소에 종속적으로만 설치할 수 있습니다. 서류상으로 더 넓은 다국어 지원이 가능하며, 완전히 청구하기 전에 채워야 할 실제 실행 공백이 있습니다.
표준 pg_dump 대 독점 모델
Aurabase는 PostgreSQL 16 표준 및 PostgREST 호환 API를 기반으로 합니다. 스키마 및 데이터 내보내기는 클래식 pg_dump/pg_restore를 사용하여 Aurabase 또는 다른 Postgres로 수행됩니다.
Convex는 SQL에 의존하지 않습니다. 표준 관계형 형식으로 내보내는 것과 직접적으로 동등한 것은 없습니다. Convex 애플리케이션을 SQL 백엔드로 마이그레이션하려면 내보내기 파일을 변환하는 것뿐만 아니라 스키마를 관계형 테이블로 리모델링하고 데이터 액세스 계층을 다시 작성해야 합니다.
Convex가 여전히 올바른 선택일 때
팀이 이미 100% TypeScript를 사용하고 반응형 React 앱을 구축하고 SQL 또는 Postgres 확장에 크게 의존하지 않는 경우 Convex는 실질적인 제품 이점을 갖습니다. 두 가지 구체적인 장점은 구성이 필요 없는 자동 응답성과 전체 프런트엔드/백엔드 통합 버그를 줄이는 엔드투엔드 입력입니다.
SQL, RLS Postgres, 데이터 이식성 또는 프랑스 모회사가 있는 독일/핀란드의 호스팅 지역이 결정 기준이 될 때 타협이 나타납니다. Aurabase가 차별화 요소를 구축하는 곳이 바로 여기입니다.
두 플랫폼의 차이점
| 데이터 모델 | PostgreSQL 16 표준, SQL, 기본 RLS | 독점 문서 관계형, TypeScript 쿼리 빌더, SQL 없음 |
|---|---|---|
| 엔진 | Rust(통합 작업 공간, 12개 서비스) | Rust(엔진) + V8(TS 기능 실행) |
| 반응성 | NATS JetStream CDC, 채널당 옵트인 구독 | 요청당 자동 구독(WebSocket + 읽기 세트) |
| 라이센스 | MIT, 지체 없이 오픈소스 | FSL-1.1-Apache-2.0(각 릴리스 후 순수 Apache 2년) |
| 네이티브 AI | NL2SQL + RAG(pgVector, HNSW 검색) | RAG + 벡터 검색(작업), NL2SQL 불가능 |
| 숙박 | 독일 + 핀란드, 프랑스 회사 (파리) | 2026년부터 아일랜드 지역, 미국 회사 |
| 이식성 | pg_dump/pg_restore 표준, PostgREST 호환 | 표준 SQL 내보내기 없음, 독점 모델 |
오픈 소스와 자체 호스팅에 초점을 맞춘 비교를 원하시나요? Aurabase 및 Appwrite를 참조하세요. Postgres 벤치마크 비교 및 아키텍처는 Aurabase 대 Supabase를 참조하세요.