SSD オーバープロビジョニング (OP) を理解する

オーバープロビジョニングの比率 (%) =

物理容量 - ユーザーが利用可能な容量


ユーザーが利用可能な容量

オーバープロビジョニング比率の計算式

ソリッドステートドライブ (SSD) は、(高さ、幅、長さなどの)物理的な寸法や、(SATA や SAS インターフェースなどの) 外部インターフェースはハードディスクドライブ (HDD) とほぼ同じですが、内部の機械レベルの動作や、SSD の構成部品は、HDD の磁気性回転プラッターのデザインとは大幅に異なります。

SSD の製造後、SSD メーカーはファームウェアのプログラミング時に「オーバープロビジョニング (OP)」という技法を用いて、ドライブの総容量の一部を別途確保できます。オーバープロビジョニングは、SSD のパフォーマンスや耐久性を向上させることができ、耐用年数を通じて NAND フラッシュの摩耗を低減するフラッシュ NAND ストレージを持つ SSD コントローラにより、ドライブの長寿命を実現します。

物理容量ユーザーが利用可能な容量性能設定用の容量の比率 (%)アプリケーションクラス
64GB 60GB 7% 集中的な読み取り
96GB 90GB 7% 集中的な読み取り
128GB 120GB 7% 集中的な読み取り
128GB 100GB 28% 集中的な書き込み
256GB 240GB 7% 集中的な読み取り
256GB 200GB 28% 集中的な書き込み
512GB 480GB 7% 集中的な読み取り
512GB 400GB 28% 集中的な書き込み
1024GB 960GB 7% 集中的な読み取り
1024GB 800GB 28% 集中的な書き込み
2048GB 1800GB 14% 集中的な読み取り
2048GB 1600GB 28% 集中的な書き込み
性能設定用に割り当てられたディスク容量と、アプリケーションクラス

ユーザーが一般的に 20% の書き込みと 80% の読み取りを行う一般的なクライアントによる作業負荷の場合、アプリケーションによっては読み取りが集中する場合があります。読み取りキャッシュ用のストレージデバイスを使用するエンタープライズ・アプリケーションで、読み取りが集中します。このようなアプリケーションでは、ストレージデバイスへのより多くのデータ書き込みが行われ、さらに書き込みが集中します。

SSD メーカーによって設定される性能設定用のディスク容量は、SSD のアプリケーションクラスや NSND フラッシュメモリの総容量によって、大きく異なる可能性があります。

ガーベジコレクション、スペアブロック、および強化されたデータ保護機能の使用に伴い、更に多くの NAND フラッシュの管理でのリソース要求が増すため、オーバープロビジョニングのための容量を拡張して、更なる大容量と異なるアプリケーションクラスのドライブに対応するように一般的に構成されます。

このオーバープロビジョニングのための記憶域はユーザーがアクセスすることはできず、ホストのオペレーティングシステムからは見えません。SSD コントローラの使用に限定されます。

オーバープロビジョニング (OP) の利点

OP により SSD の耐久性を向上させる方法

各 NAND フラッシュメモリのダイは、更に複数のページを含んだ複数のブロックで構築されます。

NAND フラッシュはページレベルで読み書きが可能ですが、イレーズはブロックレベルでのみ可能です。

あるブロック内のすでにプログラミング済のページで、単一ページの変更またはイレーズが必要な場合は、複数のページから成る全体のブロックコンテンツを最初に一時メモリに読み出し、新しいブロックコンテンツを同じブロックアドレスにプログラミングできるようにする前に、イレーズしなければなりません。

このような「冗長な」読み出し~変更~書込みサイクルを行わずに、NAND フラッシュ内のブロックにページを直接書き込むことができる唯一の方法は、ページを空き状態にしておくことです。

多数のブロックを空き状態に保ったまま、オーバープロビジョニングでパフォーマンスを一定に維持することにより、特にランダム書き込みのシナリオでは、最も高い書き込み増幅率 (WAF) が得られます。1

SSD の耐久性を向上させる方法

オーバープロビジョニングを用いて SSD を構成する理由と、SSD コントローラに対する利点を理解するには、SSD の基本的な動作方式と、不揮発性の NAND フラッシュメモリの制限事項をよく理解する必要があります。

それぞれの NAND フラッシュセルは、そのプログラムとイレーズ回数 (P/E) に基づいた有限の予想寿命を持っており、NAND フラッシュメモリのメーカーでの製造行程時に特徴付けられます。これは NAND フラッシュセルで実行される各プログラムおよびイレーズ機能が、フラッシュセルの記憶や電荷の信頼性を低下させ、結果的にデータの整合性を脅かすことになるためです。

