이전 모듈에서는 게임의 다음과 같은 액세스 패턴을 충족했습니다.

  • 사용자 프로필 생성(쓰기)
  • 사용자 프로필 업데이트(쓰기)
  • 사용자 프로필 가져오기(읽기)
  • 게임 생성(쓰기)
  • 열린 게임 찾기(읽기)
  • 게임 보기(읽기)
  • 사용자의 게임 참여(쓰기)
  • 게임 시작(쓰기)
  • 사용자의 게임 업데이트(쓰기)
  • 게임 업데이트(쓰기)
  • 사용자의 게임 찾기(읽기)

이러한 패턴을 충족하기 위해 사용한 전략은 다음과 같습니다.

  • 여러 엔터티 유형을 1개 테이블로 결합하는 단일 테이블 설계
  • 다대다 관계를 허용하는 복합 기본 키
  • 필드 중 1개로 필터링하는 스파스 보조 인덱스
  • 여러 엔터티 전체에서 복잡한 쓰기 패턴을 처리하는 DynamoDB 트랜잭션
  • 다대다 엔터티에 대한 역방향 조회를 허용하는 반전 인덱스

다음 단계에서는 이 실습에서 생성한 리소스를 정리합니다. 추가 AWS 요금을 방지하려면 이러한 리소스를 삭제하는 것이 중요합니다.

모듈 완료 시간: 20분


  • 1단계: DynamoDB 테이블 삭제

    정리 프로세스의 일부로 이 실습에서 사용한 DynamoDB 테이블을 삭제해야 합니다.

    다운로드한 코드에서 delete_table.py 스크립트는 scripts/ 디렉터리에 있습니다. 해당 파일 콘텐츠는 다음과 같습니다.

    import boto3
    
    dynamodb = boto3.client('dynamodb')
    
    try:
        dynamodb.delete_table(TableName='battle-royale')
        print("Table deleted successfully.")
    except Exception as e:
        print("Could not delete table. Please try again in a moment. Error:")
        print(e)

    터미널에서 다음 명령을 실행하여 이 스크립트를 실행하고 테이블을 삭제합니다.

    python scripts/delete_table.py

    테이블이 삭제되었음을 나타내는 메시지가 터미널에 표시됩니다.

  • 2단계: AWS Cloud9 환경 삭제

    이 실습에서 사용한 AWS Cloud9 환경을 삭제하려면 다음을 수행합니다.

    1.  AWS Cloud9 콘솔로 이동합니다.
    2.  DynamoDB Battle Royale 환경을 선택하고 [Delete(삭제)]를 선택합니다.
    3.  대화 상자에 Delete를 입력하고 [Delete(삭제)]를 선택합니다.
    Module7-step2

    (확대하려면 클릭)

    Module7-step2