용량 사용량 제어
최대 또는 최소 DPU 수에 대한 제어를 설정하여 Athena가 쿼리에 할당하는 DPU 수를 제어할 수 있습니다. 모든 쿼리에 대한 기준 제어를 설정하도록 작업 그룹 수준에서 이를 구성하거나 세분화된 제어를 위해 개별 쿼리 수준에서 구성할 수 있습니다. 그러면 쿼리 성능, 워크로드 동시성 및 비용을 직접 제어할 수 있습니다.
-
최대 DPU 수를 설정하면 쿼리는 사용자가 지정한 것보다 더 많은 용량을 소비하지 못합니다. 따라서 비용 및 워크로드 동시성 제어가 간단해집니다. 예를 들어 용량 예약에 200개의 DPU가 있는 경우 쿼리당 최대 DPU 수를 8로 설정하면 25개의 쿼리를 동시에 실행할 수 있습니다. 예약을 400개의 DPU로 늘리면 50개의 쿼리를 동시에 실행할 수 있습니다.
-
최소 DPU 수를 설정하면 원하는 최소 DPU 수로 쿼리가 실행되도록 보장합니다. 이는 쿼리에 대한 일반적인 용량 사용 프로파일을 미리 알고 있는 경우에 유용합니다.
참고
DPU 사용 제어는 용량 예약으로 실행된 쿼리에만 적용됩니다.
참고
모든 쿼리에 대해 동일한 수의 DPU를 사용하려면 최소 및 최대 DPU 수에 동일한 값을 사용합니다.
작업 그룹 수준에서 DPU 제어 설정
선택한 작업 그룹에 대한 워크로드 성능을 제어하고 비용을 관리하려면 작업 그룹 수준에서 DPU 제어를 설정합니다. 작업 그룹 수준에서 설정된 DPU 제어는 클라이언트 측 설정 재정의가 활성화된 경우 모든 쿼리에 적용됩니다.
콘솔을 사용하여 DPU 제어를 설정하는 방법
https://console.aws.amazon.com/athena/
에서 Athena 콘솔을 엽니다. -
탐색 창에서 작업 그룹(Workgroups)을 선택합니다.
-
용량 예약을 사용하는 작업 그룹을 선택하세요.
-
실행 제어 탭에서 제어 편집을 선택하세요.
-
다음을 구성합니다.
-
쿼리당 최소 DPU 수에 4~124 사이의 값(증분 단위: 4)을 입력하세요.
-
쿼리당 최대 DPU 수에 4~124 사이의 값(증분 단위: 4)을 입력하세요.
-
-
저장을 선택합니다.
-
(선택 사항) 클라이언트 측 설정 재정의를 선택하여 이러한 설정을 적용하고 쿼리 수준 DPU 구성을 무시하세요.
AWS CLI를 사용하여 DPU 제어를 설정하는 방법
-
update-work-group명령을 사용하여 작업 그룹에 대한 DPU 제어를 설정합니다.aws athena update-work-group \ --work-group my_workgroup \ --configuration-updates '{ "EngineConfiguration": { "Classifications": [ { "Name": "athena-query-engine-properties", "Properties": { "max-dpu-count" : "24", "min-dpu-count" : "12" } } ] }}'EnforceWorkGroupConfiguration을true로 설정하면 StartQueryExecution을 통해 제출할 때 작업 그룹 설정이 쿼리 수준에서 지정된 모든 DPU 제어를 재정의합니다. 이를 통해 작업 그룹의 모든 쿼리에서 일관된 리소스 할당이 보장됩니다.
개별 쿼리를 사용하여 DPU 제어 설정
리소스 요구 사항이 서로 다른 쿼리에서 세분화된 제어가 필요한 경우 쿼리 수준 DPU 제어를 설정합니다. 쿼리 수준 DPU 제어는 작업 그룹에 클라이언트 측 설정 재정의가 활성화되어 있지 않은 한 작업 그룹 수준 설정보다 우선합니다.
콘솔을 사용하여 쿼리에 대한 DPU 제어를 설정하는 방법
https://console.aws.amazon.com/athena/
에서 Athena 콘솔을 엽니다. -
탐색 창에서 쿼리 편집기를 선택합니다.
-
용량 예약을 사용하는 작업 그룹을 선택하세요.
-
쿼리 설정 탭을 선택하세요.
-
실행 제어 섹션에서 제어 편집을 선택하세요.
-
다음을 구성합니다.
-
쿼리당 최소 DPU 수에 4~124 사이의 값(증분 단위: 4)을 입력하세요.
-
쿼리당 최대 DPU 수에 4~124 사이의 값(증분 단위: 4)을 입력하세요.
-
-
저장을 선택합니다.
AWS CLI를 사용하여 쿼리에 대한 DPU 제어를 설정하는 방법
-
engine-configuration파라미터와 함께start-query-execution명령을 사용하세요.aws athena start-query-execution \ --query-string "SELECT * FROM my_table LIMIT 10" \ --work-group "my_workgroup" \ --engine-configuration '{ "Classifications": [ { "Name": "athena-query-engine-properties", "Properties": { "max-dpu-count" : "32", "min-dpu-count" : "8" } } ]}'
쿼리 수준 및 작업 그룹 수준 DPU 설정 간 관계는 다음과 같이 작업 그룹 구성에 따라 다릅니다.
-
클라이언트 측 설정 재정의가 활성화되면 모든 쿼리 수준 설정보다 작업 그룹 수준 DPU 제어가 우선합니다. 이를 통해 지정된 작업 그룹의 모든 쿼리에 대해 일관된 리소스 사용이 보장됩니다.
-
클라이언트 측 설정 재정의가 활성화되지 않은 경우 쿼리 수준 DPU 제어가 작업 그룹 수준 설정보다 우선합니다. 이를 통해 개별 쿼리를 유연하게 최적화할 수 있습니다.
어느 수준에서든 DPU 제어를 지정하지 않으면 Athena는 쿼리 복잡성에 따라 용량을 자동으로 할당합니다.
참고
DDL 쿼리의 경우 최소 DPU 수의 최댓값은 4입니다. DDL 쿼리의 최솟값을 높게 설정하면 오류가 발생합니다.
DPU 사용량 모니터링
쿼리가 완료되면 DPU 사용량을 볼 수 있습니다. Athena는 콘솔, API 작업 및 CloudWatch를 통해 DPU 사용 지표를 제공합니다.
콘솔에서 DPU 소비를 보는 방법
https://console.aws.amazon.com/athena/
에서 Athena 콘솔을 엽니다. -
탐색 창에서 쿼리 편집기를 선택합니다.
-
쿼리가 완료되면 쿼리 결과 컨테이너에서 소비된 DPU 수 값을 확인하세요.
-
과거 쿼리에 대한 DPU 소비를 보는 방법:
-
탐색 창에서 최근 쿼리를 선택하세요.
-
아직 표시되지 않은 경우 설정 아이콘을 선택하여 소비된 DPU 수 열을 테이블에 추가하세요.
-
완료된 각 쿼리에 대한 DPU 소비를 검토하세요.
-
-
선택적으로 쿼리 편집기에서 쿼리 통계 탭을 선택하고 소비된 DPU 수를 검토하세요.
API를 사용하여 DPU 소비를 검색하는 방법
-
다음 API 작업을 사용하여 프로그래밍 방식으로 DPU 소비를 검색하세요.
-
GetQueryExecution- 특정 쿼리에 대한 실행 세부 정보 반환 -
BatchGetQueryExecution- 여러 쿼리에 대한 실행 세부 정보 반환
-
-
AWS CLI 사용 예시:
aws athena get-query-execution \ --query-execution-id "123e4567-e89b-12d3-a456-426614174000"응답에서
Statistics객체에DpuCount필드가 포함됩니다.{ "QueryExecution": { "Statistics": { "DpuCount": 8 } } }
CloudWatch를 사용하여 DPU 사용량을 모니터링하는 방법
-
Athena는 용량 사용률 및 기타 성능 데이터를 모니터링하는 데 도움이 되는 쿼리 관련 지표를 CloudWatch에 게시합니다. 자세한 내용은 CloudWatch를 사용하여 Athena 쿼리 지표 모니터링를 참조하세요.