Amazon EBS ボリュームの種類 - Amazon Elastic Compute Cloud

Amazon EBS ボリュームの種類

Amazon EBS では以下のボリュームタイプを提供しており、これらはパフォーマンス特性と料金が異なるため、アプリケーションのニーズに応じてストレージのパフォーマンスとコストを調整できます。これらのボリュームタイプは、次の 2 つのカテゴリに分類されます。

  • ソリッドステートドライブ (SSD) — I/O サイズの小さい頻繁な読み取り/書き込み操作を含むトランザクションワークロード用に最適化され、主要なパフォーマンス属性は IOPS です。

  • ハードディスクドライブ (HDD) — パフォーマンスの主要な属性がスループットである大規模なストリーミングワークロードに最適化されています。

  • 旧世代 — データへのアクセス頻度が低く、パフォーマンスが最も重要ではない小規模なデータセットを持つワークロードに使用できるハードディスクドライブ。代わりに、最新世代のボリュームタイプを検討することをお勧めします。

インスタンスの構成、I/O 特性、ワークロードのデマンドなど、EBS ボリュームのパフォーマンスに影響を与える可能性がある要因は複数存在します。EBS ボリュームでプロビジョニングされた IOPS を最大限活用するには、EBS 最適化インスタンスを使用します。EBS ボリュームを最大限活用するための詳細については、「Linux インスタンスでのAmazon EBS ボリュームのパフォーマンス」を参照してください。

料金の詳細については、「Amazon EBS 料金表」を参照してください。

ソリッドステートドライブ (SSD)

Amazon EBS によって提供される SSD-Backed ボリュームは、次のカテゴリに分類されます。

  • 汎用 SSD — 料金とパフォーマンスのバランスに優れています。これらのボリュームは、ほとんどのワークロードに推奨されます。

  • Provisioned IOPS SSD — ミッションクリティカルな低レイテンシーまたは高スループットワークロードに適した、高パフォーマンスを提供します。

SSD-Backed ボリュームの使用例と特性の概要を次に示します。インスタンスごとの最大 IOPS とスループットについては、「Amazon EBS 最適化インスタンスを使用する」を参照してください。

General Purpose SSD Provisioned IOPS SSD
ボリュームタイプ gp3 gp2 io2Block Express ‡ io2      io1
耐久性 99.8%~99.9% の耐久性 (0.1%~0.2% の年間故障率) 99.8%~99.9% の耐久性 (0.1%~0.2% の年間故障率) 99.999% の耐久性 (0.001% の年間故障率) 99.999% の耐久性 (0.001% の年間故障率) 99.8%~99.9% の耐久性 (0.1%~0.2% の年間故障率)
ユースケース
  • 低レイテンシーのインタラクティブなアプリケーション

  • 開発・テスト環境

必要なワークロード

  • ミリ秒未満のレイテンシー

  • 持続的な IOPS パフォーマンス

  • 64,000 IOPS または 1,000 MiB/秒を超えるスループット

  • 持続的な IOPS パフォーマンスまたは 16,000 IOPS 以上のパフォーマンスを必要とするワークロード

  • I/O 集約型のデータベースワークロード

ボリュームサイズ 1GiB - 16TiB 4 GiB~64 TiB 4 GiB~16 TiB
ボリュームあたりの最大 IOPS (16 KiB I/O) 16,000 256,000 64,000 †
ボリュームあたりの最大スループット 1,000 MiB/秒 250 MiB/秒 * 4,000 MiB/秒 1,000 MiB/秒
Amazon EBS マルチアタッチ サポート外 サポート対象
ブートボリューム サポート対象

* スループットの制限は、ボリュームサイズに応じて 128 MiB/秒〜250 MiB/秒です。170 GiB 以下のボリュームの最大スループットは 128 MiB/秒です。170 GiB より大きく 334 GiB より小さいボリュームは、バーストクレジットを利用できる場合、最大スループット 250 MiB/秒を提供します。334 GiB 以上のボリュームであれば、バーストクレジットに関係なく 250 MIB/S を配信できます。作成された日が 2018 年 12 月 3 日以前であり、作成後に変更されていない gp2 ボリュームの場合は、 そのボリュームを修正しない限り、完全なパフォーマンスが得られない場合があります。

† 最大 IOPS とスループットは、32,000 IOPS を超える Nitro System 上に構築されたインスタンス プロビジョニングされた場合にのみ保証されます。その他のインスタンスでは、最大 32,000 IOPS と 500 MIB/s を保証します。作成日が 2017 年 12 月 6 日以前であり、作成後に変更されていない io1 ボリュームの場合は、そのボリュームを修正しない限り、完全なパフォーマンスには到達しない可能性があります。

io2 Block Express ボリュームは、R5b インスタンスでのみサポートされます。R5b インスタンスにタッチされた io2 ボリュームは、起動中または起動後に自動的に Block Express で実行されます。詳細については、「io2 Block Express ボリューム」を参照してください。

