데이터 액세스 패턴과 일관성 모델

AWS 데이터 스토어 활용

Dunieski Otano

AWS Solutions Architect

단일 방식으로는 부족한 이유

  • 상품 카탈로그: 초당 수천 건 읽기, 업데이트는 드묾
  • 장바구니: 빈번한 쓰기 발생
  • 주문 시스템: 데이터 손실 불가
  • 액세스 패턴이 다르면 서로 다른 데이터 저장소 전략이 필요합니다

사용자

AWS 데이터 스토어 활용

임시 스토리지 vs 영구 스토리지 패턴

  • 영구 스토리지(Persistent Storage): 재시작 후에도 데이터 유지

    • 디스크에 저장, 삭제 전까지 보존
    • AWS 예시: DynamoDB, S3, RDS, OpenSearch
    • 활용: 사용자 데이터, 트랜잭션, 파일, 레코드

    persistent

  • 임시 스토리지(Ephemeral Storage): 재시작 시 데이터 삭제
    • 메모리에 저장, 설계상 임시 보관
    • AWS 예시: ElastiCache, EC2 인스턴스 스토어
    • 활용: 세션 데이터, 캐시, 임시 계산

ephemeral

AWS 데이터 스토어 활용

읽기 집중형 vs 쓰기 집중형 워크로드

  • 읽기 집중형: 읽기 多, 쓰기 少
    • 예시: 상품 카탈로그, 블로그 게시물
    • 적합: 캐싱을 활용한 DynamoDB, S3
  • 쓰기 집중형: 빈번한 업데이트
    • 예시: IoT 센서, 클릭스트림 데이터
    • 적합: 자동 스케일링이 적용된 DynamoDB
  • 균형형: 읽기/쓰기 비율이 동등
    • 예시: 소셜 미디어 게시물, 댓글
    • 적합: 균형 용량의 DynamoDB

bars

AWS 데이터 스토어 활용

실제 일관성 모델 적용

  • 강한 일관성: 항상 최신 데이터 반환
    • 속도는 느리지만 정확
    • 활용: 금융 데이터, 재고 수량
  • 최종 일관성: 오래된 데이터가 반환될 수 있음
    • 빠르지만 짧은 지연 가능
    • 활용: 사용자 프로필, 상품 설명
  • DynamoDB 콘솔: ConsistentRead 파라미터

 

table_query

AWS 데이터 스토어 활용

AWS 콘솔에서 서비스 살펴보기

  • DynamoDB 콘솔: 테이블, 항목, 쿼리
  • S3 콘솔: 버킷, 객체, 속성
  • ElastiCache 콘솔: Redis/Memcached, 노드, 지표
  • 서비스마다 리소스 구성 방식이 다릅니다

services

AWS 데이터 스토어 활용

패턴에 맞는 서비스 선택

  • 읽기 집중형 + 최종 일관성 = DynamoDB, S3
  • 쓰기 집중형 + 높은 처리량 = DynamoDB
  • 캐싱 레이어 = ElastiCache
  • 전문 검색 = OpenSearch

consistency

AWS 데이터 스토어 활용

연습해 봅시다!

AWS 데이터 스토어 활용

Preparing Video For Download...