온디맨드 DynamoDB 테이블을 사용하고 있지만, 여전히 조절 문제가 발생합니다. 이유가 무엇입니까?

최종 업데이트 날짜: 2020년 8월 25일

온디맨드 Amazon DynamoDB 테이블에서 조절 문제가 발생합니다. 이유가 무엇입니까?

간략한 설명

다음은 온디맨드 테이블에서 조절 문제가 발생할 수 있는 일반적인 두 가지 이유입니다.

  • 트래픽은 이전 피크의 두 배 이상입니다.
  • 트래픽이 파티션당 최대값을 초과합니다.

해결 방법

트래픽이 이전 피크의 두 배 이상인 경우

30분 이내에 이전 트래픽 피크의 두 배를 초과하면 조절 문제가 발생할 수 있습니다. 초당 100,000번이 넘는 읽기에 도달하기 전에 트래픽 증가를 최소 30분 이상 분산시키는 것이 좋습니다. Amazon CloudWatch에서 ConsumedReadCapacityUnits 지표를 사용하여 테이블에 대한 트래픽을 모니터링합니다. 자세한 내용은 DynamoDB 지표 및 차원을 참조하십시오.

새로운 온디맨드 테이블의 경우 최대 4,000개의 쓰기 요청 단위나 12,000개의 읽기 요청 단위 또는 이 둘의 선형 조합을 즉시 유도할 수 있습니다. 온디맨드 용량 모드로 전환한 기존 테이블의 경우 이전에 테이블에 대해 프로비저닝된 처리량의 절반 또는 온디맨드 용량 모드로 새로 생성된 테이블의 설정 사이에서 둘 중 더 높은 값이 이전 피크에 해당합니다. 자세한 내용은 Initial throughput for on-demand capacity mode를 참조하십시오.

트래픽이 파티션당 최대값을 초과하는 경우

테이블의 각 파티션은 최대 3,000개의 읽기 요청 단위나 1,000개의 쓰기 요청 단위 또는 이 둘의 선형 조합을 지원할 수 있습니다. 파티션에 대한 트래픽이 이 제한을 초과하면 파티션이 조절될 수 있습니다. 이 문제를 해결하려면 다음을 수행하십시오.

  1. DynamoDB에 대한 CloudWatch Contributor Insights를 사용하여 테이블에서 가장 자주 액세스하고 가장 많이 조절된 키를 식별합니다.
  2. 시간이 경과함에 따라 핫 파티션 키에 대한 요청을 분산하도록 요청을 테이블에 무작위로 지정합니다. 자세한 내용은 쓰기 샤딩을 사용하여 워크로드를 골고루 배포를 참조하십시오.