Amazon Athena의 TooManyRequestsException 오류를 해결하고 싶습니다.
간략한 설명
Athena는 쿼리를 관리하기 위해 전체 서비스 부하와 수신 요청 볼륨에 따라 리소스를 할당합니다. 쿼리는 실행되기 전에 임시 대기열 과정을 거칩니다. 비동기 프로세스는 대기열에서 쿼리를 검색하여 사용 가능한 물리적 리소스에서 실행합니다. 이러한 프로세스는 계정 구성 할당량을 따릅니다. DML 또는 DDL 쿼리 할당량에는 실행 중인 쿼리와 대기 중인 쿼리가 포함됩니다. 실행 중인 쿼리와 대기 중인 쿼리의 합계가 DML 또는 DDL 쿼리 할당량을 초과하면 TooManyRequestsException 오류가 나타납니다.
해결 방법
참고: DML 또는 DDL 활성 쿼리를 늘려도 실행되는 쿼리 수는 변하지 않습니다. Athena가 컴퓨팅 리소스를 사용할 수 있을 때까지 기다리는 동안 더 많은 쿼리가 대기열 상태에 배치됩니다.
TooManyRequestsException 오류를 해결하려면 다음 작업을 수행하십시오.
- Athena Service Quotas 콘솔을 사용하여 할당량 증가를 요청합니다. 초과된 할당량을 식별하려면 AWS CloudTrail 로그를 검토하여 DML 또는 DDL 실패를 확인합니다. 자세한 내용을 보려면 Service Quotas을 참조하십시오.
- 요청 수를 줄이거나 특정 기간 동안 요청을 분산합니다.
- ExponentialBackoff 알고리즘을 사용하여 쿼리 재시도 사이 또는 여러 쿼리를 동시에 실행할 때 대기 시간을 연장할 수 있습니다. 자세한 내용은 재시도 동작을 참조하십시오.
- 성능 조정 팁을 구현하여 Athena에서 쿼리 성능을 개선하십시오.
- 쿼리가 실행되도록 하려면 용량 예약을 사용합니다. 용량 예약 요금에 대한 자세한 내용은 Amazon Athena 요금을 참조하십시오.