Cert Notes/ 출퇴근 학습 노트
로드맵
KOEN
CLF-C02 · FoundationalCloud Practitioner - Foundational
DVA-C02 · AssociateDeveloper - Associate
  • Week 1
    • 1.개발자 시점에서 본 AWS: 리전, 인프라, 그리고 책임의 경계
    • 2.IAM의 4대 엔터티: User, Group, Role, Policy
    • 3.STS와 정책 조건: 임시 자격증명의 깊은 세계
    • 4.AWS CLI와 SDK: 자격증명 체이닝부터 SigV4까지
    • 5.Week 1 종합: 인프라와 IAM이 만드는 신뢰의 사슬
  • Week 2
    • 1.EC2의 해부학: Nitro, 인스턴스 패밀리, AMI의 내부
    • 2.개발자가 만져야 하는 네트워크 경계: Security Group, Key Pair, User Data
    • 3.EC2의 디스크 layer: EBS, Instance Store, 그리고 그 위의 EFS·FSx
    • 4.트래픽을 분산하는 layer: ALB·NLB·GWLB, 그리고 Auto Scaling Group
    • 5.Week 2 종합: EC2 layer가 한 시스템 안에서 맞물리는 방식
  • Week 3
    • 1.Lambda Execution Model: Firecracker MicroVM이 함수를 실행하는 방법
    • 2.Lambda 이벤트 소스 매핑: SQS·Kinesis·DynamoDB Streams 내부 폴링 메커니즘
    • 3.Lambda 버전·별칭·레이어: Immutable 배포와 의존성 분리의 원리
    • 4.Lambda 동시성 제어: Token Bucket 알고리즘과 에러 처리 계층
    • 5.Week 3 복습: Lambda 종합 시나리오로 실전 감각 다지기
  • Week 4
    • 1.API Gateway REST API: 요청이 백엔드에 도달하기까지의 전체 경로
    • 2.API Gateway 통합 유형과 VTL 매핑 템플릿: Lambda 없이 DynamoDB를 직접 호출하기
    • 3.API Gateway 보안·캐싱·스로틀링: SigV4부터 Token Bucket까지 요청이 통제되는 방법
    • 4.WebSocket API와 HTTP API: 실시간 연결과 경량 프록시의 내부 동작
    • 5.Week 4 복습: API Gateway 종합 시나리오로 실전 감각 다지기
  • Week 5
    • 1.S3: 객체 스토리지의 철학과 스토리지 클래스 설계
    • 2.S3: 버전 관리, 수명 주기 정책, 그리고 복제의 내부 동작
    • 3.S3 보안: 버킷 정책, 암호화, 그리고 접근 제어의 계층 구조
    • 4.S3 성능 최적화: 멀티파트 업로드, 전송 가속화, 접두사 설계
    • 5.S3 고급 기능 + Week 5 종합 복습
  • Week 6
    • 1.DynamoDB: NoSQL의 철학과 파티션 설계의 수학
    • 2.DynamoDB: 파티션 키 설계의 수학, LSI/GSI 내부 동작, Single-Table Design
    • 3.DynamoDB: RCU/WCU 수학, DAX 아키텍처, Streams 처리
    • 4.DynamoDB: 트랜잭션, 조건부 쓰기, TTL의 내부 동작
    • 5.Week 6 종합 복습: DynamoDB 전체 지형도
  • Week 7
    • 1.RDS: 관리형 RDBMS의 두 얼굴, Multi-AZ와 Read Replica
    • 2.RDS의 보안·백업·모니터링: Capital One 사고가 남긴 교훈들
    • 3.ElastiCache: 인메모리 캐시는 어떻게 DB를 살리는가
    • 4.Aurora: AWS가 RDBMS의 스토리지 레이어를 다시 쓴 이야기
    • 5.Week 7 종합: 데이터 계층 의사결정의 모든 것
  • Week 8
    • 1.CodeCommit과 CodeBuild: AWS가 그린 CI/CD의 첫 두 칸
    • 2.CodeDeploy: 배포라는 가장 위험한 순간을 안전하게
    • 3.CodePipeline: CI/CD 흐름의 지휘자
    • 4.Elastic Beanstalk: AWS가 만든 가장 친절한 PaaS
    • 5.Week 8 종합 복습: CI/CD 파이프라인을 머릿속에서 끝까지 돌려보기
  • Week 9
    • 1.KMS: 암호화 키를 직접 만지지 않고 다루는 기술
    • 2.Secrets Manager와 Parameter Store: 비밀을 코드 밖으로 꺼내기
    • 3.Cognito: 인증과 인가를 두 개의 풀로 나눈 이유
    • 4.WAF, Shield, ACM: 트래픽이 앱에 닿기 전에 거르는 세 겹
    • 5.Week 9 복습: 보안은 한 줄의 설정이 아니라 계층의 합이다
  • Week 10
    • 1.CloudWatch: 지표 하나가 어떻게 알람과 자동화로 이어지는가
    • 2.X-Ray: "어디서 느린가"를 답하는 분산 추적
    • 3.CloudTrail과 EventBridge: 감사와 반응의 두 축
    • 4.CloudWatch 고급: 컨테이너, 합성 모니터링, 그리고 ML 이상 탐지
    • 5.Week 10 종합: 모니터링이라는 하나의 이야기
  • Week 11
    • 1.SQS: 큐 하나가 어떻게 시스템을 떼어놓는가
    • 2.SNS: 한 번 발행하면 모두가 듣는다
    • 3.Kinesis: 흐르는 데이터를 붙잡아두는 로그
    • 4.Step Functions와 AppSync: 흐름을 코드 밖으로 꺼내다
    • 5.Week 11 종합: 메시징의 모델을 가르는 질문들
  • Week 12
    • 1.ECS와 Fargate: 컨테이너를 "서버 없이" 돌린다는 말의 진짜 의미
    • 2.CloudFormation: 인프라를 "선언"한다는 발상
    • 3.SAM: 서버리스를 위해 CloudFormation을 압축하다
    • 4.CDK와 서버리스 아키텍처: "인프라를 코드로 쓴다"의 끝, 그리고 좋은 설계의 문법
    • 5.Week 12 종합 복습: 컨테이너와 IaC를 하나의 그림으로 꿰기
  • Week 13
    • 1.최종 복습 1: IAM, EC2, Lambda, API Gateway
    • 2.최종 복습 2: S3, DynamoDB, RDS, ElastiCache
    • 3.최종 복습 3: 보안, 모니터링, CI/CD
    • 4.최종 복습 4: 메시징, 컨테이너, 아키텍처 패턴
    • 5.최종 모의고사 + 시험 준비 완료