ハードディスクドライブ (HDD)

Amazon EBS によって提供される HDD-Backed ボリュームは、次のカテゴリに分類されます。

  • スループット最適化 HDD: 高いスループットを必要とするアクセス頻度の高いワークロード向けの低コストの HDD

  • Cold HDD: アクセス頻度の低いワークロード向けの最も低コストの HDD 設計

以下は、HDD-Backed ボリュームのユースケースと特性の概要です。インスタンスごとの最大 IOPS とスループットについては、「Amazon EBS 最適化インスタンスを使用する」を参照してください。

スループット最適化 HDD Cold HDD
ボリュームタイプ st1 sc1
耐久性 99.8%~99.9% の耐久性 (0.1%~0.2% の年間故障率) 99.8%~99.9% の耐久性 (0.1%~0.2% の年間故障率)
ユースケース
  • ビッグデータ

  • データウェアハウス

  • ログ処理

  • アクセス頻度の低いデータ用のスループット指向ストレージ

  • 低いストレージコストが重視されるシナリオ

ボリュームサイズ 125 GiB~16 TiB 125 GiB~16 TiB
ボリュームあたりの最大 IOPS (1 MiB I/O) 500 250
ボリュームあたりの最大スループット 500 MiB/秒 250 MiB/秒
Amazon EBS マルチアタッチ サポート外 サポート外
ブートボリューム サポート外 サポート外

旧世代のボリュームタイプ

次の表は、旧世代の EBS ボリュームタイプを示しています。旧世代のボリュームより高いパフォーマンスまたはパフォーマンスの安定性が必要であれば、汎用 SSD (gp2 および gp3) や、現行の他のボリュームタイプの使用を検討するようお勧めします。詳細については、「旧世代ボリューム」を参照してください。

マグネティック
ボリュームタイプ standard
ユースケース データへのアクセス頻度が低いワークロード
ボリュームサイズ 1 GiB~1 TiB
ボリュームあたりの最大 IOPS 40~200
ボリュームあたりの最大スループット 40~90 MiB/秒
ブートボリューム サポート対象

汎用 SSD ボリューム (gp3)

汎用 SSD ボリューム (gp3) は、さまざまなワークロードに対応できるコスト効率の高いストレージとして使用できます。このボリュームは、ストレージの料金に含まれ、3,000 IOPS と 125 MiB/秒 の一貫したベースラインレートを提供します。追加の IOPS (最大 16,000) とスループット (最大 1,000 MiB/秒) を追加料金を支払ってプロビジョニングできます。

プロビジョニングされたボリュームサイズに対するプロビジョンド IOPS の最大比率は、GiB あたり 500 IOPS です。プロビジョンド IOPS に対するプロビジョニングスループットの最大比率は、IOPS あたり 0.25 MiB/秒 です。次のボリューム設定では、最大 IOPS または最大スループットのプロビジョニングがサポートされます。

  • 32 GiB 以上: 500 IOPS/GiB × 32 GiB = 16,000 IOPS

  • 8 GiB 以上で 4,000 IOPS 以上: 4,000 IOPS x 0.25 MiB/秒/IOPS = 1,000 MiB/秒

汎用 SSD ボリューム (gp2)

汎用 SSD ボリューム (gp2) は、さまざまなワークロードに対応できるコスト効率の高いストレージとして使用できます。これらのボリュームでは、レイテンシーは 1 桁台のミリ秒であり、長時間 3,000 IOPS にバーストできます。最小 100 IOPS (33.33 GiB 以下) から最大 16,000 IOPS (5,334 GiB 以上) まで、ベースラインパフォーマンスは、ボリュームサイズ 3 IOPS/GiB で線形にスケールします。AWS は、プロビジョニングされたパフォーマンスを 99% の確率で提供する gp2 ボリュームを設計しています。gp2 ボリュームのサイズ範囲は、1 GiB~16 TiB です。

I/O クレジットおよびバーストパフォーマンス

gp2 ボリュームのパフォーマンスにはボリュームサイズが反映されます。ボリュームサイズによって、ボリュームのベースラインパフォーマンスレベルや I/O クレジットを取得する速さが決まります。ボリュームサイズが大きいほどベースラインパフォーマンスレベルが高くなり、I/O クレジットの取得速度も速くなります。I/O クレジットとは、ベースラインパフォーマンスでは不十分な場合、大量の I/O をバーストする際に gp2 ボリュームで使用できる帯域幅を表します。ボリュームが I/O に対して保持しているクレジットが多いほど、長い時間ベースラインパフォーマンスレベルを超えたバーストが可能で、より高いパフォーマンスが必要な場合パフォーマンスも向上します。次の図は、gp2 のバーストバケット動作を示しています。


            gp2 バーストバケット

