C.W.K.
Stream
Lesson 06 of 10 · published

Common Use Case

~12 min · foundations, use-cases

Level 0스키마 새싹
0 XP0/86 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

Default 백엔드 DB

모든 메이저 웹 프레임워크 — Rails, Django, Phoenix, Next.js + Prisma, Spring Boot — 가 PostgreSQL 을 기본으로 깔아. user, session, product, post, comment, payment: 일반 SaaS 가 필요한 거 PostgreSQL 이 땀 안 빼고 다 처리. 다른 거 골라야 할 이유가 즉시 떠오르지 않으면, Postgres 골라.

특히 빛나는 영역

  • Geospatial — PostGIS 가 Postgres 를 first-class GIS DB 로. 지도 서비스, 배달 라우팅, 위치 기반 검색.
  • OLTP 위 분석 — window function, materialised view, CTE 로 Postgres 한 대가 mid-scale BI 까지 커버. 웨어하우스 복사 안 해도.
  • AI 임베딩 — pgvector 가 임베딩을 그게 묘사하는 entity 옆에 둬. ~10M 임베딩 미만이면 별도 vector store 필요 없음.
  • Time-series — TimescaleDB 가 hypertable, 압축, continuous aggregate 로 Postgres 확장.
  • Message queue, audit log, feature flag — 적절한 인덱스 있는 Postgres 테이블로 충분한 경우가 많음.

특화 store 로 졸업하는 때

페타바이트 분석 → columnar warehouse (Snowflake, BigQuery, ClickHouse). Sub-ms 캐시 → Redis. 대규모 write fan-out (초당 수백만) → Cassandra/ScyllaDB. 순수 event log → Kafka. 룰: 측정된 압력 있을 때 졸업, 미래 압력 의심으로 졸업하지 말 것.

Code

일반 SaaS 쿼리·sql
-- 이번 달 활성 유저 — 모든 SaaS 대시보드에 정확히 이 모양 있음.
SELECT COUNT(DISTINCT user_id)
FROM   sessions
WHERE  created_at >= DATE_TRUNC('month', CURRENT_DATE);
Geospatial — 500m 안 카페·sql
SELECT name, address
FROM   shops
WHERE  ST_DWithin(
         location,
         ST_MakePoint(-122.42, 37.77)::geography,
         500
       );
pgvector 임베딩 유사도·sql
SELECT id, title
FROM   documents
ORDER  BY embedding <=> '[0.12, -0.04, ...]'::vector
LIMIT  5;

External links

Exercise

현재 프로젝트 (혹은 최근 작업한 거) 의 데이터 store 나열. Postgres 아닌 store 마다, 오늘 Postgres 가 대체 가능한지 한 줄, 가능해지려면 뭐가 바뀌어야 하는지 한 줄.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.