Amazon Aurora MySQL のパフォーマンスとスケーリングの管理 - Amazon Aurora

Amazon Aurora MySQL のパフォーマンスとスケーリングの管理

Aurora MySQL DB インスタンスのスケーリング

Aurora MySQL DB インスタンスは、インスタンススケーリングと読み取りスケーリングの 2 つの方法でスケールできます。読み取りスケーリングの詳細については、「読み取りのスケーリング」を参照してください。

DB クラスター内の各 DB インスタンスの DB インスタンスクラスを変更することで、Aurora MySQL DB クラスターをスケーリングできます。Aurora MySQL は、Aurora 用に最適化された複数の DB インスタンスクラスをサポートしています サイズが 40 TB より大きい Aurora クラスターには、db.t2 または db.t3 インスタンスクラスを使用しないでください。Aurora MySQL でサポートされている DB インスタンスクラスの詳細な仕様については、「DB インスタンスクラス」を参照してください。

Aurora MySQL DB インスタンスへの最大接続数

Aurora MySQL DB インスタンスへの許可されている接続の最大数は、DB インスタンスのインスタンスレベルパラメータグループの max_connections パラメータによって決まります。

次の表は、Aurora MySQL で使用できる DB インスタンスクラスごとの max_connections のデフォルト値です。Aurora MySQL DB インスタンスへの接続の最大数を増やすには、このインスタンスをメモリ量のより多い DB インスタンスクラスにスケールするか、インスタンスの DB パラメータグループの max_connections パラメータの値を最大 16,000 に設定できます。

インスタンスクラス max_connections のデフォルト値

db.t2.small

45

db.t2.medium

90

db.t3.small

45

db.t3.medium

90

db.t3.large

135

db.r3.large

1,000

db.r3.xlarge

2000

db.r3.2xlarge

3000

db.r3.4xlarge

4000

db.r3.8xlarge

5000

db.r4.large

1,000

db.r4.xlarge

2000

db.r4.2xlarge

3000

db.r4.4xlarge

4000

db.r4.8xlarge

5000

db.r4.16xlarge

6000

db.r5.large

1,000

db.r5.xlarge

2000

db.r5.2xlarge

3000

db.r5.4xlarge

4000

db.r5.8xlarge

5000

db.r5.12xlarge

6000

db.r5.16xlarge

6000

db.r5.24xlarge

7000

db.r6g.large 1000
db.r6g.xlarge 2000
db.r6g.2xlarge 3000
db.r6g.4xlarge 4000
db.r6g.8xlarge 5000
db.r6g.12xlarge 6000
db.r6g.16xlarge 6000

接続制限のデフォルトをカスタマイズする新しいパラメータグループを作成すると、DBInstanceClassMemory 値に基づく式を使用してデフォルトの接続制限が取得されます。前の表で示されているように、式は、メモリが段階的により大きな R3、R4、R5 インスタンスへと倍増すると 1000 ごとに増える接続最大数を、また T2 インスタンス、および T3 インスタンスの異なるメモリサイズでは 45 ごとに増える接続最大数を生成します。

DBInstanceClassMemory 値は、DB インスタンスで使用可能なメモリ容量 (バイト単位) を表します。これは Aurora の内部で計算される数値であり、直接照会することはできません。Aurora は、各 DB インスタンスで Aurora 管理コンポーネント用にいくつかのメモリを予約します。使用可能なメモリに対するこの調整は、関連付けられた DB インスタンスクラスのメモリ全体を式で使用した場合よりも低い max_connections 値になります。

Aurora MySQL と RDS for MySQL DB インスタンスには、異なる量のメモリオーバーヘッドがあります。したがって、同じインスタンスクラスを使用する RDS for MySQL DB インスタンスと Aurora MySQL インスタンスでは、max_connections 値が異なる場合があります。テーブルの値は Aurora MySQL DB インスタンスにのみ適用されます。

T2 インスタンス、および T3 インスタンスの接続制限がかなり低いのは、Aurora では、これらのインスタンスが本番稼働のワークロードのためではなく、開発やテストシナリオのみを目的としているためです。

デフォルトの接続制限は、バッファープールやクエリのキャッシュといった多くのメモリを消費する他の処理のデフォルト値を使用するシステムに合わせて調整されています。クラスターのこれらの他の設定を変更する場合は、DB インスタンスで使用可能なメモリの増減に応じて接続制限を調整することを検討してください。

Aurora MySQL 用の一時ストレージの制限

Aurora MySQL は、Aurora ストレージサブシステムにテーブルとインデックスを格納します。Aurora MySQL は、非永続的な一時ファイル用に、分離した一時ストレージを使用します。これには、クエリ処理中の大きなデータセットのソートや、インデックスの作成オペレーションなどの目的に使用するファイルが含まれます。ストレージの詳細については、「Amazon Aurora ストレージと信頼性」を参照してください。

次の表は、Aurora MySQL DB インスタンスクラス別に使用可能な一時ストレージの最大量を示しています。

DB インスタンスクラス 使用可能な一時ストレージの最大量 (GiB)
db.r6g.16xlarge 1280
db.r6g.12xlarge 960
db.r6g.8xlarge 640
db.r6g.4xlarge 320
db.r6g.2xlarge 160
db.r6g.xlarge 80
db.r6g.large 32
db.r5.24xlarge 1920
db.r5.16xlarge 1280
db.r5.12xlarge 960
db.r5.8xlarge 640
db.r5.4xlarge 320
db.r5.2xlarge 160
db.r5.xlarge 80
db.r5.large 32
db.r4.16xlarge 1280
db.r4.8xlarge 640
db.r4.4xlarge 320
db.r4.2xlarge 160
db.r4.xlarge 80
db.r4.large 32
db.t3.large 32
db.t3.medium 32
db.t3.small 32
db.t2.medium 32
db.t2.small 32
重要

これらの値は、各 DB インスタンスの理論上の最大空きストレージ量を表します。実際に使用可能なローカルストレージは、これより小さい場合があります。Aurora は、管理プロセスにローカルストレージを使用します。DB インスタンスでは、データをロードする前でもローカルストレージを使用します。特定の DB インスタンスで使用できる一時ストレージをモニタリングするには、 FreeLocalStorage CloudWatch メトリクスを使用できます。詳細については、Amazon Aurora のメトリクス を参照してください。現時点での空きストレージの量を確認できます。空きストレージの量を時間の経過に合わせてグラフ化することもできます。時間の経過に合わせて空きストレージをモニタリングすると、値が増加または減少しているかどうかを判断したり、最小値、最大値、または平均値を確認したりするのに役立ちます。