各ボリュームは、初期 I/O クレジットバランス (540 万 I/O クレジット) を受け取ります。これは、少なくとも 30 分間 3,000 IOPS という最大バーストパフォーマンスを持続するには十分な数のクレジットです。この初期クレジットバランスは、ブートボリュームでの高速な初期起動サイクル、および他のアプリケーションでの優れたブートストラップエクスペリエンスを実現するために設計されました。ボリュームは、ボリュームサイズの 1 GiB あたり 3 IOPS というベースラインパフォーマンスレートで、I/O クレジットを取得します。たとえば、100 GiB の gp2 ボリュームではベースラインパフォーマンスは 300 IOPS になります。


            ベースラインのパフォーマンスとバースト IOPS の比較

ベースラインパフォーマンスの I/O レベルよりも高いレベルが必要となる場合は、ボリュームはクレジットバランスの I/O クレジットを利用して、必要なパフォーマンスレベル (最大 3,000 IOPS) までバーストします。ボリュームで使用される I/O クレジットが毎秒取得される I/O クレジットよりも少ない場合、未使用の I/O クレジットは I/O クレジットバランスに追加されます。ボリュームの最大 I/O クレジットバランスは、初期クレジットバランス (540 万 I/O クレジット) と同じです。

ボリュームのベースラインパフォーマンスが最大バーストパフォーマンスより高い場合、I/O クレジットは消費されません。ボリュームが Nitro システムで構成されたインスタンスにアタッチされている場合、バーストバランスは報告されません。その他のインスタンスの場合、報告されるバーストバランスは 100% です。

ボリュームのバースト期間は、ボリュームのサイズ、必要なバースト IOPS、およびバーストが開始された時点のクレジットバランスによって異なります。これを次の式で示します。

(Credit balance) Burst duration = ------------------------------------ (Burst IOPS) - 3(Volume size in GiB)

次の表に、いくつかのボリュームサイズとボリュームに関連するベースラインパフォーマンス (I/O クレジットを取得するレート) を示します。また、最大のパフォーマンスレベルである 3,000 IOPS (完全なクレジットバランスで開始された時点のレベル) でのバースト期間、および空のクレジットバランスをボリュームが再補充する際にかかる秒数も示します。

ボリュームサイズ (GiB)

ベースラインパフォーマンス (IOPS)

持続的な 3,000 IOPS でのバースト期間 (秒数)

IO がない場合に空のクレジットバランスを満たすまでの秒数

1

100

1,802

54,000

100

300

2,000

18,000

250

750

2,400 7,200

334 (最大スループットの最小サイズ)

1,002

2,703

5,389

500

1,500

3,600

3,600

750

2,250

7,200

2,400

1,000

3,000

該当なし*

該当なし*

5,334 (最大 IOPS の最小サイズ)

16,000

該当なし*

該当なし*

16,384 (16 TiB、最大ボリュームサイズ)

16,000

該当なし*

該当なし*

* ボリュームのベースラインパフォーマンスが最大バーストパフォーマンスを超えた場合。

I/O クレジットバランスが空になったらどうなりますか。

gp2 ボリュームが I/O クレジットバランスをすべて使用している場合、ボリュームの最大 IOPS パフォーマンスはベースライン IOPS パフォーマンスレベルにとどまり (ボリュームがクレジットを取得するレート)、ボリュームの最大スループットはベースライン IOPS と最大 I/O サイズをかけ合わせた数に減少します。スループットは 250 MiB/秒を超えることはできません。I/O 需要がベースラインレベル未満になり、未使用のクレジットが I/O クレジットバランスに追加されると、ボリュームの最大 IOPS パフォーマンスはベースラインを再度上回ります。たとえば、空のクレジットバランスがある 100 GiB gp2 ボリュームは、ベースラインパフォーマンスが 300 IOPS で、スループット制限は 75 MiB/秒です (1 秒あたり 300 I/O オペレーション * I/O オペレーションあたり 256 KiB = 75 MiB/秒)。ボリュームが大きくなると、ベースラインパフォーマンスが高くなり、クレジットバランスがより速く補充されるようになります。IOPS の測定方法の詳細については、「I/O の特性とモニタリング」を参照してください。

I/O クレジットバランスが空であるため、ボリュームのパフォーマンスがベースラインレベルに制限されることが多いと気づいた場合は、gp3 ボリュームへの切り替えを検討してください。

CloudWatch メトリクスとアラームを使用してバーストバケットバランスをモニタリングする方法については、「ボリュームのバーストバケットバランスのモニタリング」を参照してください。

スループットパフォーマンス

gp2 ボリュームのスループットは、250 MiB/秒のスループット制限まで、次の計算式を使用して計算できます。

Throughput in MiB/s = ((Volume size in GiB) × (IOPS per GiB) × (I/O size in KiB))

V = ボリュームサイズ、I = I/O サイズ、R = I/O 料金、T = スループット、とします。これにより以下が簡単になります。

