EMR Serverless의 애플리케이션 동작 이해
이 섹션에서는 작업 제출 동작, 조정을 위한 용량 구성 및 EMR Serverless에 대한 작업자 구성 설정을 설명합니다.
기본 애플리케이션 동작
자동 시작 - 기본적으로 애플리케이션은 작업 제출 시 자동 시작하도록 구성됩니다. 이 기능을 끌 수 있습니다.
자동 중지 - 기본적으로 애플리케이션은 15분의 유휴 상태일 때 자동 중지하도록 구성됩니다. 애플리케이션이 STOPPED
상태로 변경되면 사전 초기화된 용량이 모두 해제됩니다. 애플리케이션이 자동 중지되기 전 유휴 시간을 수정하거나 이 기능을 끌 수 있습니다.
최대 용량
애플리케이션이 스케일 업할 수 있는 최대 용량을 구성할 수 있습니다. CPU, 메모리(GB) 및 디스크(GB) 측면에서 최대 용량을 지정할 수 있습니다.
참고
작업자 수에 작업자 크기를 곱하여 지원되는 작업자 크기에 비례하도록 최대 용량을 구성하는 것이 좋습니다. 예를 들어 애플리케이션을 2개의 vCPU, 16GB의 메모리, 20GB의 디스크를 사용하는 50개의 작업자로 제한하려면 최대 용량을 100개의 vCPU, 800GB의 메모리, 1,000GB의 디스크로 설정합니다.
지원되는 작업자 구성
다음 표에는 EMR Serverless에 대해 지정할 수 있는 지원되는 작업자 구성과 크기가 나와 있습니다. 워크로드의 필요에 따라 드라이버 및 실행기에 대해 다양한 크기를 구성할 수 있습니다.
CPU | 메모리 | 기본 임시 스토리지 |
---|---|---|
1 vCPU |
최소 2GB, 최대 8GB, 1GB 단위로 증분 |
20GB~200GB |
2 vCPU |
최소 4GB, 최대 16GB, 1GB 단위로 증분 |
20GB~200GB |
4 vCPU |
최소 8GB, 최대 30GB, 1GB 단위로 증분 |
20GB~200GB |
8 vCPU |
최소 16GB, 최대 60GB, 4GB 단위로 증분 |
20GB~200GB |
16 vCPU |
최소 32GB, 최대 120GB, 8GB 단위로 증분 |
20GB~200GB |
CPU - 각 작업자는 1개, 2개, 4개, 8개 또는 16개의 vCPU를 보유할 수 있습니다.
메모리 - 각 작업자는 이전 표에 나열된 제한 내에서 메모리(GB로 지정됨)를 보유합니다. Spark 작업에는 메모리 오버헤드가 있습니다. 즉, 사용하는 메모리가 지정된 컨테이너 크기보다 큽니다. 이 오버헤드는 spark.driver.memoryOverhead
및 spark.executor.memoryOverhead
속성에서 지정됩니다. 오버헤드의 기본값은 컨테이너 메모리의 10%, 최소 384MB입니다. 작업자 크기를 선택하는 경우 이 오버헤드를 고려해야 합니다.
예를 들어 작업자 인스턴스에 대해 4개의 vCPU를 선택하고 사전 초기화된 스토리지 용량이 30GB인 경우 Spark 작업의 실행기 메모리로 약 27GB의 값을 설정해야 합니다. 그러면 사전 초기화된 용량의 사용률이 극대화됩니다. 사용 가능한 메모리는 27GB에 27GB의 10%(2.7GB)를 더하여 총 29.7GB입니다.
디스크 - 최소 크기가 20GB이고 최대 크기가 200GB인 임시 스토리지 디스크로 각 작업자를 구성할 수 있습니다. 작업자당 구성한 20GB를 초과하는 추가 스토리지에 대해서만 비용을 지불합니다.