coredot.today
SQL vs NoSQL 특집 (Part 2): 2026년 데이터베이스 지형도와 선택 가이드
블로그로 돌아가기
SQLNoSQLNewSQL벡터 DBPostgreSQLMongoDB데이터베이스 선택

SQL vs NoSQL 특집 (Part 2): 2026년 데이터베이스 지형도와 선택 가이드

MongoDB는 ACID를, PostgreSQL은 JSON을 품었다. Netflix는 Cassandra에서 CockroachDB로, Discord는 MongoDB에서 ScyllaDB로 갈아탔다. 2026년, 데이터베이스의 경계는 무너지고 있다. NoSQL 5가지 유형 비교, NewSQL, 벡터 DB, 그리고 실전 선택 가이드.

코어닷투데이2026-03-1924

들어가며

Part 1에서 관계형 모델의 탄생, NoSQL의 반란, CAP 정리, ACID vs BASE를 다뤘다. Part 2에서는 2026년 현재의 데이터베이스 지형도를 그리고, **"그래서 나는 뭘 써야 하는가?"**에 답한다.


제1장: NoSQL의 5가지 유형

"NoSQL"은 하나의 기술이 아니라 5가지 서로 다른 데이터 모델의 총칭이다.

NoSQL 5가지 유형
문서형 MongoDB, CouchDB JSON/BSON 문서. 유연한 스키마.
키-값 Redis, DynamoDB 가장 단순. 키로 값을 찾는다.
컬럼 패밀리 Cassandra, HBase 열 기준 저장. 대규모 쓰기 최적화.
그래프 Neo4j, ArangoDB 노드와 엣지. 관계 탐색 최적화.
시계열 InfluxDB, TimescaleDB 시간 기반 데이터 스트림 최적화.

문서형 (Document Store)

데이터를 JSON 문서로 저장한다. 같은 컬렉션 안에서도 각 문서의 구조가 다를 수 있다.

hljs language-json
// 사용자 A: 기본 프로필
{ "name": "김철수", "email": "kim@example.com" }

// 사용자 B: 배송 주소 포함
{ "name": "이영희", "email": "lee@example.com",
  "addresses": [
    { "type": "home", "city": "서울" },
    { "type": "work", "city": "판교" }
  ]
}

SQL에서는 이렇게 다른 구조의 데이터를 한 테이블에 넣을 수 없다. 문서형 DB는 각 문서가 독립적인 구조를 가질 수 있어 유연하다.

대표: MongoDB (DB-Engines 5위, 가장 인기 있는 NoSQL)

키-값 (Key-Value Store)

가장 단순한 모델. 해시맵과 동일하다 — 키를 주면 값을 반환한다.

SET session:abc123 '{"user":"김철수","login_time":"2026-03-19T10:00:00"}'
GET session:abc123

단순하기 때문에 가장 빠르다. Redis는 초당 10만+ 읽기 연산을 처리한다.

대표: Redis (캐싱, 세션 관리, 실시간 리더보드)

컬럼 패밀리 (Column-Family Store)

행 단위가 아닌 열 단위로 데이터를 저장한다. 같은 열의 데이터가 물리적으로 함께 저장되므로, 특정 열에 대한 집계·분석이 매우 빠르다.

대표: Apache Cassandra — Apple, Netflix, Uber, Spotify, Twitter가 사용. 마스터 없는(masterless) 분산 구조로, 단일 장애점이 없다.

그래프 (Graph Database)

데이터를 **노드(개체)**와 **엣지(관계)**로 저장한다. "A가 B를 팔로우하고, B가 C를 팔로우하고, C가 A를 팔로우한다" 같은 관계망을 효율적으로 탐색한다.

대표: Neo4j — 지식 그래프, 사기 탐지, 추천 엔진, 2026년에는 GraphRAG(그래프 기반 RAG)의 핵심 인프라로 부상.

시계열 (Time-Series Database)

시간에 따른 데이터 스트림을 저장·조회하는 데 특화. IoT 센서, 서버 모니터링, 주가 데이터.

대표: InfluxDB (수집 속도 최적화), TimescaleDB (PostgreSQL 확장, 복잡한 쿼리에 강점)


제2장: NewSQL — 제3의 길

"둘 다 가질 수 없는가?"

SQL의 ACID 보장 + NoSQL의 수평 확장. 이 두 가지를 동시에 제공하는 데이터베이스가 NewSQL이다.