T = VIR

最大スループットを実現する最小ボリュームサイズは次のように求めることができます。

T V = ----- I R 250 MiB/s = --------------------- (256 KiB)(3 IOPS/GiB) [(250)(2^20)(Bytes)]/s = ------------------------------------------ (256)(2^10)(Bytes)([3 IOP/s]/[(2^30)(Bytes)]) (250)(2^20)(2^30)(Bytes) = ------------------------ (256)(2^10)(3) = 357,913,941,333 Bytes = 333⅓ GiB (334 GiB in practice because volumes are provisioned in whole gibibytes)

Provisioned IOPS SSD ボリューム

プロビジョンド IOPS SSD (io1 および io2) ボリュームは、ランダムアクセス I/O スループットにおけるストレージパフォーマンスと整合性が重要な、I/O 集約型ワークロード (特にデータベースワークロード) のニーズを満たすように設計されています。プロビジョンド IOPS SSD ボリュームでは、ボリュームの作成時に指定した、一貫性のある IOPS レートを使用します。Amazon EBS では、プロビジョニングされたパフォーマンスを 99.9% 提供します。

io1 ボリュームは、0.2% 以下の年間故障率 (AFR) で 99.8~99.9% のボリューム耐久性を提供するように設計されています。これは、1 年間に実行中のボリューム 1,000 個あたり最大 2 つのボリュームの故障に相当します。io2 ボリュームは、0.001% 以下の AFR で 99.999% のボリューム耐久性を提供するように設計されています。これは、1 年間に実行中のボリューム 100,000 個あたり 1 つのボリュームの故障に相当します。

プロビジョンド IOPS SSD io1 および io2 ボリュームは、すべての Amazon EC2 インスタンスタイプで使用できます。R5b インスタンスに添付されたプロビジョンド IOPS SSD io2 ボリュームは、EBS Block Express で実行されます。詳細については、「io2 Block Express ボリューム」を参照してください。

io2 ボリュームの考慮事項

  • io2 ボリュームを持つインスタンスを起動する際には、次の点に注意してください。

    • io2 ボリュームを持つ R5b インスタンスを起動した場合、ボリュームのサイズや IOPS に関わらず、ボリュームは自動的に Block Express で実行されます。

    • サイズが 16 TiB を超えるまたは IOPS が 64,000 を超える io2 ボリュームを持つ Block Express をサポートしないインスタンスタイプを起動することはできません。

    • 暗号化されていない AMI や共有された暗号化 AMI から、サイズが 16 TiB を超える、または IOPS が 64,000 を超える暗号化 io2 ボリュームを持つ R5b インスタンスを起動することはできません。この場合、最初に暗号化された AMI をアカウントで作成してから、その AMI を使用してインスタンスを起動する必要があります。

  • io2 ボリュームを作成する際には、次の点に注意してください。

    • Block Express がサポートされているリージョンで、サイズが 16 TiB を超える、または IOPS が 64,000 を超える io2 ボリュームを作成すると、そのボリュームは自動的に Block Express で実行されます。

    • Block Express がサポートされていないリージョンで、サイズが 16 TiB を超える、または IOPS が 64,000 を超える io2 ボリュームを作成することはできません。

    • Block Express がサポートされているリージョンで、サイズが 16 TiB 以下、または IOPS が 64,000 以下の io2 ボリュームを作成すると、そのボリュームは Block Express で実行されません。

    • 暗号化されていないスナップショットや共有された暗号化スナップショットから、サイズが 16 TiB を超える、または IOPS が 64,000 を超える暗号化 io2 ボリュームを作成することはできません。この場合、最初に暗号化されたスナップショットをアカウントで作成してから、そのスナップショットを使用してボリュームを作成する必要があります。

  • インスタンスに io2 ボリュームを添付する際には、次の点に注意してください。

    • R5b インスタンスに io2 ボリュームを添付した場合、ボリュームは自動的に Block Express で実行されます。Block Expressのボリュームを最適化するには、最大で 48 時間かかる場合があります。この間、ボリュームは io2 レイテンシーを提供します。ボリュームが最適化されると、Block Express でサポートされるサブミリ秒のレイテンシーが提供されます。

    • Block Express をサポートしていないインスタンスタイプに、16 TiB を超えるサイズまたは 64,000 を超える IOPS を持つ io2 ボリュームを添付することはできません。

    • サイズが 16 TiB 以下、IOPS が 64,000 以下の io2 ボリュームを R5b インスタンスからデタッチし、Block Express をサポートしていないインスタンスタイプに添付した場合、そのボリュームは Block Express で実行されなくなり、io2 レイテンシーが発生します。

  • io2 ボリュームを変更する際には、次の点に注意してください。

    • Block Express をサポートしていないインスタンスタイプに添付されている間は、io2 ボリュームを変更してサイズを16 TiB より大きくしたり、IOPS を64,000 より大きくしたりすることはできません。

    • R5b インスタンスに添付されている io2 ボリュームのサイズやプロビジョンド IOPS を変更することはできません。

