フラッシュストレージはメモリ技術そのもので、可動部品なしでデータを保存する電子チップを指す。SSDはフラッシュを中心に構成された完成品で、コントローラー、ファームウェア、インターフェースを備える。両者は競合する選択肢ではないため、購入時に問うべきなのは、必要なNANDの種類、インターフェース、耐久性の指標だ。
フラッシュはチップ、SSDはそれを中心に構成された製品
フラッシュストレージはメモリ技術そのもの、つまり可動部品なしでデータを保存する電子メモリチップを指す。一方、SSDストレージはフラッシュメモリを使ってHDDを置き換える完全なストレージデバイスを指すと、IBMによると、フラッシュは不揮発性で、シリコン上のメモリセルに電荷としてデータを保存するため、電源を切ってもデータを保持できる。この特性から、フラッシュはストレージドライブ以外にも広く使われている。USBメモリ、メモリカード、スマートフォン、カメラもフラッシュを利用していると、Pure Storageも指摘している。
USBメモリやSDカードも同じフラッシュ技術を使うが、どちらもSSDではない。Pure Storageが指摘するように、SSDたらしめているのはNANDの存在そのものではなく、生のチップを取り巻くコントローラー、ファームウェア、インターフェースだ。この追加レイヤーこそが、両者の用語をめぐる混乱の大半が生じる場所であり、ドライブ間の意味のある違いが実際に現れる部分でもある。
NANDとNOR、そしてNAND内部のセル方式によるトレードオフ
フラッシュはNANDとNORの2つの系統に分かれる。IBMによると、NANDは高密度、小さなセルサイズ、高速な書き込み・消去を実現する一方、NORはそれらを犠牲にして、ビット当たりのコストが高い代わりに高速な読み出しとランダムアクセス性能を得ている。そのため、NORはSSDではなく、主にファームウェアや組み込み用途で使われ続けている。
現代のSSDのほぼすべてが、密度、性能、コスト面で有利なNANDを基盤としている。NANDセルは、閉じ込めた電子を保持するフローティングゲートトランジスターとしてデータを保存すると、Computer Compatibilityによると。
NAND内部で購入者にとって実際に重要なのは、セルの種類だ。SLC(1セル当たり1ビット)は最も高速で耐久性にも優れるが、価格も最も高く、Computer Compatibilityによれば、コンシューマー向けSSDでネイティブNANDとして使われることはまれで、主にエンタープライズ向けや軍用グレードのストレージに採用される。TLC(1セル当たり3ビット)は、速度、容量、耐久性のバランスが取れた主流方式だ。QLC(1セル当たり4ビット)は、書き込み速度と耐久性を犠牲にして高密度化とギガバイト当たりの低コストを実現する。Computer Compatibilityが指摘するように、4TB以上の低価格ドライブや大容量モデルで一般的だ。
NANDチップに加えてSSDが備えるもの
SSDはNANDをブロックとセルに整理し、その上にコントローラーを重ねる。IBMによると、コントローラーはウェアレベリング(セル全体に均等に書き込んで寿命を延ばす処理)や、古いブロックを回収するガベージコレクションを担う。生のNANDチップは通常、このような管理を自ら行わない。チップの積み重ねを実用的なドライブに変えるのは、コントローラーとファームウェアの仕事だ。
オーバープロビジョニングは、ウェアレベリングとガベージコレクションを支え、時間が経っても書き込み性能を安定させるため、製品仕様の容量を超えて予備のNAND容量を確保する。SK Hynixが示すベンダーガイドでは、標準的なオーバープロビジョニングを7~28%としている。これはベンダー提供の数値であり、一定のルールに従うのではなく、SSDのグレードによって異なる。こうした仕様は容量、構成、製品階層によって変わるため、見積もりを確認する際は、正確なSKUとファームウェアのリビジョンを参照しているデータシートと照合すべきだ。耐久性の数値が実際のワークロードにとって重要なら、発注を確定する前に、実際のブロックサイズでの数値をベンダーに尋ねたい。
多くのドライブは、高速な擬似SLC書き込みキャッシュにも依存している。これはTLCまたはQLC NANDの一部を一時的に1ビットモードで動作させ、初期の書き込みを高速化するものだ。Computer Compatibilityによれば、キャッシュが満杯になるまでは高速な書き込みが可能だが、その後は速度が低下する。このボトルネックはドライブ全体の容量ではなく、1回のセッションで書き込むデータ量に左右される。
ドライブ全体の使用率は、別の、より緩やかに影響する要因だ。同じSK Hynixのガイドでは、ドライブが約80%まで埋まると持続書き込み性能が大幅に低下する可能性があるとしている。これはウェアレベリングとガベージコレクションに使える予備ブロックが減ることを反映した、ベンダーが確認した閾値であり、そのため容量の10~20%を空けておくよう推奨している。キャッシュの枯渇によるものか、全体の空き容量によるものかを問わず、性能低下の度合いは、単一の普遍的な閾値ではなく、コントローラーのファームウェア、キャッシュサイズ、ワークロードによって決まる。
インターフェース、フォームファクター、耐久性評価
SATA SSDは6Gb/sのSATAバスによって約550MB/秒に制限される。一方、NVMeはPCIeレーン経由でCPUと直接通信し、この上限を完全に回避するとComputer Compatibilityは報告している。NVMe Gen 4ドライブは通常、4,500~7,000MB/秒で動作する。IBMによれば、すべてのNVMeデバイスはSSDに該当するが、その逆は成り立たない。旧型や低価格のドライブは現在もSATA接続で出荷されているためだ。
M.2は物理的なフォームファクターであり、インターフェースではない。IBMによると、M.2ドライブの内部インターフェースはNVMeの場合もSATAの場合もある。一方、2.5インチはSATA互換性が必要なシステムで一般的な選択肢だ。
耐久性は通常、データシート上で総書き込みバイト数、つまりTBWとして公開される。Micronの6550 ION SSDシリーズのデータシートには、ベンダー提供の仕様として、128KBランダム書き込みテスト時の耐久性を最大112,000TB書き込みと記載している。同じデータシートの別の箇所では、4KBランダム書き込みパターンの場合、この数値は28,000TBまで低下する。ブロックサイズによるこの差こそ、SK Hynixのガイドが、同じ容量のすべてのドライブが同じ速度で消耗すると考えるのではなく、データシートに記載された保証期間とワークロードの前提を確認するよう勧める理由だ。
クイックリファレンス:SSD購入前に確認すべきこと
購入者が実際に判断する5つの軸で比較すると、次のようになる。
| 項目 | 確認事項 | 重要な理由 |
|---|---|---|
| NANDの種類 | SLC、TLC、QLCのいずれか | 速度と耐久性を容量とコストと引き換えにする |
| インターフェース | SATAかNVMeか、PCIeの世代 | シーケンシャルスループットの上限を決める |
| フォームファクター | 2.5インチかM.2か | 物理的互換性とインターフェース互換性 |
| 耐久性 | データシート上のTBW(書き込みバイト数) | 想定される書き込み量と一致させる必要がある |
| キャッシュの挙動 | ネイティブSLCか擬似SLCか | キャッシュが空になった後の持続書き込み速度を決める |
クライアント向けドライブとエンタープライズ向けドライブの主な違いは、オーバープロビジョニングと耐久性の余裕にある。SK Hynixによれば、エンタープライズSSDは、より高く安定した書き込み負荷を維持できるよう、より多くの予備容量を確保して構成されるのが一般的だ。そのため、ドライブの対象市場は、それが目指して設計された耐久性の階層を知るための便利な目安になる。速度や耐久性の見出し上の数値は、保証としてではなく、テスト条件(ブロックサイズ、キューの深さ、ワークロード)と併せて読むべきだ。
SSDとHDD:押さえておくべき唯一の比較
ここまでの説明は、SSDが用途に適したツールであることを前提としている。通常はその通りだが、常にそうとは限らない。本当のトレードオフが残るのはこの部分だ。Pure Storageによると、SSDは可動部品のない小型の回路ベースのデバイスであるのに対し、HDDは磁気プラッターを回転させる。同社の比較では、SSDはHDDの最大14倍高速だとしているが、これは普遍的な比率ではなく、一例として扱うべきベンダー主張だ。Pure Storageはまた、SSDは一般にギガバイト当たりの価格が高く、同じ価格帯ではHDDの生の容量にはかなわないと指摘している。
このコストと容量の差があるため、SSDとHDDを組み合わせるハイブリッドストレージは今も存在する。容量を重視し、レイテンシーの影響が比較的小さいデータについて、性能と価格のバランスを取るためだ。
実用上の目安はこうだ。レイテンシーやIOPSが重要なワークロードには、SSDと、前述のセクションで説明した適切なNANDとインターフェースの組み合わせを選ぶ。速度よりもギガバイト当たりのコストが重要な、大量かつアクセス頻度の低いデータには、HDDまたはハイブリッド階層を充てる。
要点:「フラッシュとSSD」ではなく、NANDの種類、インターフェース、耐久性を尋ねる
フラッシュとSSDを比較することは、そもそも正しい問いではなかった。IBMの定義によれば、フラッシュは基盤となるチップ技術であり、SSDは、そのチップをドライブとして使えるようにするために構成された完成品だ。コントローラー、ファームウェア、キャッシュ、インターフェースを含んでいる。
SSDごとに意味のある違いは、上述のチェックリストにまとめたとおり、NANDの種類、インターフェース、フォームファクター、耐久性評価にある。一般的な割合に頼るのではなく、TBWの数値と、その前提となるワークロードをメーカーのデータシートで確認しよう。
スペックシートに記載された速度、密度、耐久性の数値を信頼する前に、ブロックサイズ、キューの深さ、その数値がバースト性能を示すのか持続性能を示すのかなど、測定条件を確認すべきだ。これらの数値は最良条件でのシナリオを示すもので、実際のワークロードに対する保証ではない。特定のドライブが自分の環境で実際にどう動作するかを知る唯一の方法は、購入注文を確定する前に、自分の読み書きの組み合わせでテストすることだ。