Amazon RDS DB 인스턴스 스토리지 - Amazon Relational Database Service

Amazon RDS DB 인스턴스 스토리지

Amazon RDS for Db2, MariaDB, MySQL, PostgreSQL, Oracle, Microsoft SQL Server의 DB 인스턴스는 데이터베이스 및 로그 스토리지에 Amazon Elastic Block Store(Amazon EBS) 볼륨을 사용합니다.

경우에 따라서는 데이터베이스 워크로드가 프로비저닝한 IOPS의 100%를 달성할 수 없을 수 있습니다. 자세한 내용은 스토리지 성능에 영향을 끼치는 요인 단원을 참조하십시오.

인스턴스 스토리지 요금에 대한 자세한 내용은 Amazon RDS 요금을 참조하세요.

Amazon RDS 스토리지 유형

Amazon RDS에서는 범용 SSD(gp2 및 gp3라고도 함), 프로비저닝된 IOPS SSD(io1이라고도 함), 마그네틱(표준이라고도 함) 등 세 가지 스토리지 유형을 제공합니다. 이러한 3가지 유형은 성능 특성과 가격이 다르므로 데이터베이스 워크로드 요건에 따라 스토리지 성능과 비용을 조정할 수 있습니다. 최대 64테라바이트(TiB) 스토리지의 Db2, MySQL, MariaDB, Oracle 및 PostgreSQL RDS DB 인스턴스를 만들 수 있습니다. SQL Server RDS DB 인스턴스는 스토리지의 최대 16TiB까지 생성할 수 있습니다. 이 스토리지 크기 때문에 프로비저닝된 IOPS SSD 및 범용 SSD 스토리지 유형을 사용합니다. RDS for Db2는 gp3 범용 SSD 스토리지 유형과 프로비저닝된 IOPS SSD 스토리지 유형만 지원합니다.

다음은 세 가지 스토리지 유형에 대한 간략한 설명입니다.

  • 범용 SSD – 범용 SSD 볼륨은 중간 크기 DB 인스턴스에서 실행하는 광범위한 워크로드에 이상적인 비용 효율적 스토리지를 제공합니다. 범용 스토리지는 개발 및 테스트 환경에 가장 적합합니다.

    스토리지 크기 범위를 포함하여 범용 SSD 스토리지에 대한 자세한 내용은 범용 SSD 스토리지 단원을 참조하십시오.

  • 프로비저닝된 IOPS SSD – 프로비저닝된 IOPS 스토리지는 I/O 지연 시간이 짧고 I/O 처리량이 일정한 I/O 집약적 워크로드, 특히 데이터베이스 워크로드 요구 사항을 충족하도록 설계되었습니다. 프로비저닝된 IOPS 스토리지는 프로덕션 환경에 가장 적합합니다.

    스토리지 크기 범위를 포함하여 프로비저닝된 IOPS 스토리지에 대한 자세한 내용은 프로비저닝된 IOPS SSD 스토리지 단원을 참조하십시오.

  • 마그네틱 – Amazon RDS는 역호환성을 위해 마그네틱 스토리지도 지원합니다. 새 스토리지가 필요할 경우 범용 SSD 또는 프로비저닝된 IOPS SSD를 사용하는 것이 좋습니다. 마그네틱 스토리지에서는 DB 인스턴스에 허용되는 최대 스토리지 크기가 나머지 스토리지 유형의 크기보다 작습니다. 자세한 내용은 마그네틱 스토리지 단원을 참조하십시오.

범용 SSD 또는 프로비저닝된 IOPS SSD를 선택하면 선택한 엔진과 요청된 스토리지의 양에 따라 Amazon RDS가 다음 표와 같이 여러 볼륨에 걸쳐 자동으로 스트라이핑하여 성능을 향상시킵니다.

데이터베이스 엔진 Amazon RDS 스토리지 크기 프로비저닝된 볼륨 수
Db2 400GiB 미만 1
Db2 400~64,000GiB 사이 4
MariaDB, MySQL 및 PostgreSQL 400GiB 미만 1
MariaDB, MySQL 및 PostgreSQL 400~64,000GiB 사이 4
Oracle 200GiB 미만 1
Oracle 200~64,000GiB 사이 4
SQL Server 모두 1