Performance

Provisioned IOPS SSD ボリュームのサイズは 4 GiB~16 TiB であり、ボリュームあたり 100 IOPS から最大 64,000 IOPS をプロビジョニングできます。Nitro System 上に構築されたインスタンス では、最大 64,000 IOPS を実現できます。他のインスタンスファミリーでは、最大 32,000 IOPS のパフォーマンスを達成できます。リクエストされたボリュームサイズに対するプロビジョンド IOPS の最大比率 (GiB 単位) は、io1 ボリュームの場合は 50:1、io2 ボリュームの場合は 500:1 です。たとえば、100 GiB の io1 ボリュームは最大 5,000 IOPS でプロビジョニングでき、100 GiB の io2 ボリュームは最大 50,000 IOPS でプロビジョニングできます。サポートされているインスタンスタイプでは、以下のボリュームサイズで最大 64,000 IOPS までのプロビジョニングが可能です。

  • io11,280 GiB 以上のサイズの ボリューム (50 × 1,280 GiB = 64,000 IOPS)

  • io2128 GiB 以上のサイズの ボリューム (500 × 128 GiB = 64,000 IOPS)

最大 32,000 IOPS でプロビジョニングされた Provisioned IOPS SSD ボリュームは、最大 256 KiB の I/O サイズをサポートし、最大 500 MiB/秒のスループットを生み出します。最大の I/O サイズでは、ピークのスループットが 2,000 IOPS に達します。32,000 IOPS 超 (最大 64,000 IOPS) でプロビジョニングされたボリュームでは、プロビジョンド IOPS あたり 16 KiB のレートでスループットが直線的に増加します。例えば、48,000 IOPS でプロビジョニングされたボリュームは、最大 750 MiB/秒のスループット (プロビジョンド IOPS あたり 16 KiB × 48,000 プロビジョンド IOPS = 750 MiB/秒) をサポートできます。1,000 MiB/秒の最大スループットを実現するには、ボリュームを 64,000 IOPS (プロビジョンド IOPS あたり 16 KiB x 64,000 プロビジョンド IOPS = 1,000 MiB/秒) でプロビジョニングする必要があります。次のグラフは、これらのパフォーマンスの特長を示しています。


          io1 ボリュームのスループット制限

発生する I/O あたりのレイテンシーは、プロビジョニングされる IOPS とワークロードプロファイルによって異なります。最適な I/O レイテンシーのエクスペリエンスを得るには、ワークロードの I/O プロファイルを満たすように IOPS をプロビジョニングしてください。

io2 Block Express ボリューム

注記

io2 Block Express ボリュームは、R5b インスタンスでのみサポートされます。

io2 Block Express ボリュームは、次世代の Amazon EBS ストレージサーバーアーキテクチャです。これは、Nitro ベースの Amazon EC2 インスタンスで実行される、最も要求の厳しい I/O 集約型のアプリケーションのパフォーマンス要件を満たすことを目的として構築されています。

Block Express アーキテクチャにより、パフォーマンスとスケールが向上します。Block Express サーバーは、Scalable Reliable Datagram (SRD) ネットワークプロトコルを使用して、Nitro ベースのインスタンスと通信します。このインターフェイスは、インスタンスのホストハードウェア上の Amazon EBS I/O 機能専用の Nitro Card に実装されます。I/O 遅延とレイテンシーのバラツキ (ネットワークジッター) を最小限に抑え、より高速で安定したパフォーマンスをアプリケーションに提供します。詳細については、「io2 Block Express ボリューム」を参照してください。

io2 Block Express ボリュームは、ミリ秒未満のレイテンシーを実現する、単一ボリュームの恩恵を受けるワークロードに適しています。また、io2 ボリュームより高い IOPS、より高いスループット、より大規模なボリュームをサポートします。

io2 Block Express ボリュームは、マルチアタッチ、Elastic Volume オペレーション、暗号化など、io2 ボリュームと同じ機能をサポートしています。

Considerations

  • io2 Block Express ボリュームは、現在、R5b インスタンスでのみサポートされます。

  • io2 Block Express ボリュームは、現在、R5b インスタンスが利用可能なすべてのリージョンで利用可能です。これには、us-east-1us-east-2us-west-2ap-southeast-1ap-northeast-1eu-central-1 が含まれます。R5b インスタンスの可用性は、アベイラビリティーゾーンによって異なる場合があります。R5b の可用性の詳細については、「Amazon EC2 インスタンスタイプの検索」を参照してください。

  • io2 Block Express ボリュームは、高速スナップショット復元をサポートしていません。これらのボリュームを初期化して、パフォーマンスを最大限に発揮することを推奨します。詳細については、「Amazon EBS ボリュームの初期化」を参照してください。

Performance