しかし NAND の構造が平面から立体に移行するにつれて、NAND の耐久性が向上するとともにダイの密度が高くなり、また製造コストが低下したため、SSD が手頃な価格になっています。

要約すると、SSD の耐久性に影響する主要要素は、以下の3つです:
  • NAND フラッシュのプログラミング/イレーズ回数、および読み取り/プログラミング/イレーズ動作の難易度 (この場合のジオメトリーには、2D 対 3D の製造テクノロジーが含まれます)
  • SSD 容量
  • SSD コントローラの容量と効率 (ガーベジコレクション、書き込み増幅率、ブロック管理、ウェアレベリング、誤り訂正符号)

OP による性能と耐久性の維持

SSD が無効なページで一杯になるような状況を避けるために、SSD のガーベジコレクション機能により、一時的な作業スペースとして性能設定領域が用いられ、予定された有効なページのマージを管理し、無効な (または削除された) ページで満たされたブロックが取り戻されます。

取り戻されたページ/ブロックはその後で性能設定の容量に追加され、SSD コントローラからの書き込み動作に対応し、またトラフィック負荷のピーク時にパフォーマンスを最大化します。読み取り、イレーズ、変更、および書き込みの性能上の影響として、すでに無効なページで満たされて部分的に一杯になったブロックに戻されたすべての有効なページは、実行速度が遅くなる可能性があります。

ガーベジコレクションはオペレーティングシステムとは独立して動作し、活動性が低い時に定期的に、自動的にトリガーされるか、またはガーベジコレクションの予定を決めるために、対応する ATA データセット管理の TRIM コマンドの発行によりトリガーされます。

SSD コントローラはトラフィック負荷のピーク時に SSD の全体性能に影響を与えずに、すべての NAND フラッシュメモリセル間で書き込み動作のインテリジェントな再分配を行うため、性能設定機能を介して常に利用可能な空きブロック数が、NAND フラッシュの有効なウェアレベリングの維持を支援することになります。

また ATA データセット管理の TRIM コマンドは、無効なページや使用しないユーザーの容量を取り戻すことにより、SSD の利用可能な領域に追加することができます。

Formatted Drive CapacityOver-Provisioning SizeSequential Read/WriteSteady-State 4k Read/WriteTBW (JEDEC Enterprise1)DWPD2
480GB (DC500R) 7% 550/500MB/s 98,000/12,000 IOPS 438 0.5
480GB (DC500M) 32% 555/520MB/s 98,000/58,000 IOPS 1139 1.3
960GB (DC500R) 7% 555/520MB/s 98,000/20,000 IOPS 876 0.5
960GB (DC500M) 32% 555/520MB/s 98,000/70,000 IOPS 2278 1.3
1920GB (DC500R) 7% 555/520MB/s 98,000/24,000 IOPS 1752 0.5
1920GB (DC500M) 32% 555/520MB/s 98,000/75,000 IOPS 4555 1.3
3840GB (DC500R) 7% 555/520MB/s  98,000/28,000 IOPS  3504  0.5
3840GB (DC500M)  32% 555/520MB/s  98,000/75,000 IOPS 9110  1.3
Over-provisioning based on capacity and application class

OP の効果を理解するために、イラストの Kingston 製エンタープライズ SSD の DC500R SSD を検討します。これらの SSD は最大容量が 3.84TBで、各ユーザーは Kingston SSD Manager ツールを使用して、オーバープロビジョニングを調整できます。OP のサイズを調整することにより、7% 以上の OP レベルで、パフォーマンスと耐久性向上の効果を得ることができます。

各ペアの容量を比較すると、次のようになります。
  1. 各ペア内の大容量ドライブ (低い OP) は、同じ転送速度 (帯域) を維持できますが、IOPS (ランダム書き込み IO/秒) は大きく低下します。これは、OP が低い各ドライブは読み取りが集中するアプリケーションにおいて良好でも、 32% OP のドライブで比較した場合、書き込みが集中するアプリケーションにおいては動作が遅くなる可能性があることを意味します。
  2. またオーバープロビジョニングが低いことは、各ドライブの書き込みバイト総数 (TBW) が低下することを意味します。OP のパーセント値が大きくなるほど、SSD の寿命は長くなります。960GB の DC500R は、最大 876TB のデータ書き込みが可能で、800GB の DC500R は 860TBW を達成可能です。Kingston の書き込みバイト総数 (TBW) は、JEDEC Workload Reference1 に基づきます。
  3. 保証期間を通じて TBW 値を DWPD (1日あたりのドライブ書き込み数) に変換した場合、 32% の OP を持つドライブは、1 日あたりの書き込み数の約 2 倍に達します。書き込みが集中するアプリケーションで、 32% の OP が推奨されるのはこのためです。