범용 SSD 또는 프로비저닝된 IOPS SSD 볼륨을 수정하면 이는 상태 시퀀스를 거칩니다. 볼륨이 optimizing 상태에 있는 동안 볼륨 성능은 소스 및 대상 구성 사양 사이에 있습니다. 일시적인 볼륨 성능은 두 사양 중 가장 낮은 사양 이상입니다. 볼륨 수정에 대한 자세한 내용은 Amazon EC2 사용 설명서의 볼륨 수정 진행 상황 모니터링을 참조하세요.

중요

하나의 볼륨에서 네 개의 볼륨으로 전환되도록 인스턴스의 스토리지를 수정하거나 마그네틱 스토리지를 사용하여 인스턴스를 수정하면 Amazon RDS는 탄력적 볼륨 기능을 사용하지 않습니다. 대신 Amazon RDS는 새 볼륨을 프로비저닝하고 데이터를 이전 볼륨에서 새 볼륨으로 투명하게 이동합니다. 이 작업은 이전 볼륨과 새 볼륨 모두에서 상당한 양의 IOPS와 처리량을 소비합니다. 볼륨의 크기와 수정 중에 존재하는 데이터베이스 워크로드 양에 따라 이 작업은 많은 양의 IOPS를 소비하고, IO 지연 시간을 크게 늘리며, 완료하는 데 몇 시간이 걸릴 수 있으며 RDS 인스턴스는 Modifying 상태를 유지합니다.

범용 SSD 스토리지

범용 SSD 스토리지는 지연 시간에 민감하지 않은 대부분의 데이터베이스 워크로드에 적합한 비용 효율적인 스토리지를 제공합니다.

참고

범용 SSD 스토리지를 사용하는 DB 인스턴스는 프로비저닝된 IOPS 스토리지를 사용하는 인스턴스보다 읽기 복제본 생성, 다중 AZ 변환, DB 스냅샷 복원 후의 지연 시간이 훨씬 길어질 수 있습니다. 이러한 작업 후 지연 시간이 최소인 DB 인스턴스가 필요하다면 프로비저닝된 IOPS SSD 스토리지를 사용하는 것이 좋습니다.

Amazon RDS는 gp2 스토리지gp3 스토리지라는 두 가지 유형의 범용 SSD 스토리지를 제공합니다.

gp2 스토리지

애플리케이션에 뛰어난 스토리지 성능이 필요없다면 범용 SSD gp2 스토리지를 사용하는 것이 좋습니다. gp2 스토리지의 기본 I/O 성능은 1GiB당 3IOPS이며, 최소 100IOPS입니다. 이 관계는 볼륨이 클수록 성능이 높아진다는 의미입니다. 예를 들어, 100GiB 볼륨 하나에 대한 기준 성능은 300IOPS입니다. 1,000GiB 볼륨 하나에 대한 기준 성능은 3,000IOPS입니다. gp2 볼륨(5,334GiB 이상)에 대한 최대 기준 성능은 16,000IOPS입니다.

1,000GiB보다 작은 크기의 개별 gp2 볼륨은 늘어난 시간에 대해 3,000IOPS로 확장될 수도 있습니다. 버스트 성능은 볼륨 I/O 크레딧 밸런스에 의해 결정됩니다. 볼륨 I/O 크레딧에 대한 자세한 내용은 Amazon EC2 사용 설명서I/O 크레딧 및 버스트 성능을 참조하세요. 기준 성능과 I/O 크레딧 밸런스가 성능에 미치는 영향에 대한 자세한 내용은 AWS 데이터베이스 블로그의 Understanding burst vs. baseline performance with Amazon RDS and gp2(Amazon RDS 및 gp2를 이용할 때의 버스트와 기존 성능 차이 이해하기)를 참조하세요.

대부분의 워크로드에서는 버스트 밸런스가 고갈되지 않습니다. 하지만, 일부 워크로드가 3,000IOPS 버스트 스토리지 크레딧 밸런스를 소비할 수 있으므로 워크로드의 요건에 맞게 스토리지 용량을 계획해야 합니다.

1,000GiB보다 큰 gp2 볼륨의 경우 기준 성능이 버스트 성능보다 좋습니다. 이러한 볼륨의 경우 기준 성능이 3,000 IOPS 버스트 성능보다 우수하기 때문에 버스트가 무관합니다. 그러나 특정 엔진 및 크기의 DB 인스턴스는 스토리지가 네 개의 볼륨에 걸쳐 스트라이핑되어 기준 처리량의 4배, 단일 볼륨 버스트 IOPS의 4배를 제공합니다. 다음 표에는 임계값을 비롯한 Amazon RDS DB 엔진의 gp2 볼륨 스토리지 성능이 나와 있습니다.