io2 Block Express ボリュームを使用すると、次のようにボリュームをプロビジョニングできます。

  • ミリ秒未満の平均レイテンシー

  • 最大 64 TiB (65,536 GiB) までのストレージ容量

  • IOPS:GiB 比は 1,000:1 の、最大 256,000 のプロビジョンド IOPS。最大 IOPS は、256 GiB 以上のサイズでプロビジョニングできます (1,000 IOPS x 256 GiB = 256,000 IOPS)。

  • 最大 4,000 MiB/秒のボリュームスループット。スループットはプロビジョンド IOPS ごとに最大 0.256 MiB/秒に比例して拡張できます。16,000 IOPS 以上で最大スループットに達します。


              io2 Block Express ボリュームのスループット制限

Quotas

io2 Block Express ボリュームは、io2 ボリュームと同じサービスクォータに従います。詳細については、「Amazon EBS クォータ」を参照してください。

料金と請求

io2 ボリュームと io2 Block Express ボリュームは同じ料金が請求されます。詳細については、「Amazon EBS の料金表」を参照してください。

使用状況レポートでは、io2 Block Express ボリュームと io2 ボリュームは区別されません。タグを使用して、io2 Block Express ボリュームに関連するコストを特定することをお勧めします。

スループット最適化 HDD ボリューム

スループット最適化 HDD (st1) ボリュームは、IOPS ではなくスループットでパフォーマンスを示す、低コストの磁気ストレージに使用できます。このボリュームタイプは、Amazon EMR、ETL、データウェアハウス、ログ処理など、サイズの大きなシーケンシャルワークロードに適しています。ブート可能な st1 ボリュームはサポートされていません。

スループット最適化 HDD (st1) ボリュームは Cold HDD (sc1) ボリュームに類似していますが、アクセスが頻繁なデータをサポートするように設計されています。

このボリュームタイプは、サイズの大きなシーケンシャル I/O が含まれるワークロードに適しており、サイズの小さなランダム I/O を実行するワークロードのお客様には、gp2 の使用をお勧めします。詳細については、「HDD に対する読み取り/書き込みサイズが小さい場合の非効率性」を参照してください。

スループットクレジットとバーストパフォーマンス

gp2 と同様、st1 でもパフォーマンスのためにバーストバケットモデルが使用されます。ボリュームのベースラインスループット (ボリュームのスループットクレジットが蓄積されるレート) は、ボリュームサイズによって決まります。ボリュームのバーストスループット (クレジットがある場合に可能な消費レート) もボリュームサイズによって決まります。ボリュームが大きいほど、ベースラインとバーストスループットの値も大きくなります。また、ボリュームのクレジットが多いほど、バーストレベルでドライブ I/O に使用できる時間が長くなります。

次の図は、st1 のバーストバケット動作を示しています。


            st1 バーストバケット

スループットとスループットクレジットの上限により、st1 ボリュームで使用可能なスループットは、以下の計算式で示されます。

(Volume size) x (Credit accumulation rate per TiB) = Throughput

1 TiB の st1 ボリュームの場合、バーストスループットは 250 MiB/秒に制限され、バケットのクレジットは 40 MiB/秒で最大 1 TiB 分まで累積されます。

容量が大きいほど、これらの制限はリニアにスケールされ、スループットは最大 500 MiB/秒に制限されます。バケットが枯渇した後は、スループットは TiB あたり 40 MiB/秒のベースラインレートに制限されます。

ボリュームサイズが 0.125~16 TiB の場合、ベースラインスループットの範囲は 5 MiB/秒 ~ 500 MiB/秒 (上限値) です。次に示すように、この最大値には 12.5 TiB で到達します。

40 MiB/s 12.5 TiB x ---------- = 500 MiB/s 1 TiB

バーストスループットの範囲は、31 MiB/秒~500 MiB/秒 (上限) です。次に示すように、この上限には 2 TiB で到達します。

250 MiB/s 2 TiB x ---------- = 500 MiB/s 1 TiB

次の表は、st1 のベーススループット値およびバーストスループット値の範囲を示します。

ボリュームサイズ (TiB) ST1 ベーススループット (MiB/秒) ST1 バーストスループット (MiB/秒)
0.125 5 31
0.5 20 125
1 40 250
2 80 500
3 120 500
4 160 500
5 200 500
6 240 500
7 280 500
8 320 500
9 360 500
10 400 500
11 440 500
12 480 500
12.5 500 500
13 500 500
14 500 500
15 500 500
16 500 500

次の図は、テーブルの値をグラフで示したものです。


            st1 のベーススループットとバーストスループットの比較
注記

スループット最適化 HDD (st1) ボリュームのスナップショットを作成すると、スナップショットの進行中はボリュームのベースライン値までパフォーマンスが低下します。

CloudWatch メトリクスとアラームを使用してバーストバケットバランスをモニタリングする方法については、「ボリュームのバーストバケットバランスのモニタリング」を参照してください。

