DynamoDB on-demand throughput exceeded

요약 — 네, 온디맨드 테이블도 여전히 스로틀링될 수 있습니다. 세 가지 원인: 최대 처리량(MaxReadRequestUnits/MaxWriteRequestUnits)을 설정하고 넘었거나; 30분 내에 이전 트래픽 피크의 두 배 이상을 몰았거나; 테이블 수준 할당량(테이블당 기본 40,000 읽기 요청 단위와 40,000 쓰기 요청 단위)에 도달했습니다. 최대치를 올리거나 제거하고, 트래픽을 점진적으로 램프업하고, 지수 백오프 재시도를 유지하세요.

무엇을 의미하는가

ThrottlingException: Rate of requests exceeds the allowed throughput.

온디맨드 모드는 트래픽을 수용하도록 확장하지만, 즉각적이지 않고 상한 없이는 아닙니다. 새 온디맨드 테이블은 즉시 초당 최대 4,000 쓰기와 12,000 읽기를 지속하며, 온디맨드는 이전 트래픽 피크의 두 배까지 즉시 수용합니다. 구성된 최대치 초과, 30분 내에 그 두 배를 앞지르기, 또는 할당량 초과는 모두 스로틀링으로 나타납니다 — ThrottlingException은 HTTP 400이며 재시도 가능하고, 오류는 도달한 리소스와 한도를 지정하는 ThrottlingReason 필드(예: IndexWriteMaxOnDemandThroughputExceeded)를 지닙니다.

왜 발생하는가

  • 구성된 최대 처리량MaxReadRequestUnits/MaxWriteRequestUnits를 설정했고 수요가 그것을 넘었습니다. DynamoDB가 ThrottlingException을 반환합니다(선택한 비용 통제 상한이며 최선의 노력으로 적용됨).
  • 이전 피크의 2배보다 빠름 — 온디맨드는 이전 피크의 두 배까지 즉시 수용하지만, 30분 내에 그 피크의 두 배를 초과하면 스로틀링이 발생할 수 있습니다.
  • 콜드 스타트 램프 — 완전히 새로운 테이블(또는 생성 직후의 대량 로드)이 초당 4,000 쓰기와 12,000 읽기의 초기 기준선을 초과합니다.
  • 테이블 수준 할당량 — 테이블당 기본 상한인 40,000 읽기 요청 단위와 40,000 쓰기 요청 단위; 계정 수준 할당량 위반은 대신 RequestLimitExceeded로 나타납니다.
  • 핫 파티션 — 한 파티션 키에 집중된 트래픽으로, 테이블 모드와 관계없이 자체 파티션별 한도를 가집니다.

어떻게 해결하는가

  1. 구성된 최대치를 올리세요UpdateTable을 통해 MaxReadRequestUnits/MaxWriteRequestUnits를 늘리거나, 사용자 지정 상한을 제거하려면 값을 -1로 설정하세요(서비스 할당량은 여전히 적용).
  2. 알려진 스파이크 전에 사전 워밍하세요 — DynamoDB의 warm throughput 설정을 사용하거나, 트래픽 증가를 최소 30분에 걸쳐 분산해 온디맨드의 두 배 확장이 단계 변화를 쫓기보다 수요보다 앞서 유지되도록 하세요.
  3. 지수 백오프 재시도를 유지하세요 — SDK는 기본적으로 스로틀을 재시도합니다. 버스트 로드에는 적응형 재시도 모드를 사용하세요.
  4. 대량 가져오기를 조절하거나 새 테이블을 두드리는 대신 S3 가져오기 기능을 사용하세요.
  5. 키 공간을 분산해 단일 파티션 키가 핫해지지 않도록 하세요 — 핫 파티션은 테이블에 여유가 있어도 스로틀링됩니다.
  6. 테이블에 40,000 읽기/쓰기 요청 단위 이상이 정당하게 필요하면 할당량 증가를 요청하세요.

어느 키가 요청을 흡수하는지 쫓나요? DynoTable 데스크톱 앱에서 테이블을 탐색하고 필터링해 처리량을 제한하기 전에 핫 파티션 키를 찾으세요.

FAQ

DynamoDB 온디맨드 테이블도 스로틀링될 수 있나요? 네. 온디맨드 테이블은 구성된 최대 처리량을 넘거나, DynamoDB가 확장을 마치기 전에 이전 트래픽 피크의 두 배 이상을 몰거나, 테이블당 기본 할당량인 40,000 읽기와 40,000 쓰기 요청 단위를 넘거나, 트래픽을 핫 파티션 키에 집중하면 스로틀링됩니다.

온디맨드 처리량 한도를 어떻게 올리나요? UpdateTable을 통해 MaxReadRequestUnits/MaxWriteRequestUnits를 늘리거나, 사용자 지정 상한을 제거하려면 값을 -1로 설정하세요 — 계정 할당량은 여전히 적용됩니다. 테이블당 기본 40,000 요청 단위 이상이 필요하면 할당량 증가를 요청하세요.

관련 오류

참고 자료

공식 AWS 문서(위 링크)를 기준으로 2026-07-13에 마지막으로 검증되었습니다.

Console 없이 DynamoDB 작업하기

DynamoDB로는 실행할 수 없는 진짜 SQL(JOINs, GROUP BY, 집계)을 실행하는 빠른 DynamoDB 데스크톱 클라이언트. 시각적 편집과 여러분 자신의 Bedrock 키로 동작하는 AI 에이전트를 제공합니다.

30일 무료 체험, 신용카드 불필요 — 이후 기간 제한 없는 무료 요금제.