DB 엔진 RDS 스토리지 크기 기준 IOPS 범위 기준 처리량 범위 버스트 IOPS
MariaDB, MySQL 및 PostgreSQL 20~399GiB 사이 100~1,197IOPS 128~250MiB/s 3,000
MariaDB, MySQL 및 PostgreSQL 400~1,335GiB 사이 1,200~4,005IOPS 500~1,000MiB/s 12,000
MariaDB, MySQL 및 PostgreSQL 1,336~3,999GiB 사이 4,008~11,997IOPS 1,000MiB/s 12,000
MariaDB, MySQL 및 PostgreSQL 4,000~65,536GiB 사이 12,000~64,000IOPS 1,000MiB/s 해당 사항 없음*
Oracle 20~199GiB 사이 100~597IOPS 128~250MiB/s 3,000
Oracle 200~1,335GiB 사이 600~4,005IOPS 500~1,000MiB/s 12,000
Oracle 1,336~3,999GiB 사이 4,008~11,997IOPS 1,000MiB/s 12,000
Oracle 4,000~65,536GiB 사이 12,000~64,000IOPS 1,000MiB/s 해당 사항 없음*
SQL Server 20~333GiB 사이 100~999IOPS 128~250MiB/s 3,000
SQL Server 334~999GiB 사이 1,002~2,997IOPS 250MiB/s 3,000
SQL Server 1,000~16,384GiB 사이 3,000–16,000 IOPS 250MiB/s 해당 사항 없음*

* 볼륨의 기준 성능이 최대 버스트 성능을 초과합니다.

gp3 스토리지

범용 SSD gp3 스토리지 볼륨을 사용하면 스토리지 용량에 관계없이 스토리지 성능을 사용자 지정할 수 있습니다. 스토리지 성능은 초당 I/O 작업(IOPS)과 스토리지 볼륨에서 읽기 및 쓰기 작업을 수행하는 속도(스토리지 처리량)의 조합입니다. gp3 스토리지 볼륨에서 Amazon RDS는 3,000IOPS 및 125MiB/s의 기본 스토리지 성능을 제공합니다.

RDS for SQL Server를 제외한 모든 RDS DB 엔진에서, gp3 볼륨의 스토리지 크기가 특정 임계값에 도달하면 기본 스토리지 성능이 12,000IOPS 및 500MiB/s로 증가합니다. 스토리지가 하나가 아닌 네 개의 볼륨을 사용하는 볼륨 스트라이핑 덕분입니다. RDS for SQL Server는 볼륨 스트라이핑을 지원하지 않으며, 따라서 임계값이 없습니다.

참고

범용 SSD gp3 스토리지는 단일 AZ 및 다중 AZ DB 인스턴스와 다중 AZ DB 클러스터에서 지원됩니다. 자세한 내용은 다중 AZ 배포 구성 및 관리다중 AZ DB 클러스터 배포 단원을 참조하세요.

다음 표에는 임계값을 비롯한 Amazon RDS DB 엔진의 gp3 볼륨 스토리지 성능이 나와 있습니다.

DB 엔진 스토리지 크기 기본 스토리지 성능 프로비저닝된 IOPS 범위 프로비저닝된 스토리지 처리량 범위
Db2 400GiB 미만 3,000IOPS/125MiB/s 3,000–64,000 IOPS 125~4,000MiB/s
Db2 400GiB 이상 12,000IOPS/500MiB/s 12,000–64,000 IOPS 500~4,000MiB/s
MariaDB, MySQL 및 PostgreSQL 400GiB 미만 3,000IOPS/125MiB/s N/A N/A
MariaDB, MySQL 및 PostgreSQL 400GiB 이상 12,000IOPS/500MiB/s 12,000–64,000 IOPS 500~4,000MiB/s
Oracle 200GiB 미만 3,000IOPS/125MiB/s N/A N/A
Oracle 200GiB 이상 12,000IOPS/500MiB/s 12,000–64,000 IOPS 500~4,000MiB/s
SQL Server 20GiB–16TiB 3,000IOPS/125MiB/s 3,000–16,000 IOPS 125~1,000MiB/s

