ブロック ストレージのパフォーマンス

永続ディスクはその価格、性能と耐久性から最もよく使われるストレージ オプションです。ローカル SSD を使用すると、さらに高いパフォーマンスと低いレイテンシを実現できますが、このディスクには冗長性がなく、特定のインスタンスの存続期間にのみ存在します。インスタンスで実行するアプリのストレージ オプションを構成する場合、次の作業を行います。

  • 必要な容量を決定します。
  • アプリケーションで必要なパフォーマンス特性を決定します。
  • ストレージのパフォーマンスが最適になるようにインスタンスを設定します。

インスタンスに対する適切なディスクタイプとサイズを決定するには、ストレージのサイズとパフォーマンスの要件を検討します。特定のアプリのパフォーマンス要件は、通常、2 つの異なる I/O パターンに分類されます。

  • 小規模な読み取りと書き込み
  • 大規模な読み取りと書き込み

小規模な読み書きにおける制限因子は、1 秒あたりのランダムな入出力オペレーション回数(IOPS)です。

大規模な読み書きにおける制限因子は、スループットです。

次のセクションでは、Compute Engine インスタンスに接続可能なブロック ストレージのオプションについて説明します。また、ブロックス トレージのパフォーマンス上限に影響する可能性のある要素もいくつか説明します。Google Cloud Platform のストレージ オプションの詳細については、Cloud Storage サービスをご覧ください。

ブロック ストレージのパフォーマンスの比較

ディスクが 1 つのインスタンスに接続されている場合も、複数のインスタンスで共有されている場合も、IOPS(GB あたり)とスループットの数値は、常に単一ディスク上のデータに関する総計パフォーマンスを示します。複数のインスタンスが同じディスクから読み取りを行う場合、ディスクの総スループットと IOPS 能力はそれらのインスタンス間で共有されることになります。計画を立てるときの参考値として、GB あたりの IOPS とスループット レートには、次の値を使用することをおすすめします。

ゾーン
標準永続ディスク
リージョン
標準永続ディスク
ゾーン
SSD永続ディスク
リージョン
SSD永続ディスク
ローカル SSD(SCSI) ローカル SSD(NVMe)
最大持続 IOPS
読み取り IOPS/GB 0.75 0.75 30 30 266.7 453.3
書き込み IOPS/GB 1.5 1.5 30 30 186.7 240
読み取り IOPS/インスタンス 7,500* 3,000* 15,000~100,000* 15,000~100,000* 400,000 680,000
書き込み IOPS/インスタンス 15,000* 15,000* 15,000~30,000* 15,000~30,000* 280,000 360,000
最大持続スループット(MB/秒)
読み取りスループット/GB 0.12 0.12 0.48 0.48 1.04 1.77
書き込みスループット/GB 0.12 0.12 0.48 0.48 0.73 0.94
インスタンスごとの読み取りスループット 240~1,200* 240* 240~1,200* 240~1,200* 1,560 2,650
インスタンスごとの書き込みスループット 76~400** 38~200** 76~800* 38~400* 1,090 1,400

* 永続ディスク IOPS およびスループットのパフォーマンスは、インスタンスの vCPU の数と I/O ブロックサイズによって異なります。詳細については、インスタンスの vCPU 数とボリューム サイズをご覧ください。

永続ディスクと物理ハードドライブの比較

永続ディスクのサイズを指定するときは、これらのディスクが従来の物理ハードドライブと比較してどの程度かということを考えます。次の表は、標準的な永続ディスクおよび SSD 永続ディスクを、一般的な 7,200 RPM SATA ドライブで期待される典型的なパフォーマンス(75 IOPS または 120 MB/秒)と比較したものです。

I/O の種類 I/O のパターン 7,200 RPM SATA ドライブと同等の性能を得るために必要なサイズ
標準永続ディスク SSD 永続ディスク
小規模でランダムな読み取り 小規模でランダムな読み取り 75 IOPS 100 GB 3 GB
小規模でランダムな書き込み 小規模でランダムな書き込み 75 IOPS 50 GB 3 GB
大量のストリーミング読み取り 120 MB/秒ストリーミング読み取り 1,000 GB 250 GB
大量のストリーミング書き込み 120 MB/秒ストリーミング書き込み 1,000 GB 250 GB

