01 · OPENING

Firebase vs Supabase

백엔드를 고르는 일은 데이터의 구조를 고르는 일입니다.

Firebase

Firestore 중심의 문서형 NoSQL 방식

Supabase

PostgreSQL 중심의 관계형 SQL 방식

FIREBASE
Documents · Rules · Realtime
SUPABASE
PostgreSQL · RLS · SQL
02 · ROADMAP

학습 로드맵

개념 → 모델 → SQL → BaaS → 선택

DatabaseRDB / NoSQLSQL 실습Firebase / Supabase선택 기준
03 · DATABASE

Database란 무엇인가

데이터베이스는 데이터를 지속적으로 저장하고 다시 조회합니다.

사용자 입력앱 메모리DB 저장소다시 조회
04 · DATABASE

DBMS의 역할

DBMS는 정의·생성·관리·접근제어를 담당합니다.

요청을 선택하세요.
클라이언트DBMS권한 확인데이터베이스
05 · RDBMS

관계형 DBMS 구조

기본키(PK)로 행을 식별하고 외래키(FK)로 관계를 연결합니다.

고객 테이블 (PK)주문 테이블 (FK)관계 연결
06 · RDBMS

ACID 트랜잭션

여러 작업을 신뢰할 수 있게 처리하는 네 가지 원칙입니다.

A · Atomicity

원자성: 모두 성공하거나 모두 취소

C · Consistency

일관성: 제약 조건 준수

I · Isolation

격리성: 트랜잭션 간 간섭 통제

D · Durability

지속성: 커밋된 결과 보존

예시 계좌 잔액 A: 100 · B: 50
BEGIN잔액 변경검증COMMIT / ROLLBACK
07 · NOSQL

NoSQL 데이터 모델 4가지

NoSQL은 단일 구조가 아니라 여러 데이터 모델의 묶음입니다.

DocumentKey-ValueGraphWide-Column
08 · COMPARISON

RDB vs NoSQL

일관성·쿼리·관계 요구와 데이터 패턴을 함께 따져야 합니다.

RDB · 정규화관계 질의NoSQL · 유연한 모델
09 · POSTGRESQL

PostgreSQL

PostgreSQL은 관계형 SQL에 JSON 유형도 결합합니다.

SQLPostgreSQL 엔진테이블 + JSONB
10 · SQL / JOIN

INNER JOIN 연산 원리

회원 테이블과 주문 테이블에서 고객 ID가 일치하는 행만 연결합니다.

① 회원 테이블 customers

② 주문 테이블 orders

③ INNER JOIN 결과

교육용 가정 데이터 · 주문이 없는 회원은 INNER JOIN 결과에 나타나지 않습니다.

11 · SQL / PRACTICE

주문 추가·취소로 배우는 INNER JOIN

주문 테이블에 행이 늘어나거나 줄어들면 JOIN 결과도 함께 바뀝니다.

고객 3의 주문을 추가해 보세요.

① 회원 테이블 customers

② 주문 테이블 orders

회원.id = 주문.customer_id ↓ INNER JOIN

③ INNER JOIN 결과

실행되는 SQL 확인

교육용 가정 데이터 · 실제 DB에 저장되지 않습니다.

12 · SQL / GROUP BY

GROUP BY 연산 원리

같은 값을 가진 행을 묶고 COUNT·SUM·AVG를 구합니다.

주문 레코드customer_id로 묶기집계 그래프
13 · SQL / PRACTICE

JOIN → GROUP BY 실습

customers와 orders를 연결하고 고객별 주문 합계를 계산합니다. (교육용 예시)

1. 원본→2. INNER JOIN→3. GROUP BY

customers 회원 테이블

orders 주문 테이블

실행 결과

실행 SQL

14 · FIREBASE

Firebase / Firestore

Firestore는 컬렉션 안의 문서로 데이터를 관리합니다.

Firestorecollectiondocumentsubcollection
15 · FIREBASE

Firebase 실시간 동기화

리스너는 데이터 변경에 따라 쿼리 결과의 최신 상태를 제공합니다.

FirestoreonSnapshot 리스너UI 목록 업데이트
16 · SUPABASE

Supabase의 구성 요소

PostgreSQL을 중심으로 인증·스토리지·실시간 기능을 묶습니다.

사용자 앱Supabase APIPostgreSQLRLS
17 · SUPABASE

Realtime와 RLS

사용자를 선택한 뒤 INSERT·UPDATE·DELETE를 실행하면 테이블 데이터와 변경 이벤트가 함께 바뀝니다.

18 · PLATFORM

보안·개발·호스팅 비교

보안 규칙, SDK 구성, 운영 선택지를 함께 비교합니다.

Firebase RulesVSPostgreSQL RLS
19 · ECOSYSTEM

비용·AI 확장·대안

요금과 제품 기능은 변하므로 워크로드에 맞춰 최신 조건을 확인합니다.

원문 요금 수치: 작성 시점 기준 · 최신 공식 확인 필요
Firestore Reads/WritesPostgres DBAI · 확장 기능
20 · DECISION

어떤 플랫폼을 선택할까?

프로젝트 요구사항을 조합해 기술 선택 근거를 확인합니다.

서비스 요구 정의데이터 모델운영 제약근거 기반 결정