RDS for SQL Server를 제외한 모든 DB 엔진에서는, 스토리지 크기가 임계값 이상일 때 추가 IOPS 및 스토리지 처리량을 프로비저닝할 수 있습니다. RDS for SQL Server의 경우 사용 가능한 스토리지 크기에 맞게 추가 IOPS 및 스토리지 처리량을 프로비저닝할 수 있습니다. 모든 DB 엔진은 추가로 프로비저닝된 스토리지 성능에 대해서만 비용을 지불하면 됩니다. 자세한 내용은 Amazon RDS 요금을 참조하십시오.

추가된 프로비저닝된 IOPS와 스토리지 처리량은 스토리지 크기와 무관하지만 서로 관련이 있습니다. MariaDB 및 MySQL의 IOPS를 32,000 이상으로 올리면 스토리지 처리량 값이 500MiBPS에서 자동으로 증가합니다. 예를 들어 RDS for MySQL에서 IOPS를 40,000으로 설정하면 스토리지 처리량은 625MiBPS 이상이어야 합니다. Oracle, PostgreSQL 및 SQL Server DB 인스턴스에서는 자동 증가가 진행되지 않습니다.

다중 AZ DB 클러스터의 경우 Amazon RDS는 프로비저닝한 IOPS를 기반으로 처리량 값을 자동으로 설정합니다. 처리량 값은 수정할 수 없습니다.

RDS의 gp3 볼륨에 대한 스토리지 성능 값에는 다음과 같은 제약이 적용됩니다.

  • 지원되는 모든 DB 엔진의 스토리지 처리량 대 IOPS 최대 비율은 0.25입니다.

  • RDS for SQL Server에서 IOPS 대 할당된 스토리지(GiB)의 최소 비율은 0.5입니다. 지원되는 다른 DB 엔진에는 최소 비율이 없습니다.

  • 지원되는 모든 DB 엔진의 IOPS 대 스토리지 처리량 최대 비율은 500입니다.

  • 스토리지 자동 크기 조정을 사용하는 경우 IOPS와 최대 스토리지 임계값(GiB) 간에 동일한 비율이 적용됩니다.

    스토리지 자동 크기 조정에 대한 자세한 내용은 Amazon RDS 스토리지 Autoscaling을 사용한 용량 자동 관리 섹션을 참조하세요.

프로비저닝된 IOPS SSD 스토리지

빠르고 일관된 I/O 성능이 필요한 프로덕션 애플리케이션의 경우에는 프로비저닝된 IOPS 스토리지를 사용하는 것이 좋습니다. 프로비저닝된 IOPS 스토리지는 성능이 예측 가능하며, 일관적으로 지연 시간이 짧은 스토리지 유형입니다. 프로비저닝된 IOPS 스토리지는 일관적인 성능이 필요한 온라인 트랜잭션 프로세싱(OLTP) 워크로드에 이상적입니다. 프로비저닝된 IOPS는 이런 워크로드의 성능 튜닝에도 효과적입니다.

DB 인스턴스를 생성할 때는 IOPS 속도와 볼륨 크기를 지정합니다. Amazon RDS는 사용자가 변경할 때까지 DB 인스턴스에 대해 해당 IOPS 속도를 제공합니다.

io1 스토리지

I/O 집약적 워크로드의 경우 프로비저닝된 IOPS SSD io1 스토리지를 사용하여 초당 최대 256,000개의 I/O 작업 수(IOPS)를 달성할 수 있습니다. io1 볼륨의 처리량은 볼륨당 프로비저닝된 IOPS의 양과 실행 중인 IO 작업의 크기에 따라 달라집니다. io1 볼륨의 처리량에 대한 자세한 내용은 Amazon EC2 사용 설명서프로비저닝된 IOPS 볼륨을 참조하세요.

다음 표는 각 데이터베이스 엔진 및 스토리지 크기 범위에 따른 프로비저닝된 IOPS 범위 및 최대 처리량을 나타냅니다.

데이터베이스 엔진 스토리지 크기 범위 프로비저닝된 IOPS 범위 최대 처리량
Db2 100~64,000GiB 사이 1,000–256,000 IOPS 4,000MiB/s
MariaDB, MySQL 및 PostgreSQL 100~399GiB 사이 1,000~19,950IOPS 500MiB/s
MariaDB, MySQL 및 PostgreSQL 400~65,536GiB 사이 1,000–256,000 IOPS 4,000MiB/s
Oracle 100~199GiB 사이 1,000~9,950IOPS 500MiB/s
Oracle 200~65,536GiB 사이 1,000–256,000 IOPS 4,000MiB/s
SQL Server 20~16,384GiB 사이 1,000–64,000 IOPS 1,000MiB/s
참고