価格対パフォーマンス

アプリケーションで使用するボリューム タイプとサイズを選択する場合、複数の情報を検討する必要がありますが、ボリュームの使用料金は考慮する必要がありません。永続ディスクには I/O あたりのコストはないので、ディスク費用の予算を計算するために、毎月の I/O 量を見積もる必要はありません。ただし、IOPS 指向のワークロードの場合は、月あたりのコストを分析して、IOPS あたりの料金を比べてみることもできます。

以下の料金計算の例では、米国での永続ディスクの料金を使用します。これらの例で、標準永続ディスクと SSD 永続ディスクの相対的なコストを比較してみましょう。標準永続ディスクの料金は、1 GB あたり $0.040 で、SSD 永続ディスクは 1 GB あたり $0.170 です。ボリュームのサイズを大きくすると、追加コストなしでパフォーマンスの上限が自動的に上がります。

永続ディスクの IOPS あたりの料金を調べるには、1 か月の GB あたり料金を GB あたりの IOPS 数で割ります。次の表は、GB あたりのランダム読み取り IOPS の料金を計算しています。同じ計算式で、書き込み IOPS あたりの料金も計算できます。

ディスクタイプ 料金(GB 単位/月) 読み取り IOPS/GB IOPS/GB あたりの料金
標準永続ディスク $0.040 0.75 $0.040÷0.75=$0.0533
SSD 永続ディスク $0.170 30 $0.170÷30=0057

パフォーマンスの上限に影響する要因

インスタンスの vCPU 数とボリューム サイズ

永続ディスク IOPS およびスループットのパフォーマンスは、インスタンスの vCPU の数と IO ブロックサイズによって変わります。

SSD 永続ディスクは、ランダム読み取りの上限である 100,000 IOPS には 3,334 GB で、ランダム書き込みの上限である 30,000 IOPS には 1,000 GB で到達します。これに対し、標準永続ディスクは、ランダム読み取りの上限である 3,000 IOPS には 4 TB で、ランダム書き込みの上限である 15,000 IOPS には 10 TB で到達します。

SSD 永続ディスクは、レイテンシが 10 ミリ秒未満となるよう設計されています。測定されるレイテンシはアプリケーションに固有のものです。

標準永続ディスク

標準永続ディスクのパフォーマンスは、VM のパフォーマンスの上限まで直線的にスケールします。インスタンスの vCPU が 16 個以上の場合、標準永続ディスクのパフォーマンスが制限されることはありません。

下りネットワークの上限は vCPU の数に比例するため、インスタンスの vCPU が 8 個未満の場合、スループットに対して書き込み上限が低下します。実際の書き込みスループットは I/O のサイズによって変わります(IOPS レベルが同じなら、16 KB I/O は 8 KB I/O よりスループットを多く消費します)。

標準永続ディスクの IOPS とスループットのパフォーマンスは、以下のインスタンスごとの上限に達するまで、ディスクのサイズに比例して直線的にスケールします。

  • 読み取りスループット: 10 TB のディスクサイズで最大 1,200 MB/秒。
  • 書き込みスループット: 3.4 TB のディスクサイズで最大 400 MB/秒。
  • 読み取り IOPS: 10 TB のディスクサイズで最大 7,500 IOPS。
  • 書き込み IOPS: 10 TB のディスクサイズで最大 15,000 IOPS。

永続ディスクのパフォーマンスの利点を既存のインスタンスで実現するには、永続ディスクのサイズを変更して、永続ディスクごとの IOPS とスループットを増やします。

ボリューム サイズ(GB) 持続ランダム IOPS 持続スループット(MB/秒)
読み取り
(16 KB/IO 以下)
書き込み
(8 KB/IO 以下)
書き込み
(16 KB/IO)
読み取り 書き込み
10 * * * * *
32 24 48 48 3 3
64 48 96 96 7 7
128 96 192 192 15 15
256 192 384 384 30 30
512 384 768 768 61 61
1,000 750 1,500 1,500 120 120
1,500 1,125 2,250 2,250 180 180
2,048 1,536 3,072 3,072 245 245
4,000 3,000 6,000 6,000 480 400
5,000 3,750 7,500 7,500 600 400
8,192 6,144 12,288 7,500 983 400
10,000** 7,500 15,000 7,500 1,200 400
65,536 7,500 15,000 7,500 1,200 400

