15

사고 보고서: 프로덕션 데이터를 덮어썼습니다

Delta Lake: ACID 트랜잭션과 Time Travel

학습 목표

데이터 레이크의 구조적 한계를 이해한다 Delta Lake가 해결하는 문제를 파악한다

"방금 뭐 했어요?"

금요일 오후 5시. 배포 직전 데이터 확인 중.

에디터 로딩 중...

"아..."

3년치 주문 데이터가 사라졌다.


전통적인 데이터 레이크의 문제

문제 1: 롤백 불가

에디터 로딩 중...

문제 2: 동시 쓰기 충돌

에디터 로딩 중...

문제 3: 스키마 드리프트

에디터 로딩 중...

문제 4: 부분 실패

에디터 로딩 중...

"데이터베이스였으면 이런 일 없었을 텐데..."

맞다. RDBMS에는 이런 기능이 있다:

  • ROLLBACK: 실수 복구
  • TRANSACTION: 원자적 쓰기
  • CONSTRAINT: 스키마 검증

"데이터 레이크에도 이런 게 있으면 좋겠다."


Delta Lake: 데이터 레이크 + ACID

에디터 로딩 중...

_delta_log가 모든 변경사항을 기록한다. → 시간 여행, 롤백, ACID 모두 가능!


이번 Day에서 배울 것

  1. Delta Lake 기본: ACID가 뭔지, 왜 중요한지
  2. Time Travel: 과거 버전 조회와 롤백
  3. MERGE (Upsert): CDC 데이터 처리
  4. OPTIMIZE & VACUUM: 성능 최적화

시작하자.