SQL Server의 경우 m5*, m6i, r5*, r6i, z1d 인스턴스 유형에 있는 Nitro 기반 인스턴스에서만 최대 64,000 IOPS가 보장됩니다. 다른 인스턴스 유형은 최대 32,000 IOPS의 성능을 보장합니다.

Oracle의 경우 r5b 인스턴스 유형에서만 최대 256,000 IOPS를 프로비저닝할 수 있습니다.

IOPS 및 스토리지 크기 범위에는 다음과 같은 제약이 있습니다.

  • 할당된 스토리지에 대한 IOPS 비율(GiB)은 RDS for SQL Server에서 1~50, 기타 RDS DB 엔진에서 0.5~50이어야 합니다.

  • 스토리지 자동 크기 조정을 사용하는 경우 IOPS와 최대 스토리지 임계값(GiB) 간에 동일한 비율이 적용됩니다.

    스토리지 자동 크기 조정에 대한 자세한 내용은 Amazon RDS 스토리지 Autoscaling을 사용한 용량 자동 관리 섹션을 참조하세요.

프로비저닝된 IOPS 스토리지를 다중 AZ 배포 또는 읽기 전용 복제본과 결합합니다.

프로덕션 OLTP 사용 사례에서 내결함성을 높이는 것이 목적일 때는 다중 AZ 배포를, 빠르고 예측 가능한 성능이 목적일 때는 프로비저닝된 IOPS 스토리지를 사용하는 것이 바람직합니다.

또한 MySQL, MariaDB 또는 PostgreSQL에 대한 읽기 전용 복제본과 함께 프로비저닝된 IOPS SSD 스토리지를 사용할 수 있습니다. 읽기 전용 복제본의 스토리지 유형은 기본 DB 인스턴스의 스토리지 유형과 독립되어 있습니다. 예를 들어, 프로비저닝된 IOPS SSD 스토리지를 사용하는 기본 DB 인스턴스에 읽기 전용 복제본의 범용 SSD를 사용하여 비용을 절감할 수 있습니다. 그러나 이 경우의 읽기 전용 복제본의 성능은 기본 DB 인스턴스와 읽기 전용 복제본 모두 프로비저닝된 IOPS SSD 스토리지를 사용하는 구성의 성능과 차이를 보일 수 있습니다.

프로비저닝된 IOPS 스토리지 비용

프로비저닝된 IOPS 스토리지는 한 달간 사용 여부에 상관없이 프로비저닝된 리소스에 대한 요금이 청구됩니다.

요금에 대한 자세한 내용은 Amazon RDS 요금을 참조하십시오.

Amazon RDS 프로비저닝된 IOPS SSD 스토리지에서 최상의 성능 얻기

워크로드가 I/O 제한되면 프로비저닝된 IOPS SSD 스토리지의 사용에 따라 시스템이 동시에 처리할 수 있는 I/O 요청 수가 증가합니다. 이처럼 동시 처리 가능한 수가 증가하면 대기열의 I/O 요청 시간이 줄어들어 지연 시간이 감소하는 효과가 있습니다. 지연 시간 감소는 데이터베이스 커밋 속도의 향상으로 이어져 응답 시간이 개선되고 데이터베이스 처리 속도가 빨라집니다.

프로비저닝된 IOPS SSD 스토리지는 IOPS를 지정하여 I/O 용량을 예비할 수 있습니다. 하지만, 다른 시스템 용량 속성과 마찬가지로 재하 시 최대 처리 속도는 처음 사용된 리소스에 따라 제약을 받게 됩니다. 이러한 리소스로는 네트워크 대역폭, CPU 메모리 또는 데이터베이스 내부 리소스가 있습니다.

프로비저닝된 IOPS 볼륨을 최대한 활용할 수 있는 자세한 내용은 Amazon EBS 볼륨 성능을 참조하십시오.

솔리드 스테이트 드라이브(SSD) 스토리지 유형 비교

다음 표는 Amazon RDS에서 사용하는 SSD 스토리지 볼륨의 사용 사례 및 성능 특성을 보여줍니다.

기능 프로비저닝된 IOPS(io1) 범용(gp3) 범용(gp2)
설명

일관된 스토리지 성능 (IOPS, 처리량, 지연 시간)

