Neon
Neon은 스토리지와 컴퓨팅 영역을 물리적, 논리적으로 완벽히 분리한 클라우드 네이티브 아키텍처 기반의 오픈소스 서버리스(Serverless) PostgreSQL 데이터베이스 플랫폼이다.
주요 특징은 다음과 같다.
- 컴퓨팅과 스토리지의 분리: 데이터베이스 연산을 처리하는 컴퓨팅 노드와 데이터를 저장하는 스토리지 계층을 분리하여 설계하였다. 이를 통해 각 자원의 독립적인 확장(Scaling) 결함 허용(Fault tolerance) 관리를 수행한다.
- 서버리스 및 Scale-to-zero: 애플리케이션의 트래픽 변동에 따라 컴퓨팅 자원을 자동으로 할당하며, 유휴 상태에서는 컴퓨팅 리소스를 0 수준으로 축소하여 클라우드 인프라 운용 비용을 최적화한다.
- 데이터베이스 브랜칭(Branching): Copy-on-Write(CoW) 메커니즘을 적용하여 기존 스토리지 용량을 중복 할당하지 않고도, Git과 유사하게 데이터베이스의 특정 상태를 즉각적으로 분기(Branch)할 수 있다. 데이터 손실 없이 개발 및 CI/CD 테스트 환경을 구축할 때 활용된다.
- 콜드 데이터 오프로딩: 자주 접근하지 않는 과거의 페이지(Cold data)를 Amazon S3와 같은 클라우드 오브젝트 스토리지로 비동기식으로 전송 및 저장하여 사실상 무제한 스토리지 확장 능력을 제공한다.
클라우드 환경에서 구동되는 주요 목적의 PostgreSQL 기반 데이터베이스 서비스들과의 비교 데이터는 다음과 같다.
| 특징 | Neon | Amazon Aurora Serverless v2 | Supabase |
|---|---|---|---|
| 개발(서비스) 주체 | Neon (미국) | Amazon Web Services (미국) | Supabase (미국) |
| 코어 데이터베이스 | 오픈소스 PostgreSQL | 독점 수정된 PostgreSQL 호환 엔진 | 오픈소스 PostgreSQL |
| 아키텍처 패러다임 | 컴퓨팅-스토리지 완전 분리 | 컴퓨팅-스토리지 통제된 분리 | 프로비저닝된 인스턴스 중심의 PaaS |
| 데이터베이스 브랜칭 | 네이티브 지원 (초 단위 즉각 생성 기능) | 제한적 (빠른 클론 방식을 통한 우회) | 외부 마이그레이션 도구 또는 독립 프로젝트 할당 |
| 유휴 시 Scale-to-zero | 완전 지원 | v2 기준 미지원 (최소 ACU 유지 필수) | 일정 기간 유휴 시 인스턴스 셧다운 방식으로만 작용 |
출처 데이터:
- TechCrunch. “Neon, a serverless open source alternative to AWS Aurora, raises $30M.” (https://techcrunch.com)
- Neon Official Documentation. “Architecture overview.” (https://neon.tech/docs/introduction/architecture)
- The Neon Project GitHub Repository. “Neon: Serverless Postgres.” (https://github.com/neondatabase/neon)