複数の(ただし、最近ではない)情報源は、ドライブの摩耗を減らすために、SSDスペースの約7%を未割り当てのままにしておくことを示唆しています。今のところまだ有効ですか、それとも状況は変わりましたか?
複数の(ただし、最近ではない)情報源は、ドライブの摩耗を減らすために、SSDスペースの約7%を未割り当てのままにしておくことを示唆しています。今のところまだ有効ですか、それとも状況は変わりましたか?
回答:
通常、WindowsはTRIMを使用します。つまり、ファイルシステムにX%の空き領域がある限り、ドライブはX%を未割り当てとして認識します。[*]オーバープロビジョニングは不要です。
例外:歴史的に、Sandforceコントローラー/ファームウェアを搭載したSSDは、TRIM :(。
フルドライブのパフォーマンスの低下は著しく、他のドライブよりも大きくなる可能性があります。これは、書き込みの増幅率が高くなるため、摩耗が増加します。出典:Anandtechレビュー。
したがって、以下の場合にのみ必要です。
LinuxでTRIMを有効にするのはそれほど難しくなく、問題に気付くことはほとんどありません。
幸いなことに、最も人気のあるブランドのいくつかは独自のコントローラーを作っています。Sandforceコントローラーは、以前ほど人気がありません。Sandforceの問題により、その特定の「スマート」コントローラーの設計について懐疑的になります。SandforceにおApび申し上げますが、影響を受ける正確なコントローラモデルのリファレンスはありません。
[*]断片化を減らすために、十分な空き領域があるようなファイルシステム。したがって、TRIMは素晴らしいです。2つの安全マージンを一緒に追加する必要がないため、同じ空きスペースがそれらの両方に役立ちます:)。ドライブは、割り当てられていないスペースを利用してパフォーマンスを向上させることができ、また、あなたが言うように高い摩耗を避けることができます。
最新のSSDコントローラーは十分にスマートであるため、日常的な使用では通常オーバープロビジョニングは必要ありません。ただし、主にデータセンター環境では、オーバープロビジョニングが推奨される状況がまだあります。オーバープロビジョニングが役立つ理由を理解するには、SSDの仕組みを理解する必要があります。
SSDはNANDフラッシュメモリと呼ばれるタイプのメモリを使用します。ハードドライブとは異なり、データを含むNANDセルは直接上書きできません。ドライブは新しいデータを書き込む前に既存のデータを消去する必要があります。SSDは、データの書き込みながら、さらに、ページサイズは典型的には4 KB KB 16にあり、彼らは唯一と呼ばれるページの大規模なグループでデータを消去することができ、ブロック現代のSSDで、サイズがいくつかあるMBに、通常、数百KB単位。
NAND の書き込み耐久性も限られています。ブロックを消去するために不必要にデータを書き換えないようにし、不均衡な数の書き込みをブロックが受け取らないようにするために、ドライブは書き込み、特に小さなランダム書き込みを異なるブロックに分散しようとします。書き込みが古いデータを置き換える場合、古いページを無効としてマークします。ブロック内のすべてのページが無効とマークされると、ドライブは有効なデータを書き換えることなく自由に消去できます。
ドライブの空き容量がほとんどまたはまったく残っていない場合、書き込みを分散できません。代わりに、ドライブは書き込みがドライブに送信されるとすぐにブロックを消去し、それらのブロック内の有効なデータを他のブロックに書き換える必要があります。これにより、ドライブに送信されるよりも多くのデータがNANDに書き込まれます。これは、書き込み増幅と呼ばれる現象です。書き込み増幅は、オンライントランザクション処理(OLTP)などのランダムな書き込み集中型のワークロードで特に顕著であり、パフォーマンスと耐久性が低下するため、最小限に抑える必要があります。
書き込みの増幅を減らすために、最新のシステムのほとんどはTRIMと呼ばれるコマンドをサポートしています。このコマンドは、有効なデータが含まれていないブロックを消去できるようにドライブに指示します。ドライブは、オペレーティングシステムによって論理的に削除されたデータがまだ有効であると想定する必要があるため、ドライブが適切な空き領域を維持できないため、これが必要です。
ただし、ドライブが外部エンクロージャーにある場合(ほとんどのエンクロージャーはTRIMをサポートしていない場合)、またはドライブが古いオペレーティングシステムで使用されている場合など、TRIMは不可能な場合があります。さらに、非常に集中的なランダム書き込みワークロードでは、書き込みは基盤となるNANDの大きな領域に分散されます。つまり、ドライブがいっぱいになっていなくても、データの強制書き換えとそれに伴う書き込み増幅が発生する可能性があります。
最も初期のSSDのファームウェアは成熟度がはるかに低く、必要以上にデータを書き換える傾向がありました。初期のIndilinxおよびJMicronコントローラー(JMF602は、utter音や極度のランダム書き込みパフォーマンスで悪名が高かった)が、集中的なランダム書き込みワークロード、時には100xを超える非常に高い書き込み増幅に悩まされていました。(1 MBを書き込もうとしているときに、100 MBを超えるデータをNANDに書き込むことを想像してください!)。より高い処理能力、改良されたフラッシュ管理アルゴリズム、TRIMサポートの利点を備えた新しいコントローラーは、これらの状況をよりよく処理できますが、重いランダム書き込みワークロードは、最新のSSDで10倍を超える書き込み増幅を引き起こす可能性があります。
オーバープロビジョニングは、ランダムな書き込みを処理し、データの強制的な書き換えを回避するために、ドライブに大きな空き領域を提供します。すべてのSSDは、少なくともある程度はオーバープロビジョニングされています。GBとGiBの違いのみを使用してドライブが動作するためのスペアスペースの約7%を提供するものもあれば、特定のアプリケーションのニーズに合わせてパフォーマンスを最適化するためにオーバープロビジョニングを増やすものもあります。たとえば、書き込みが多いOLTPまたはデータベースワークロード向けのエンタープライズSSDには、NANDが同量の一般的な480から512 GBの一般的なSSDではなく、512 GiBの物理NANDがありながら、400 GBのアドバタイズされた容量がある場合があります。
ワークロードが特に厳しい場合、またはTRIMがサポートされていない環境でドライブを使用している場合、一部のスペースが未使用になるようにドライブをパーティション分割することにより、スペースを手動でオーバープロビジョニングできます。たとえば、512 GB SSDを400 GBにパーティション分割し、残りのスペースを未割り当てのままにすると、ドライブは未割り当てスペースをスペアスペースとして使用します。ただし、この未割り当て領域は、以前に書き込まれた場合は削除する必要があることに注意してください。そうしないと、ドライブがそのスペースを占有していると認識するため、メリットはありません。(ユーティリティを分割すると、これを行うにはスマート十分なはずですが、私は100%わからないんだけど、見る「?ないWindowsはSSDにパーティション化されていない(未フォーマット)のスペースをトリム」)
TRIMがサポートされている一般的なコンシューマー環境では、SSDは70%から80%未満であり、ランダム書き込みで連続的に非難されません。書き込み増幅は通常問題ではなく、一般的にオーバープロビジョニングは必要ありません。
最終的に、ほとんどの消費者は、書き込みの増幅率が高くても、ほとんどのSSDの耐用年数内でNANDを使い切るほどディスクに十分なデータを書き込まないため、眠りに落ちることはありません。
追加のスペースのサイズは、SSDドライブモデルによって大きく異なりますが、一般にこれは事実です。