지연 시간에 민감한 트랜잭션 워크로드용으로 설계됨

스토리지, IOPS 및 처리량을 독립적으로 프로비저닝할 수 있는 유연성

다양한 트랜잭션 워크로드를 위한 가성비

버스트 가능한 IOPS 제공

다양한 트랜잭션 워크로드를 위한 가성비

사용 사례

최대 256,000 IOPS의 지속적인 IOPS 성능을 요구하는 트랜잭션 워크로드

개발/테스트 환경의 중간 규모 관계형 데이터베이스에서 실행되는 광범위한 워크로드

개발/테스트 환경의 중간 규모 관계형 데이터베이스에서 실행되는 광범위한 워크로드

지연 시간

한 자리 밀리초, 99.9% 시간 동안 일관되게 제공

한 자리 밀리초, 99% 시간 동안 일관되게 제공

한 자리 밀리초, 99% 시간 동안 일관되게 제공

볼륨 크기

100GiB—64TiB(RDS for SQL Server에서는 16TiB)

20GiB—64TiB(RDS for SQL Server에서는 16TiB)

20GiB—64TiB(RDS for SQL Server에서는 16TiB)

최대 IOPS 256,000(RDS for SQL Server에서는 64,000) 64,000(RDS for SQL Server에서는 16,000)

64,000(RDS for SQL Server에서는 16,000)

참고

gp2 스토리지에서 바로 IOPS를 프로비저닝할 수는 없습니다. IOPS는 할당된 스토리지 크기에 따라 달라집니다.

최대 처리량 프로비저닝된 IOPS를 기준으로 최대 4,000MB/s까지 확장 최대 4,000MB/s의 추가 처리량 프로비저닝(RDS for SQL Server의 경우 1,000MB/s) 1000MB/s(RDS for SQL Server에서는 250 MB/s)
AWS CLI 및 RDS API 이름 io1 gp3 gp2

마그네틱 스토리지

또한 Amazon RDS는 이전 버전과의 호환성을 위해 마그네틱 스토리지를 지원합니다. 새 스토리지가 필요할 경우 범용 SSD 또는 프로비저닝된 IOPS SSD를 사용하는 것이 좋습니다. 다음은 마그네틱 스토로지의 몇 가지 제한입니다.

  • SQL 서버 데이터베이스 엔진을 사용할 경우 스토리지를 확장할 수 없습니다.

  • 스토리지 자동 조정을 지원하지 않습니다.

  • 탄력적 볼륨을 지원하지 않습니다.

  • 최대 3TiB 크기로 제한됩니다.

  • 최대 1,000IOPS로 제한됩니다.

전용 로그 볼륨(DLV)

Amazon RDS 콘솔, AWS CLI 또는 Amazon RDS API를 사용하여 프로비저닝된 IOPS(PIOPS) 스토리지를 사용하는 DB 인스턴스 전용 로그 볼륨(DLV)을 사용할 수 있습니다. DLV는 PostgreSQL 데이터베이스 트랜잭션 로그 및 MySQL/MariaDB의 재실행 로그와 binlog를 데이터베이스 표가 들어 있는 볼륨과 분리된 스토리지 볼륨으로 옮깁니다. DLV는 트랜잭션 쓰기 로깅을 보다 효율적이고 일관되게 만듭니다. DLV는 할당된 스토리지가 크고 초당 I/O(IOPS) 요구 사항이 높거나 지연 시간에 민감한 워크로드가 있는 데이터베이스에 적합합니다.

DLV는 PIOPS 스토리지에 지원되며 1,000GiB의 고정 크기와 프로비저닝된 IOPS 3,000으로 생성됩니다.

Amazon RDS는 다음 버전의 경우 모든 리전에서 DLV를 지원합니다.

  • MariaDB 10.6.7 이상의 10 버전

  • MySQL 8.0.28 이상의 8 버전

  • PostgreSQL 13.10 이상의 13버전, 14.7 이상의 14 버전, 15.2 이상의 15 버전

RDS는 다중 AZ 배포와 함께 DLV를 지원합니다. 다중 AZ 인스턴스를 수정하거나 생성하면 기본 인스턴스와 보조 인스턴스 모두에 대해 DLV가 생성됩니다.