* このボリューム サイズはブート ボリュームにのみ使用してください。I/O バースト機能により、ブート ボリュームのパフォーマンスがここで説明した線形的な基準よりも高くなります。

** 上限に近いスループットは、CPU 使用率とリソースの可用性に依存するため、パフォーマンスの変動が予想されます。

SSD 永続ディスク

SSD 永続ディスクの IOPS パフォーマンスは、ディスクサイズだけでなく、インスタンスの vCPU の数によっても異なります。パフォーマンスは、ボリュームの上限または各 Compute Engine インスタンスの上限に達するまで、直線的にスケールします。

たとえば、ボリューム サイズが 1,000 GB の SSD 永続ディスクがあるとします。下の表によると、読み取りの上限は 30,000 IOPs となります。ただし、vCPU が 4 つしかないインスタンスを使用する場合、読み取りの上限は 15,000 IOP となります。

書き込みスループットに対する下りネットワークの上限のため、コア数の少ない VM では書き込み IOPS とスループットが低くなります。詳細については、書き込みスループットの下りネットワーク上限をご覧ください。SSD 読み取り帯域幅や IOPS の上限付近での不変性は、上りネットワークの利用率に大きく依存します。特に IOPS 上限に近い 16 KB I/O の場合、多少の変動が予想されます。

インスタンスの vCPU 数 持続ランダム IOPS 持続スループット(MB/秒)
読み取り
(8 KB/IO 以下)
読み取り
(16 KB/IO 以下)
書き込み
(8 KB/IO 以下)
書き込み
(16 KB/IO)
読み取り* 書き込み
1 vCPU 15,000 15,000 9,000 4,500 240 72
2~3 vCPU 15,000 15,000 15,000 4,500/vCPU 240 72/vCPU
4~7 vCPU 15,000 15,000 15,000 15,000 240 240
8~15 vCPU 15,000 15,000 15,000 15,000 800 400
16~31 vCPU 25,000 25,000 25,000 25,000 1,200 800
32~63 vCPU 60,000 60,000 30,000 25,000 1,200 800
64 以上の vCPU** 100,000 75,000 30,000 25,000 1,200 800

* I/O ブロックサイズが 256 KB 以上の場合の最大スループット。

** CPU を最大限使用しても最大パフォーマンスが実現できるとは限りません。

既存インスタンスの SSD 永続ディスクのパフォーマンスを向上させるには、インスタンスのマシンタイプを変更して VM あたりの上限を増やし、永続ディスクのサイズを変更して永続ディスクごとの IOPS とスループットを増やします。

ボリューム サイズ(GB) 持続ランダム IOPS 持続スループット(MB/秒)
読み取り
(8 KB/IO 以下)
読み取り
(16 KB/IO 以下)
書き込み
(8 KB/IO 以下)
書き込み
(16 KB/IO)
読み取り 書き込み
10 300 300 300 300 4.8 4.8
32 960 960 960 960 15 15
64 1,920 1,920 1,920 1,920 30 30
128 3,840 3,840 3,840 3,840 61 61
256 7,680 7,680 7,680 7,680 122 122
500 15,000 15,000 15,000 15,000 240 240
834 25,000 25,000 25,000 25,000 400 400
1,000 30,000 30,000 30,000 30,000 25,000 480 480
1,334 40,000 40,000 30,000 25,000 640 640
1,667 50,000 50,000 30,000 25,000 800 800
2,048 60,000 60,000 30,000 25,000 983 800
4,096 100,000 75,000 30,000 25,000 1,200 800
8,192 100,000 75,000 30,000 25,000 1,200 400
16,384 100,000 75,000 30,000 25,000 1,200 400
32,768 100,000 75,000 30,000 25,000 1,200 400
65,536 100,000 75,000 30,000 25,000 1,200 400

マシンタイプ

コンピューティング最適化マシンタイプは、vCPU ごとの永続ディスクのパフォーマンス上限が他のマシンタイプとは異なります。次の表に、これらの上限を示します。