Cold HDD ボリューム

Cold HDD (sc1) ボリュームは、IOPS ではなくスループットでパフォーマンスを示す、低コストの磁気ストレージに使用できます。st1 は、sc1 よりスループット制限が低く、サイズの大きなコールドデータのシーケンシャルワークロードに適しています。データへのアクセス頻度が低く、コストの削減が必要である場合は、低コストなブロックストレージとして sc1 を使用できます。ブート可能な sc1 ボリュームはサポートされていません。

Cold HDD (sc1) ボリュームは、スループット最適化 HDD (st1) ボリュームに類似していますが、アクセス頻度が低いデータをサポートするように設計されています。

注記

このボリュームタイプは、サイズの大きなシーケンシャル I/O が含まれるワークロードに適しており、サイズの小さなランダム I/O を実行するワークロードのお客様には、gp2 の使用をお勧めします。詳細については、「HDD に対する読み取り/書き込みサイズが小さい場合の非効率性」を参照してください。

スループットクレジットとバーストパフォーマンス

gp2 と同様、sc1 でもパフォーマンスのためにバーストバケットモデルが使用されます。ボリュームのベースラインスループット (ボリュームのスループットクレジットが蓄積されるレート) は、ボリュームサイズによって決まります。ボリュームのバーストスループット (クレジットがある場合に可能な消費レート) もボリュームサイズによって決まります。ボリュームが大きいほど、ベースラインとバーストスループットの値も大きくなります。また、ボリュームのクレジットが多いほど、バーストレベルでドライブ I/O に使用できる時間が長くなります。


            sc1 バーストバケット

スループットとスループットクレジットの上限により、sc1 ボリュームで使用可能なスループットは、以下の計算式で示されます。

(Volume size) x (Credit accumulation rate per TiB) = Throughput

1 TiB の sc1 ボリュームの場合、バーストスループットは 80 MiB/秒に制限され、バケットのクレジットは 12 MiB/秒で最大 1 TiB 分まで累積されます。

容量が大きいほど、これらの制限はリニアにスケールされ、スループットは最大 250 MiB/秒に制限されます。バケットが枯渇した後は、スループットは TiB あたり 12 MiB/秒のベースラインレートに制限されます。

ボリュームサイズが 0.125~16 TiB の場合、ベースラインスループットの範囲は 1.5 MiB/秒~192 MiB/秒 (最大値) です。次に示すように、この最大値には 16 TiB で到達します。

12 MiB/s 16 TiB x ---------- = 192 MiB/s 1 TiB

バーストスループットの範囲は、10 MiB/秒~250 MiB/秒 (上限) です。次に示すように、この上限には 3.125 TiB で到達します。

80 MiB/s 3.125 TiB x ----------- = 250 MiB/s 1 TiB

次の表は、sc1 のベーススループット値およびバーストスループット値の範囲を示します。

ボリュームサイズ (TiB) SC1 ベーススループット (MiB/秒) SC1 バーストスループット (MiB/秒)
0.125 1.5 10
0.5 6 40
1 12 80
2 24 160
3 36 240
3.125 37.5 250
4 48 250
5 60 250
6 72 250
7 84 250
8 96 250
9 108 250
10 120 250
11 132 250
12 144 250
13 156 250
14 168 250
15 180 250
16 192 250

次の図は、テーブルの値をグラフで示したものです。


            sc1 のベーススループットとバーストスループットの比較
注記

Cold HDD (sc1) ボリュームのスナップショットを作成すると、スナップショットの進行中はボリュームのベースライン値までパフォーマンスが低下します。

CloudWatch メトリクスとアラームを使用してバーストバケットバランスをモニタリングする方法については、「ボリュームのバーストバケットバランスのモニタリング」を参照してください。

磁気ボリューム

磁気 ボリュームは磁気ドライブを利用しています。データへのアクセス頻度が低いワークロードや、小さなボリュームサイズで低コストのストレージが必要となるシナリオに最適です。これらのボリュームは、平均約 100 IOPS を実現し、バースト能力は最大約数百 IOPS です。ボリュームのサイズは 1 GiB~1 TiB です。

注記

磁気ボリュームは、旧世代のボリュームタイプです。新しいアプリケーションには、いずれかの新しいボリュームタイプの使用をお勧めします。詳細については、「旧世代ボリューム」を参照してください。

CloudWatch メトリクスとアラームを使用してバーストバケットバランスをモニタリングする方法については、「ボリュームのバーストバケットバランスのモニタリング」を参照してください。

HDD ボリュームを使用するときのパフォーマンスに関する考慮事項

HDD ボリュームを使用して最適なスループットを実現するには、次の考慮事項を念頭に置いてワークロードを計画してください。

スループット最適化 HDD と Cold HDD との比較