RDS는 읽기 전용 복제본이 있는 DLV를 지원합니다. 기본 DB 인스턴스에 DLV가 활성화되어 있는 경우 DLV를 활성화한 후 생성되는 모든 읽기 전용 복제본에도 DLV가 포함됩니다. DLV로 전환하기 전에 생성된 읽기 전용 복제본에는 명시적으로 수정하지 않는 한 DLV가 활성화되지 않습니다. DLV가 활성화되기 전에 기본 인스턴스에 연결된 모든 읽기 전용 복제본도 DLV를 사용하도록 수동으로 수정하는 것이 좋습니다.

DB 인스턴스의 DLV 설정을 수정하면 DB 인스턴스를 재부팅해야 합니다.

DLV 활성화에 대한 자세한 내용은 전용 로그 볼륨(DLV) 사용 섹션을 참조하세요.

스토리지 성능 모니터링

Amazon RDS는 DB 인스턴스의 성능을 측정할 수 있는 몇 가지 측정치가 있습니다. Amazon RDS 관리 콘솔의 인스턴스에 대한 요약 페이지에서 지표를 볼 수 있습니다. 또한 Amazon CloudWatch를 사용하여 이 측정치를 모니터링할 수도 있습니다. 자세한 내용은 Amazon RDS 콘솔에서 지표 보기 섹션을 참조하세요. 향상된 모니터링은 더 자세한 I/O 측정치를 제공합니다. 자세한 내용은 Enhanced Monitoring을 사용하여 OS 지표 모니터링 섹션을 참조하세요.

다음 지표는 DB 인스턴스용 스토리지를 모니터링하는 데 유용합니다.

  • IOPS – 완료한 초당 I/O 작업 횟수입니다. 이 지표는 지정된 시간 간격 동안의 평균 IOPS로 보고됩니다. Amazon RDS는 1분의 간격을 두고 읽기 IOPS와 쓰기 IOPS를 따로 보고합니다. 총 IOPS는 읽기 IOPS와 쓰기 IOPS의 합계입니다. 일반적인 IOPS 값 범위는 초당 0에서 수만에 이릅니다.

  • Latency(지연 시간) – I/O 요청을 제출하여 완료될 때까지 걸리는 시간입니다. 이 지표는 지정된 시간 간격 동안의 평균 대기 시간으로 보고됩니다. Amazon RDS는 1분의 간격을 두고 읽기 대기 시간과 쓰기 대기 시간을 따로 보고합니다. 일반적인 대기 시간 값은 밀리초(ms) 단위입니다.

  • Throughput(처리량) – 디스크와 송/수신하는 초당 바이트 수입니다. 이 지표는 지정된 시간 간격 동안의 평균 처리량으로 보고됩니다. Amazon RDS는 1분 간격을 두고 초당 메가바이트(MB/s) 단위의 읽기 처리량과 쓰기 처리량을 따로 보고합니다. 일반적인 처리량 값 범위는 0에서 I/O 채널의 최대 대역폭까지입니다.

  • Queue Depth(대기열 깊이) – 대기열에서 처리를 기다리는 I/O 요청 수입니다. 애플리케이션에서 I/O 요청을 제출하였지만 디바이스가 다른 I/O 요청을 처리하고 있을 때는 전송되지 않는 경우가 있습니다. 이때 대기열에서 기다리게 되는데 이 대기 시간이 지연 시간과 서비스 시간(측정치로 사용하지 않음)을 구성합니다. 이 지표는 지정된 시간 간격 동안의 평균 대기열 깊이로 보고됩니다. Amazon RDS는 1분 간격으로 대기열 깊이를 보고합니다. 일반적인 대기열 깊이 값은 0에서 수백에 이릅니다.

측정된 IOPS 값은 개별 I/O 작업 크기와 독립적입니다. 따라서 I/O 성능을 측정할 경우, 단순한 I/O 연산 수가 아닌 인스턴스 처리량에 주목해야 합니다.

스토리지 성능에 영향을 끼치는 요인

시스템 활동, 데이터베이스 워크로드 및 DB 인스턴스 클래스가 스토리지 성능에 영향을 미칠 수 있습니다.

시스템 활동

다음 시스템 관련 활동은 I/O 용량을 사용하기 때문에 진행되는 동안에는 DB 인스턴스 성능이 떨어질 수 있습니다.

  • 다중 AZ 대기 생성

  • 읽기 전용 복제본 생성

  • 스토리지 유형 변경

데이터베이스 워크로드