ボリュームごとのパフォーマンスは、標準ディスク パフォーマンスSSD ディスク パフォーマンスで説明されているものと変わりません。

C2 標準永続ディスク

インスタンスの vCPU 数 持続ランダム IOPS 持続スループット(MB/秒)
読み取り
(16 KB/IO 以下)
書き込み
(8 KB/IO 以下)
書き込み
(16 KB/IO)
読み取り* 書き込み
4 vCPU 3,000 4,000 4,000 240 240
8 vCPU 3,000 4,000 4,000 240 240
16 vCPU3,000 4,000 4,000 240 240
30 vCPU 3,000 8,000 8,000 240 240
60 vCPU 3,000 15,000 15,000 240 240

C2 SSD 永続ディスク

インスタンスの vCPU 数 持続ランダム IOPS 持続スループット(MB/秒)
読み取り
(16 KB/IO 以下)
書き込み
(8 KB/IO 以下)
書き込み
(16 KB/IO)
読み取り* 書き込み
4 vCPU 4,000 4,000 4,000 240 240
8 vCPU 4,000 4,000 4,000 240 240
16 vCPU8,000 4,000 4,000 320 240
30 vCPU 15,000 8,000 8,000 600 240
60 vCPU 30,000 15,000 15,000 1,200 400

同時読み書き

標準の永続ディスクの場合、同時に行われる読み書き込みは同じリソースを共有します。インスタンスで読み取りスループットまたは IOPS が大きくなると、実行できる書き込み量が少なくなります。逆に、インスタンスの書き込みスループットが増加すると、実行可能な読み取り量が減少します。

SSD 永続ディスクでは、読み取りスループットの上限と書き込みスループットの上限には同時に到達できますが、これは IOPS には当てはまりません。つまり、SSD 永続ディスクで読み取りと書き込みの上限に同時に到達することはできません。同時読み書きの間に読み取りと書き込みのスループットの上限を達成するには、IOPS のボトルネックに達することなく、ボリュームがスループットの上限を満たすことができるように、I/O サイズを最適化します。

同時読み書きでのインスタンスの IOPS の上限:

次の表に、I/O サイズが 8 KB の IOPS 値を示します。16 KB など他の I/O サイズでは IOPS 値も異なりますが、読み取りと書き取りの配分は同じです。

標準永続ディスク SSD 永続ディスク(8 vCPU) SSD 永続ディスク(32 vCPU 以上)
読み取り 書き込み 読み取り 書き込み 読み取り 書き込み
7,500 IOPS 0 IOPS 15,000 IOPS 0 IOPS 60,000 IOPS 0 IOPS
5,625 IOPS 3,750 IOPS 11,250 IOPS 3,750 IOPS 45,000 IOPS 7,500 IOPS
3,750 IOPS 7,500 IOPS 7,500 IOPS 7,500 IOPS 30,000 IOPS 15,000 IOPS
1,875 IOPS 11,250 IOPS 3,750 IOPS 11,250 IOPS 15,000 IOPS 22,500 IOPS
0 IOPS 15,000 IOPS 0 IOPS 15,000 IOPS 0 IOPS 30,000 IOPS

同時読み書きでのインスタンスのスループットの上限:

標準永続ディスク SSD 永続ディスク(8 vCPU) SSD 永続ディスク(16 vCPU 以上)
読み取り 書き込み 読み取り 書き込み 読み取り 書き込み
1,200 MB/秒 0 MB/秒 800 MB/秒* 400 MB/秒* 1,200 MB/秒* 400 MB/秒*
900 MB/秒 100 MB/秒
600 MB/秒 200 MB/秒
300 MB/秒 300 MB/秒
0 MB/秒 400 MB/秒

* SSD 永続ディスクの場合、最大読み取りスループットと最大書き込みスループットは互いに独立しているため、これらの制限は一定です。

大容量論理ボリュームのパフォーマンス