st1sc1 のバケットサイズはボリュームサイズによって異なり、フルバケットにはフルボリュームスキャンのための十分なトークンが含まれています。ただし、st1 ボリュームと sc1 ボリュームの場合は、サイズが大きくなるほど、インスタンスごとおよびボリュームごとのスループット制限により、ボリュームスキャンの完了にかかる時間が長くなります。ボリュームが小さなインスタンスにアタッチされている場合は、st1 または sc1 のスループット制限よりインスタンスごとのスループットの方に制限されます。

st1sc1 のいずれも、全体のうち 99% の時間はバーストスループットの 90% のパフォーマンス安定性を実現できるよう設計されています。毎時間、予測合計スループットの 99% 達成を目標に、準拠しない期間はほぼ均一に分散されています。

スキャン時間は、一般的にこの式で示します。

Volume size ------------ = Scan time Throughput

たとえば、パフォーマンス安定性の保証と他の最適化を想定すると、5 TiB のボリュームを持つ st1 のお客様は、フルボリュームスキャンが 2.91~3.27 時間で完了すると予測できます。

  • 最適なスキャン時間

    5 TiB 5 TiB ----------- = ------------------ = 10,486 seconds = 2.91 hours 500 MiB/s 0.00047684 TiB/s
  • 最大スキャン時間

    2.91 hours -------------- = 3.27 hours (0.90)(0.99) <-- From expected performance of 90% of burst 99% of the time

同様に、5 TiB のボリュームを持つ sc1 のお客様は、フルボリュームスキャンが 5.83~6.54 時間で完了すると予測できます。

  • 最適なスキャン時間

    5 TiB 5 TiB ----------- = ------------------- = 20972 seconds = 5.83 hours 250 MiB/s 0.000238418 TiB/s
  • 最大スキャン時間

    5.83 hours -------------- = 6.54 hours (0.90)(0.99)

次の表は、フルバケットと十分なインスタンススループットを前提として、さまざまなサイズのボリュームに関する最も望ましいスキャン時間を示します。

ボリュームサイズ (TiB) ST1 のスキャン時間、バーストを含む (時間)* SC1 のスキャン時間、バーストを含む (時間)*
1 1.17 3.64
2 1.17 3.64
3 1.75 3.64
4 2.33 4.66
5 2.91 5.83
6 3.50 6.99
7 4.08 8.16
8 4.66 9.32
9 5.24 10.49
10 5.83 11.65
11 6.41 12.82
12 6.99 13.98
13 7.57 15.15
14 8.16 16.31
15 8.74 17.48
16 9.32 18.64

* これらのスキャン時間では、1 MiB のシーケンシャル I/O を実行する際のキューの平均深度 (整数に四捨五入) として 4 以上を前提としています。

したがって、スキャンを早く (最大 500 MiB/秒) 完了するために必要なスループット指向のワークロードがある場合や、または 1 日に複数のフルボリュームスキャンが必要な場合は、st1 を使用してください。コストを最適化している場合、データのアクセス頻度が比較的低い場合、スキャンのパフォーマンスとして 250 MiB/秒を超える必要がない場合は、sc1 を使用してください。

HDD に対する読み取り/書き込みサイズが小さい場合の非効率性

st1 ボリュームおよび sc1 ボリュームのパフォーマンスモデルは、シーケンシャル I/O 用に最適化され、高スループットのワークロードに適しています。多様な IOPS およびスループットのワークロードに対して許容範囲のパフォーマンスを提供しますが、サイズの小さなランダム I/O のワークロードには向いていません。

たとえば、1 MiB 以下の I/O リクエストは、1 MiB の I/O クレジットとしてカウントされます。ただし、I/O がシーケンシャルであれば、1 MiB の I/O ブロックにマージされ、1 MiB の I/O クレジットとしてのみカウントされます。

インスタンスごとのスループット制限

st1 ボリュームと sc1 ボリュームのスループットは常に、次のいずれか小さい方によって決定されます。

  • ボリュームのスループット制限

  • インスタンスのスループット制限

ネットワークボトルネックを回避するには、すべての Amazon EBS ボリュームで、EBS 最適化 EC2 インスタンスを選択することをお勧めします。詳細については、「Amazon EBS 最適化インスタンスを使用する」を参照してください。

ボリュームのバーストバケットバランスのモニタリング

gp2st1、および sc1 ボリュームのバーストバケットレベルをモニタリングするには、Amazon CloudWatch の EBS BurstBalance メトリクスを使用します。このメトリクスは、バーストバケットに残っている I/O クレジット (gp2 用) またはスループットクレジット (st1 および sc1 用) の割合を示しています。BurstBalance メトリクス、および I/O に関連するその他のメトリクスの詳細については、「I/O の特性とモニタリング」を参照してください。CloudWatch では、BurstBalance 値があるレベルまで落ち込んだ時に通知するアラームを設定することもできます。詳細については、「Amazon CloudWatch アラームの作成」を参照してください。