경우에 따라 데이터베이스 또는 애플리케이션 설계에 따라 동시 처리 가능한 연산 문제, 잠금 또는 그 밖에 데이터베이스 논쟁을 불러일으킬 수 있습니다. 이런 경우, 프로비저닝된 대역폭 모두를 직접 사용하지 못할 수 있습니다. 또한, 다음과 같은 워크로드 관련 상황이 발생할 수 있습니다.

  • 기본 인스턴스 유형의 제한된 처리량에 도달했습니다.

  • 애플리케이션이 충분한 I/O 작업을 실행하지 않기 때문에 대기열 깊이는 지속적으로 1 미만입니다.

  • 몇 가지 I/O 용량을 사용하지 않아도 데이터베이스의 쿼리 문제가 있을 수 있습니다.

한도에 도달하거나 근접한 시스템 리소스가 없는 상태에서 스레드를 추가하더라도 데이터베이스 트랜잭션 속도가 높아지지 않는 경우도 있습니다. 이 경우 데이터베이스에서 발생하는 경합이 병목 지점일 가능성이 큽니다. 가장 공통적인 형식은 행 잠금과 인덱스 페이지 잠금이지만 여러 다른 방법도 있습니다. 이런 경우에는 데이터베이스 성능 튜닝 전문가에게 조언을 구하세요.

DB 인스턴스 클래스

Amazon RDS DB 인스턴스의 최대 성능을 얻으려면 자체 스토리지 유형을 지원하는 충분한 대역폭이 있는 현재 작업 인스턴스 유형을 선택합니다. 예를 들어, 10Gb 네트워크에 연결된 Amazon EBS에 최적화된 인스턴스를 선택해야 합니다.

중요

사용 중인 인스턴스 클래스에 따라, IOPS 성능이 RDS를 사용하여 프로비저닝할 수 있는 최대 성능보다 낮을 수 있습니다. DB 인스턴스 클래스의 IOPS 성능에 대한 자세한 내용은 Amazon EC2 사용 설명서Amazon EBS 최적화 인스턴스를 참조하세요. DB 인스턴스에 대해 프로비저닝된 IOPS 값을 설정하기 전에 인스턴스 클래스의 최대 IOPS를 결정하는 것이 좋습니다.

최상의 성능을 얻으려면 최신 세대 인스턴스를 사용할 것을 권장합니다. 이전 세대 DB 인스턴스는 최대 스토리지 한도가 더 낮을 수 있습니다.

일부 구형 32비트 파일 시스템은 스토리지 용량이 더 낮을 수 있습니다. DB 인스턴스의 스토리지 용량을 확인하려면 describe-valid-db-instance-modifications AWS CLI 명령을 사용합니다.

다음 목록은 각 데이터베이스 인스턴스에 대해 대부분의 DB 인스턴스 클래스가 확장할 수 있는 최대 스토리지를 보여줍니다.

  • Db2 – 64TiB

  • MariaDB – 64 TiB

  • Microsoft SQL Server – 16 TiB

  • MySQL – 64 TiB

  • Oracle – 64 TiB

  • PostgreSQL – 64 TiB

다음 테이블에는 최대 스토리지(TiB)에 대한 몇 가지 예외가 나와 있습니다. 모든 RDS for Microsoft SQL Server DB 인스턴스에는 최대 16TiB의 스토리지가 있으므로 SQL Server에 대한 항목이 없습니다.

인스턴스 클래스 Db2 MariaDB MySQL Oracle PostgreSQL
db.m3 – 표준 인스턴스 클래스
db.m3.2xlarge N/A N/A 6 N/A 6
db.m3.xlarge N/A N/A 6 N/A 6
db.m3.large N/A N/A 6 N/A 6
db.m3.medium N/A N/A 32 N/A 32
db.t4g – 버스트 가능 성능 인스턴스 클래스
db.t4g.medium N/A 16 16 N/A 32
db.t4g.small N/A 16 16 N/A 16
db.t4g.micro N/A 6 6 N/A 6
db.t3 – 버스트 가능 성능 인스턴스 클래스
db.t3.medium 32 16 16 32 32
db.t3.small 32 16 16 32 16
db.t3.micro N/A 6 6 32 6
db.t2 – 버스트 가능 성능 인스턴스 클래스
db.t2.medium N/A 32 32 N/A 32
db.t2.small N/A 16 16 N/A 16
db.t2.micro N/A 6 6 N/A 6

지원되는 모든 인스턴스 클래스에 대한 자세한 내용은 이전 세대 DB 인스턴스를 참조하세요.