제 PostgreSQL DB 인스턴스의 Amazon Relational Database Service(RDS)의 버스트 밸런스가 낮습니다. 이 문제가 발생하지 않게 방지하고 싶습니다.
해결 방법
Amazon RDS DB 인스턴스는 스토리지로 Amazon Elastic Block Store(Amazon EBS) 볼륨을 사용합니다.
프로비저닝된 IOPS SSD(io1) 볼륨은 일관된 IOPS 성능을 제공합니다. 범용 SSD(gp2) 볼륨은 DB 인스턴스에 할당된 스토리지 크기에 따라 다릅니다. gp2 볼륨의 IOPS는 볼륨 크기(GiB 단위)에 3을 곱한 값이며, 최소 100IOPS(33.33GiB 이하에서), 최대 16,000IOPS(5,334GiB 이상에서)입니다. 예를 들어 볼륨이 100GiB인 경우, 볼륨의 기준 성능은 300IOPS입니다.
크기와 관계없이 gp2 볼륨의 초기 I/O 크레딧 밸런스는 540만 I/O 크레딧입니다. 이 정도면 최소 30분간 3,000IOPS의 최대 버스트 성능을 유지하는 데 충분합니다. 볼륨에 기준 성능 I/O 수준 이상이 필요한 경우, 해당 볼륨은 I/O 크레딧 밸런스를 끌어와 필요한 수준의 성능을 냅니다.
주어진 볼륨의 버스트 밸런스를 소진하면 해당 볼륨은 기준 성능 값으로 돌아갑니다. 버스트 밸런스가 소진되면 사용자에게 추가 요금을 부과하지 않습니다. 볼륨은 IOPS 사용량이 기준선 미만이라면 기준선을 유지합니다. 그 다음부터 버스트 밸런스를 다시 채우기 시작합니다.
크기가 1TiB를 넘는 모든 gp2 볼륨은 기준 성능이 버스트 성능 3,000IOPS를 초과합니다. 그러한 볼륨의 경우, 기준 성능이 3,000IOPS 버스트 성능보다 뛰어나기 때문에 버스트는 중요하지 않습니다.
단, 요청한 스토리지 양에 따라 Amazon RDS가 여러 Amazon EBS 볼륨에 자동으로 데이터를 나누어 저장해 성능을 강화합니다. 따라서 할당된 총 스토리지 1TiB가 여러 개의 작은 볼륨에 나뉠 수 있고, 여기에서 각 볼륨의 버스트 성능은 3,000IOPS가 됩니다.
RDS 인스턴스 하나의 볼륨 수를 파악하려면 향상된 모니터링을 켜고 물리적 디바이스(Physical Devices) 콘솔에서 볼륨 수를 확인하세요.
낮은 버스트 밸런스 값 문제 해결
낮은 버스트 밸런스 문제를 해결하려면 다음과 같은 단계를 따릅니다.
- Amazon RDS에 대한 성능 인사이트를 활성화하여 SQL 쿼리를 최적화해야 하는지 확인합니다.
경고: 필요한 경우, 조직 데이터베이스 관리자와 상의하세요. 성능 인사이트와 함께 사용할 수 있는 데이터베이스 엔진에 관해 알아보려면 Amazon RDS에서 성능 인사이트로 DB 로드 모니터링을 참조하세요.
- 워크로드가 예상한 대로 실행되거나, SQL 쿼리를 튜닝해도 문제가 해결되지 않는 경우, 더 많은 IOPS 용량을 달성하기 위해 DB 인스턴스 스토리지 크기를 늘려야 하는지 판단해야 합니다. Amazon RDS는 일단 스토리지 양이 할당된 뒤 이를 줄이는 작업을 허용하지 않습니다. 스토리지 용량을 늘리려면 다른 모든 튜닝 옵션부터 확인해야 합니다.
- 성능을 개선하려면 스토리지 클래스를 스케일 업하거나 스토리지 유형을 gp2에서 io1로 변경한 다음 필요한 IOPS를 할당합니다.
할당하고자 하는 스토리지 양을 지정합니다. 그런 다음, 원하는 전용 IOPS 양을 지정합니다.
- DB 인스턴스에서 IOPS나 처리량이 제한되는 것이 확인되면, 인스턴스 클래스를 스케일 업하여 처리량이나 IOPS 용량을 높입니다.
참고: 요구 사항에 가장 적합한 인스턴스 클래스를 검토하고 선택해야 합니다. io1 볼륨은 gp2에 비해 비싸기 때문입니다.
마이크로버스트를 위한 향상된 모델링 문제 해결
EBS 볼륨에서의 마이크로버스트에 관한 자세한 내용은 Amazon RDS 인스턴스의 IOPS 병목 현상으로 인해 발생하는 Amazon EBS 볼륨의 대기 시간 문제를 해결하려면 어떻게 해야 합니까?를 참조하고 마이크로버스트 섹션을 검토하세요.
관련 정보
I/O 크레딧과 버스트 성능
Amazon RDS와 GP2의 버스트 성능과 기준 성능 비교 이해
Amazon RDS 인스턴스의 IOPS 병목 현상으로 인해 발생하는 Amazon EBS 볼륨의 대기 시간 문제를 해결하려면 어떻게 해야 하나요?