Amazonrds-db-storages
Amazon RDS-DBストレージ
RDSインスタンスは、データとログの保存にAmazon Block Storage(EBS)ボリュームを使用します。 これらのストレージタイプは、必要に応じて動的にサイズを増やすことができます。 ただし、これらのストレージタイプに関連するデータベースワークロードと価格に基づいて、ストレージのニーズをカスタマイズできます。 以下は、ストレージタイプを決定する際に分析する要因です。
- IOPS – 1秒あたりに実行される入出力操作の数を表します。 IOPS値を見つけるために、読み取り操作と書き込み操作の両方が合計されます。 AWSは、1分ごとにIOPS値のレポートを作成します。 1秒あたり0から数万の値を持つことができます。
- 遅延 – I/Oリクエストの開始からI/Oリクエストの完了までに経過したミリ秒数です。 遅延が大きいと、パフォーマンスが低下します。
- スループット – 1秒ごとにディスクとの間で転送されるバイト数。 AWSは、1分間隔ごとに読み取りおよび書き込みスループットを個別に報告します。
- キューの深さ –ディスクに到達する前にキューで待機しているI/O要求の数です。 AWSは、1分間隔ごとにキューの深さを報告します。 また、キューの深さが高いほど、ストレージのパフォーマンスが低下していることを示します。
上記の考慮事項に基づいて、awsストレージタイプは次のとおりです。
汎用SSD
これは、ほとんどの一般的なデータベースタスクで役立つ費用対効果の高いストレージです。 1 TiBボリュームに対して3000 IOPSを提供できます。 3.34 TiBサイズでは、パフォーマンスは最大10000 IOPSに達する可能性があります。
I/Oクレジット
ストレージの各GBでは、ベースラインパフォーマンスとして3 IOPが許可されます。 つまり、100 GBボリュームは300 IOPを提供できます。 ただし、さらにIOPSが必要な場合があります。 このようなシナリオでは、ストレージの初期化時に提供されるIOクレジット残高を使用する必要があります。 これは540万IOクレジットであり、バースト可能なパフォーマンスが必要な場合に使用できます。 一方、ベースラインパフォーマンスよりも少ないIOPSを使用すると、バースト可能なパフォーマンスの将来の要件で使用できるクレジットが蓄積されます。
以下は、バースト期間とクレジットバランスの関係を示す式です。
Burst Duration = (credit Balance)/[(burst IOPS) – 3(Storage size in GB)]
DBが頻繁かつ長期間のバースト可能なパフォーマンスを必要とする場合は、次のストレージタイプの方が適しています。
プロビジョニングされたIOPSストレージ
これは、OLTPワークロードに最適な、持続的な高いパフォーマンスと一貫した低遅延を提供するストレージシステムの一種です。
DBインスタンスを作成するときに、そのようなストレージに必要なIOPSレートとボリュームサイズを指定します。 以下は、プロビジョニングされたストレージの下で必要なIOPSとストレージを決定するための参照に使用されるチャートです。
DB Engine | Provisioned IOPS Range | Storage Range |
---|---|---|
MariaDB | 1000 to 40000 | 100 GB to 16 TB |
SQL Server | 1000 to 32000 | 20GB to 16 TB |
MySQL/Oracle/PostgreSQL | 1000 to 40000 | 100GB to 16 TB |
これは、awsによって保守されている非常に古いストレージテクノロジーであり、下位互換性のためにのみ使用されています。 その機能は非常に限られており、次のとおりです。
- Elastic Volumesをサポートしていません
- 最大サイズ4 TBに制限
- 最大1000 IOPSに制限