永続ディスクのサイズの上限は 64 TB で、VM 内の論理ボリューム管理機能を使用して、最大 257 TB の単一論理ボリュームを作成できます。ボリューム サイズが大きくなると、次のようにパフォーマンスに影響を及ぼします。

  • すべてのローカル ファイル システムが、この規模でうまく動作するわけではありません。マウントやファイル システムのチェックなどの一般的な操作には、時間がかかる場合があります。

  • 永続ディスクの最大パフォーマンスは、より小さいサイズで得られます。1 つの VM でこの大きさのストレージをすべて読み取りや書き込みするには、ディスクでの処理に時間がかかります。アプリケーションが対応している場合は、複数の VM を使用して、システム全体のスループットを向上させることを検討してください。

  • 大きな永続ディスクのスナップショットを取ると、完了まで予想以上に時間がかかる場合があり、アプリケーションとの密な連携が行われず、論理ボリュームのビューに矛盾が生じる可能性があります。

書き込みスループットの下りネットワーク上限

永続ディスクへの書き込み操作を行うたびに、仮想マシン(VM)インスタンスの累積下りネットワークの上限に対し加算されます。

VM インスタンスが実行できる永続ディスクの最大書き込みトラフィックを計算するには、2 Gbit/秒/vCPU のネットワーク上限からインスタンスの他の下りネットワーク トラフィックを差し引きます。残りのスループットが、永続ディスクの書き込みトラフィックに利用可能なスループットを表します。

Compute Engine は永続ディスクにデータを保存するため、組み込み済みの冗長性があります。インスタンスは、この冗長性を実現するために、永続ディスクにデータを 3 回並列に書き込みます。さらに、各書込みリクエストには、下り帯域幅を使用する一定量のオーバーヘッドがあります。

各インスタンスでは、VM の下りネットワークの上限に基づいて永続ディスクの書き込みが制限されています。下りネットワークで永続ディスクが IP トラフィックと競合している場合、下りネットワークの上限の 60% が永続ディスクのトラフィックに割り当てられ、IP トラフィックは 40% になります。次の表は、追加の IP トラフィックがある場合とない場合で予想される永続ディスクへの書き込み帯域幅を示しています。

標準永続ディスク SSD 永続ディスク
vCPU 数 標準永続ディスクの書き込み上限(MB/秒) 標準永続ディスクの書き込み割り当て(MB/秒) 上限に達するのに必要な標準ボリューム サイズ(GB) SSD 永続ディスクの書き込み上限(MB/秒) SSD 永続ディスクの書き込み割り当て(MB/秒) 上限に達するのに必要な SSD 永続ディスクサイズ(GB)
1 72 43 600 72 43 150
2 144 86 1,200 144 86 300
4 240 173 2,000 240 173 500
8 以上 400 346 3,334 400 346 834

この表の値がどのように計算されたかを理解するため、1 つの vCPU と標準の永続ディスクを使用した簡単な例で考えてみましょう。この例では、書き込みリクエストごとの帯域幅乗数の近似値が 3.3× になっています。つまり、データは 3 回書き出され、合計オーバーヘッドは 10% です。下りの上限を求めるには、下りネットワークの上限の 2 Gbit/秒(238 MB/秒)を(3.3)で割ります。

1 つの vCPU の最大書き込み帯域幅=238÷3.3≓72 MB/秒(標準永続ディスク)

前に示したパフォーマンスの表で示されている標準永続ディスクの GB あたり書き込みスループットの値を使用することにより、このパフォーマンスを達成するために必要なディスク容量を導出できます。

最大書き込み帯域幅の実現に必要な 1 vCPU あたりのディスク容量=72÷0.12≓600 GB

ゾーン永続ディスクと同様に、リージョン永続ディスクからの書き込みトラフィックは、VM インスタンスの累積下りネットワークの上限に対し加算されます。リージョン永続ディスクで使用できる下りネットワークを計算するには、6.6 という係数を使用します。

1 つの vCPU の最大書き込み帯域幅=238÷6.6≓36 MB/秒(標準複製対象永続ディスク)

16 コア以上の VM に対しては、書き込みスループットが 400 MB/秒から最大 800 MB/秒まで増加しても、永続ディスクの書き込みに消費されする下りネットワーク最大帯域幅は変化せず、1,320 MB/秒(400 MB/秒 * 3.3)に維持されます。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Compute Engine ドキュメント