SAA-C03 · AssociateSolutions Architect - Associate
SOA-C02 · AssociateCloudOps Engineer - Associate
SAP-C02 · ProfessionalSolutions Architect - Professional
DOP-C02 · ProfessionalDevOps Engineer - Professional
SCS-C03 · SpecialtySecurity - Specialty
MLA-C01 · AssociateMachine Learning Engineer - Associate
AIF-C01 · FoundationalAI Practitioner - Foundational
DEA-C01 · AssociateData Engineer - Associate
MLS-C01 · SpecialtyMachine Learning - Specialty
합격 후기
← DVA-C02/Week 6/Day 1
DVA-C02· AssociateWeek 6 · Day 1읽기 약 16분

Day 1 - DynamoDB: NoSQL의 철학과 파티션 설계의 수학

관계형 데이터베이스를 오래 써온 개발자가 DynamoDB를 처음 배울 때 가장 충격을 받는 부분은 두 가지다. 첫째, JOIN이 없다. 둘째, 어떻게 데이터를 조회할지를 먼저 결정한 다음 테이블을 설계해야 한다 — RDBMS와는 정반대 순서다. 이 day에서는 왜 Amazon이 2007년 DynamoDB의 전신인 Dynamo를 만들었는지, 그 핵심 아이디어인 파티셔닝과 일관성 모델이 어떻게 동작하는지를 이해한다. 이 원리를 이해하면 DVA-C02의 DynamoDB 문제는 외우지 않아도 풀린다.

Dynamo 논문의 배경 — 2007년 Amazon의 고민

2007년 10월, Amazon의 수석 엔지니어들이 ACM SOSP 학술회의에서 "Dynamo: Amazon's Highly Available Key-value Store"라는 논문을 발표했다. 이 논문은 분산 시스템 역사에서 가장 영향력 있는 논문 중 하나가 됐다.

당시 Amazon의 문제는 이랬다. MySQL 같은 관계형 DB는 트랜잭션을 위해 락(lock)을 사용하고, 분산 확장이 어려우며, 특히 피크 트래픽(블랙 프라이데이, 크리스마스)에서 수십만 TPS를 처리하기 어렵다. Amazon의 수석 과학자 Werner Vogels는 "Amazon의 수많은 서비스가 95% 이상의 쿼리에서 PRIMARY KEY를 사용하며, 복잡한 JOIN이 거의 필요없다"는 분석을 했다. 그렇다면 JOIN을 포기하고 수평 확장에 최적화된 스토리지를 만들면 어떨까?

여기부터는 Pro 전용입니다

Week 1은 누구나 무료로 볼 수 있어요. Week 2부터의 전체 학습 자료와 모의고사·무제한 복습은 Pro 플랜에서 이용할 수 있습니다.

Pro 알아보기로그인
이전S3 고급 기능 + Week 5 종합 복습Week 5 · Day 5다음 DynamoDB: 파티션 키 설계의 수학, LSI/GSI 내부 동작, Single-Table DesignWeek 6 · Day 2