SC1 または ST1 の EBS ボリュームが定格スループットパフォーマンスを達成できないのはなぜですか?

最終更新日: 2020 年 10 月 29 日

ST1 または SC1 の Amazon Elastic Block Store (Amazon EBS) ボリュームが、AWS ドキュメントに記載されているスループットパフォーマンスに達しません。なぜでしょうか?

簡単な説明

SC1 や ST1 などの HDD Amazon EBS ボリュームを使用する際は、以下の点に注意してください。

  • これらのボリュームでは、インスタンスのワークロードで使用される実際の I/O サイズにかかわらず、常に 1024 KiB の I/O トークンを使用します。アプリケーションワークロードの実際の I/O サイズが 16 KiB に設定されていても、ボリュームは I/O トークンの 1024 KiB サイズ全体を使用します。この結果は、トークンのスペースの大部分が無駄になります。効率を最大化するには、1024 KiB すべてを使用するようにします。
  • シーケンシャルワークロードの I/O サイズが 32 KiB を超える場合、Amazon EBS は I/O を常に 1024 KiB の単一 I/O オペレーションにマージします。このマージは、トークンのサイズ全体を満たします。
  • I/O サイズが 32 KiB より小さい場合、またはワークロードがランダムである場合、Amazon EBS は I/O を 1024 KiB にマージしません。ただし、Amazon EBS は引き続き 1024 KiB のトークンサイズ全体を使用します。これにより、トークン内のほとんどのスペースは空のままになります。I/O がマージされないため、インスタンスはより多くの IOPS を使用して、同じ量のデータをボリュームに送信します。これにより、スループットがベースラインの値を下回っていても、バーストバランスが低下します。

解決方法

ST1 および SC1 の EBS ボリュームが最大定格スループットに到達できるようにするには、以下の手順を実行します。

  • 32 KiB を超える I/O サイズを使用するようにアプリケーションを設定します。
  • アプリケーションがシーケンシャルワークロードを使用していることを確認します。

スループットを計算するときは、以下の式を使用します。

スループット = I/O サイズ* × IOPS

I/O サイズが 32 KiB より小さい場合、ボリュームは IOPS 制限に達し、スループットが調整されます。このような場合、ボリュームは定格スループットパフォーマンスを達成することはありません。

たとえば、I/O サイズを 16 KiB に設定し、3 MiB/秒 のデータを送信すると、次のようになります。

3 MiB/秒/16 KiB = 192 IOPS

シーケンシャルワークロードまたは連続ワークロードで I/O サイズを 32 KiB に設定すると、Amazon EBS は 1024 KiB にマージされます。この場合、次の計算で示すように、Amazon は 3 IOPS のみを送信します。

3 MiB/秒/1024 KiB = 3 IOPS

ST1 ボリュームの 0.5 TiB (500 GiB) を使用しているとします。このボリュームは、理想的には 20 MiB/秒のベースラインスループットパフォーマンスを提供し、最大 125 MiB/秒のバーストが可能です。

ボリュームが 125 MiB/秒 でバーストしていて、アプリケーションの I/O サイズが 1024 KiB の場合、理論上の最大 IOPS は 125 IOPS になります。

スループット/I/O サイズ = 125 MiB/秒/1024 KiB = 125 IOPS

ただし、アプリケーションが 16 KiB の I/O サイズを使用する場合は、3 MiB のデータを送信すると 192 IOPS が使用されます。ボリュームは理論上の最大値 125 IOPS しか達成しないため、アプリケーションでは 192 IOPS をプッシュできません。この場合、ボリュームは IOPS を 125 にスロットリングします。このシナリオでは、実際のスループットは次のようになります。

実際のスループット = 16 KiB × 125 = 1.95 MiB/秒

上記の計算で示すように、IOPS は 125 IOPS にスロットリングされるため、Amazon EBS はスループットを 1.95 MiB/秒 にスロットリングします。このスロットリングは、アプリケーションが 1024 KiB の I/O サイズを使用している場合、ボリュームのバースト可能な理論上のスループットが 125 IOPS であっても発生します。


この記事は役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?