SQL — ACID는 되지만 확장이 어렵다
NoSQL — 확장은 되지만 ACID가 없다
NewSQL — ACID + 수평 확장을 동시에

Google Spanner — 불가능을 가능하게

2012년 Google이 발표한 Spanner는 CAP 정리를 "실질적으로 우회"한 데이터베이스다.

비결은 TrueTime — 원자 시계와 GPS를 사용한 전 세계적 시간 동기화 시스템이다. 모든 데이터센터의 시계를 나노초 수준으로 맞추면, 분산 환경에서도 트랜잭션의 순서를 정확히 결정할 수 있다.

결과: 전 세계에 분산된 데이터베이스에서 강한 일관성(strong consistency) + 고가용성을 동시에 달성. PACELC 분류에서 유일한 PC/EC — 항상 일관성을 우선한다.

CockroachDB — Netflix가 선택한 이유

Netflix는 원래 Cassandra(NoSQL)를 사용했다. 177개 노드에 수조 개의 메시지를 저장했다. 하지만 일관된 트랜잭션, 신뢰할 수 있는 보조 인덱스, SQL 쿼리가 필요해졌다.

해답은 CockroachDB — PostgreSQL 와이어 호환 분산 SQL 데이터베이스였다. 2026년 기준 Netflix는 100개 프로덕션 클러스터, 150개+ 테스트 클러스터를 운영한다. 가장 큰 클러스터: 60노드, 3 AZ, 26.5 TB.


제3장: 실전 사례 — 대기업들의 선택과 이유

Discord — MongoDB → Cassandra → ScyllaDB

2015 — MongoDB (초기 성장)
2017 — Cassandra (확장성 필요)
2022 — ScyllaDB (성능 한계 돌파)

Discord는 177개 Cassandra 노드에 수조 개의 메시지를 저장하고 있었다. 하지만 Java 기반 Cassandra의 GC(가비지 컬렉션) 멈춤이 심각한 지연을 유발했다.

C++로 작성된 ScyllaDB(Cassandra 드롭인 대체)로 9일 만에 무중단 마이그레이션을 완료했다:

Discord 마이그레이션 결과
읽기 p99
125ms → 15ms
쓰기 p99
70ms → 5ms
노드 수
177 → 72

Uber — PostgreSQL → MySQL Sharding

Uber는 원래 PostgreSQL 모놀리스를 사용했다. 2014년, 트립 수가 급증하며 데이터베이스 공간이 부족해졌다. PostgreSQL의 복제 방식과 MVCC 메커니즘이 Uber 규모에서 문제를 일으켰다.

해결책: MySQL 위에 자체 샤딩 레이어 Schemaless를 구축. 그리고 미션 크리티컬 OLTP에는 Cassandra-as-a-Service를 운영 — 초당 수백만 쿼리, 페타바이트 데이터를 처리한다.

금융 서비스 — "ACID가 아니면 안 된다"

JPMorgan Chase는 실시간 거래 처리에 관계형 데이터베이스를 사용한다. 이유는 단 하나: 원자성. A 계좌에서 출금했는데 B 계좌에 입금이 안 되는 상황은 절대 일어나면 안 된다. ACID가 이것을 보장한다.

업종주로 쓰는 DB이유
은행/금융PostgreSQL, Oracle, SQL ServerACID 필수, 규제 컴플라이언스
소셜 미디어Cassandra, Redis, MongoDB대규모 읽기/쓰기, 유연한 스키마
게임Redis, DynamoDB밀리초 지연, 실시간 리더보드
전자상거래PostgreSQL + DynamoDB결제는 SQL, 카탈로그는 NoSQL
IoT/모니터링InfluxDB, TimescaleDB시계열 데이터 전문

제4장: 2026년 데이터베이스 지형도

새로운 카테고리의 등장

2026년 데이터베이스 지형도
관계형 (SQL) PostgreSQL, MySQL, Oracle 여전히 시장 1~4위. JSON, 벡터 기능 흡수 중.
문서형 (NoSQL) MongoDB ACID 트랜잭션 추가. SQL과 수렴 중.
NewSQL CockroachDB, TiDB, Spanner SQL + 수평 확장. Netflix, Google 채택.
벡터 DB Pinecone, Milvus, pgvector AI 시대의 새 카테고리. RAG 핵심 인프라.
서버리스 DB Neon, PlanetScale, Turso 사용한 만큼만 과금. 자동 스케일링.
AI 네이티브 DB Oracle 26ai 벡터 검색, 자연어 질의, AI 에이전트 내장.

