DynamoDB에서 테이블 클래스 선택 시 고려 사항
DynamoDB는 비용을 최적화할 수 있도록 설계된 두 가지 테이블 클래스를 제공합니다. DynamoDB Standard 테이블 클래스가 기본값이며 대다수의 워크로드에 권장됩니다. DynamoDB Standard-Infrequent Access(DynamoDB Standard-IA) 테이블 클래스는 스토리지 비용이 많이 드는 테이블에 최적화되어 있습니다. 예를 들어 애플리케이션 로그, 이전 소셜 미디어 게시물, 전자 상거래 주문 내역 및 과거 게임 성과 같이 자주 액세스하지 않는 데이터를 저장하는 테이블은 Standard-IA 테이블 클래스에 적합합니다.
모든 DynamoDB 테이블은 테이블 클래스와 연결됩니다. 테이블과 연결된 모든 보조 인덱스는 동일한 테이블 클래스를 사용합니다. 테이블을 생성할 때 테이블 클래스를 설정하고(기본적으로 DynamoDB Standard), AWS Management Console, AWS CLI 또는 AWS SDK를 사용하여 기존 테이블의 테이블 클래스를 업데이트할 수 있습니다. DynamoDB는 또한 단일 리전 테이블(글로벌 테이블이 아닌 테이블)에 대해 AWS CloudFormation을 사용하여 테이블 클래스를 관리하는 것을 지원합니다. 각 테이블 클래스는 데이터 스토리지와 읽기 및 쓰기 요청에 대해 서로 다른 요금이 적용됩니다. 테이블의 테이블 클래스를 선택할 경우 다음 사항에 유의하세요.
-
DynamoDB Standard 테이블 클래스는 DynamoDB Standard-IA보다 낮은 처리량 비용을 제공하며 처리량이 가장 중요한 테이블에서는 가장 비용 효율적인 옵션입니다.
-
DynamoDB Standard-IA 테이블 클래스는 DynamoDB Standard보다 저렴한 스토리지 비용을 제공하며 스토리지 비용이 가장 큰 테이블에 가장 비용 효율적인 옵션입니다. 스토리지가 DynamoDB Standard 테이블 클래스를 사용하는 테이블의 처리량(읽기 및 쓰기) 비용의 50%를 초과하는 경우 DynamoDB Standard-IA 테이블 클래스를 사용하면 총 테이블 비용을 절감할 수 있습니다.
-
DynamoDB Standard-IA 테이블은 DynamoDB Standard 테이블과 성능, 내구성 및 가용성이 동일합니다.
-
DynamoDB Standard와 DynamoDB Standard-IA 테이블 클래스 간을 전환할 때 애플리케이션 코드를 변경할 필요가 없습니다. 테이블에서 사용하는 테이블 클래스와 관계없이 동일한 DynamoDB API와 서비스 엔드포인트를 사용합니다.
-
DynamoDB Standard-IA 테이블은 자동 크기 조정, 온디맨드 모드, 유지 시간(TTL), 온디맨드 백업, PITR(특정 시점으로 복구) 및 글로벌 보조 인덱스와 같은 기존 DynamoDB 기능과 모두 호환됩니다.
테이블의 가장 비용 효율적인 테이블 클래스는 테이블의 예상 스토리지 및 처리량 사용 패턴에 따라 달라집니다. AWS 비용 및 사용 보고서와 AWS Cost Explorer를 사용하여 테이블의 과거 스토리지 및 처리량 비용 및 사용량을 확인할 수 있습니다. 이 기록 데이터를 사용하여 테이블에 가장 비용 효율적인 테이블 클래스를 결정할 수 있습니다. AWS 비용 및 사용 보고서와 AWS Cost Explorer 사용에 대한 자세한 내용은 AWS Billing and Cost Management 설명서를 참조하세요. 테이블 클래스 요금 세부 정보는 Amazon DynamoDB 요금
참고
테이블 클래스 업데이트는 백그라운드 프로세스입니다. 테이블 클래스 업데이트 중에도 여전히 테이블에 정상적으로 액세스할 수 있습니다. 테이블 클래스를 업데이트하는 시간은 테이블 트래픽, 스토리지 크기 및 기타 관련 변수에 따라 다릅니다. 30일 후행 기간에는 테이블에 대한 테이블 클래스 업데이트가 2개 이상 허용되지 않습니다.