벡터 데이터베이스 — AI 시대의 필수 인프라

AI 모델이 텍스트를 **벡터(숫자 배열)**로 변환해 유사도를 검색하는 **RAG(Retrieval-Augmented Generation)**의 핵심이 벡터 DB다.

벡터 DB유형p99 지연추천 용도
Pinecone관리형7ms상용 AI, 운영 부담 제로
Milvus오픈소스30ms 이하10억+ 벡터 대규모 배포
pgvectorPostgreSQL 확장중간SQL+벡터를 한 DB에서
Chroma오픈소스빠름프로토타입, 1,000만 이하

SQL과 NoSQL의 수렴

2026년 가장 중요한 트렌드: 경계가 무너지고 있다.

PostgreSQL이 NoSQL 기능을 흡수:

  • JSONB 타입으로 문서 저장·인덱싱·질의
  • pgvector로 벡터 유사도 검색
  • 전문 검색(Full-text search)
  • "2026년 대부분의 풀스택 앱에 가장 안전한 기본값"이라는 평가

MongoDB가 SQL 기능을 흡수:

  • 멀티 문서 ACID 트랜잭션 (v4.0+)
  • $lookup으로 컬렉션 간 조인
  • 스키마 검증, 뷰
  • MongoDB 8.0에서 네이티브 SQL 지원

"관계형과 문서형 데이터베이스의 경계는 갈수록 흐려지고 있다. 각자가 상대방의 기능을 차용하면서."


제5장: 선택 가이드 — "나는 뭘 써야 하는가?"

의사결정 플로우

어떤 데이터를 다루는가?
정형 데이터 + 트랜잭션
유연한 문서형 데이터
관계/그래프 데이터
시계열 데이터
→ PostgreSQL
→ MongoDB
→ Neo4j
→ TimescaleDB

용도별 추천

용도추천 DB이유
새 프로젝트 기본값PostgreSQLJSONB + pgvector + ACID = 가장 다재다능
금융/은행PostgreSQL, OracleACID 필수, 규제 컴플라이언스
실시간 분석ClickHouse, TimescaleDB컬럼형/시계열 최적화
AI 벡터 검색Pinecone (관리형), pgvector (이미 PG 쓸 때)임베딩 유사도 검색
캐싱/세션Redis밀리초 이하 지연, 풍부한 자료 구조
소셜 그래프/사기 탐지Neo4j관계 탐색 최적화
글로벌 분산CockroachDB, Google SpannerNewSQL: SQL + 수평 확장
빠른 프로토타이핑MongoDB스키마 없이 빠르게 시작
엣지/모바일Turso (SQLite)로컬 우선, 저지연
게임Redis, DynamoDB실시간, 글로벌 복제

한 가지 규칙

확신이 없으면 PostgreSQL을 선택하라. 2026년의 PostgreSQL은:

  • 관계형 데이터 → 기본 기능
  • JSON 문서 → JSONB
  • 벡터 검색 → pgvector
  • 전문 검색 → tsvector
  • 시계열 → TimescaleDB (확장)
  • 그래프 → Apache AGE (확장)

"하나의 데이터베이스로 시작하고, 필요할 때 전문 데이터베이스를 추가하라"가 가장 실용적인 전략이다.


맺으며: 정답은 없고, 맥락이 있다

SQL vs NoSQL 논쟁에 정답은 없다. 맥락이 있을 뿐이다.

  • 돈이 오가는 곳 → SQL (ACID)
  • 유연성과 확장이 필요한 곳 → NoSQL (BASE)
  • 둘 다 필요한 곳 → NewSQL 또는 PostgreSQL + NoSQL 병행

50년 전 Edgar Codd가 11쪽짜리 논문으로 세운 관계형 모델은 여전히 건재하다. 동시에, Google과 Amazon이 2000년대에 시작한 NoSQL 혁명도 되돌릴 수 없다.

2026년의 현실은 수렴이다. SQL은 JSON과 그래프를 품었고, MongoDB는 ACID를 품었으며, NewSQL은 처음부터 둘 다 가지고 태어났다.

결국 중요한 것은 "SQL인가 NoSQL인가"가 아니라, **"내 데이터의 성격과 비즈니스 요구사항에 가장 맞는 것이 무엇인가"**라는 질문이다. 이 질문에 제대로 답하려면, 두 철학의 근본을 이해해야 한다. 이 글이 그 이해의 시작이 되었기를 바란다.


참고 자료