Mac業界の最新動向はもちろん、読者の皆様にいち早くお伝えしたい重要な情報、
日々の取材活動や編集作業を通して感じた雑感などを読みやすいスタイルで提供します。

Mac Fan メールマガジン

掲載日: 更新日:

今どきのSSDにまつわる“本当”と“嘘” HDDより壊れにくい? 突然壊れる? 長期保管に向いている?

著者: 今井隆

今どきのSSDにまつわる“本当”と“嘘” HDDより壊れにくい? 突然壊れる? 長期保管に向いている?

※本記事は『Mac Fan』2022年5月号に掲載されたものです。

読む前に覚えておきたい用語

SSDはHDDより壊れにくいのか

IT機器のメインストレージが半導体ストレージデバイスであるSSD(Solid State Drive)に移行して久しい。iPhoneやiPadはもちろんのこと、MacBookシリーズやiMac、Mac miniやMac Proに至るまで、Appleの現行モデルのストレージデバイスは、この10年ほどの間にすべてHDD(Hard Disk Drive)からSSDへと置き換わった。


長らくIT機器のメインストレージの座を担ってきたHDDは、高速回転する磁気ディスクに磁気ヘッドでデータを記録する仕組みだ。HDDは磁気ディスク(プラッタ)を回転させるためのスピンドルモータと、その上を滑るようにスライドする磁気ヘッドを駆動するボイスコイルモータを備える。磁気ヘッドのプラッタからの浮上量はわずかに0.01ミクロンしかなく、両者の相対速度は100キロメートル毎時以上に達する。


そのような精細な構造ゆえにHDDは動作中の振動や衝撃に敏感で、落下はもちろんのこと、回転軸に対して垂直方向の衝撃に弱い。HDDが稼働中に衝撃を受けると磁気ヘッドがプラッタに接触し、プラッタに「スクラッチ」と呼ばれる回復不可能なダメージを与える。プラッタ上のスクラッチが発生した部位は、磁性体剥離によって記録されたデータを失うだけでなく、スクラッチから剥がれ落ちた磁性体やスクラッチ自体が磁気ヘッドと高速に再衝突することで二次的なスクラッチの原因となる。最終的にはプラッタ全体に磁性体剥離が進行、あるいは磁気ヘッドが致命的なダメージを受けて、HDDは修理不可能な故障へと至る。


一方、純粋な半導体部品だけで構成されているSSDは衝撃に強く、一般的な振動や衝撃程度では故障しない。しかし、SSDの記録媒体であるNANDフラッシュは「書き換え寿命」と呼ばれる回避不可能な寿命を持つ部品だ。しかもNANDフラッシュの記録素子であるセルの書き換え寿命は、皮肉にもプロセスの微細化と多値記録の進化によって世代を追うごとに短くなっている。

記録セルにデータを書き込むには、コントロールゲートに電圧を掛けることで電荷がトンネル酸化膜を突き破って浮遊ゲートに入り込む。その際にトンネル酸化膜が傷つき、書き換え回数に応じて劣化が進行する。

たとえば、2値記録のSLCのセルの書き換え寿命は5〜10万回、4値記録のMLCは2000〜5000回、現在主流となっている8値記録のTLCは数百回程度とされている。このように年々短くなるNANDフラッシュの寿命を補っているのが、大容量化とエラー補正能力の強化だ。


SSDは、NANDフラッシュのすべての記録ブロック(セルの集まり)の消耗が均等に進むように、動的にアドレス(セクター)を再配置して消耗を平均化する「ウェアレベリング」機能を備えており、使用頻度の高いブロックが早く寿命に達してしまうことを回避している。従って「書き込み量」がまったく同じであれば、SSDの寿命は「SSD容量にほぼ比例」する。

ウェアレベリングは、NANDフラッシュのブロックごとに書き換え回数のカウンタを設け、各ブロックを書き換え回数が均一になるように再配置することで、ブロック全体の摩耗率を平均化しSSDのストレージとしての寿命を延ばす技術だ。


つまり、SSDのセル寿命低下より大容量化の速度のほうが速いことから、今まで寿命の問題は大きくクローズアップされなかった。それでもSSDは有寿命であることに変わりなく、使い方次第では想定より早く寿命を迎える可能性があることを忘れてはならない。

SSDは突然壊れるというのは本当か?

SSDの記録媒体であるNANDフラッシュは、「浮遊ゲート」と呼ばれるコンデンサに電荷(電子)を貯えることでデータを記録する不揮発性メモリだ。その浮遊ゲートの電荷、すなわちデータが漏れ出さないようにする「蓋」がトンネル酸化膜だが、この膜が書き換えに伴って劣化することで、浮遊ゲート内の電荷が漏れ出してセルから正しいデータが読み出せなくなる。


そこで、SSD では「ECC(Error Correcting Code)」と呼ばれるエラー補正技術を用いて、セルデータの異常(エラービット)を検出し補正を行うことで、正しいデータを再構成する。最近のSSDでは、このECCに使用する誤り補正ビット数を増やすことで、増大し続けるエラービットに対応している。

「smartmontools」をインストールし、smartctlコマンドを発行することで、NVMeを含むSSDのS.M.A.R.T.情報を取得できる。その中の「Available Spare:」項目に利用可能なスペアの比率が、「Percentage Used:」項目にSSDの消耗率が示される。


SSDではアクセスしたブロックでエラーを検出した場合、ECCを用いてエラー補正を行うと同時に、エラー率が一定以上に達した場合は、そのブロックのデータを別ブロックにコピーし入れ替えることで、電荷量をもとに戻す「リフレッシュ」が行われる。しかし、リフレッシュが行われるのは主にアクセス時なので、長期間アクセスされなかったり、劣化の進んだブロックでは補正できないレベルのエラービットが発生する可能性がある。

SSDはECCを用いてエラービットの有無やその量を検出できる。SSDがエラーを検出した場合、ECCを用いてデータを補正した上で別ブロックにコピーし、入れ替えを行うことでデータの消失を防ぐ。しかし長期間アクセスしなかった場合など、エラーがECCで補正できる限界を越えると不良ブロックとなってデータが失われる。

これらは「不良ブロック」と呼ばれ、スペアと呼ばれる予備ブロックと入れ替えることで本来の性能を取り戻す(ただしデータは消失する)。このスペアブロックを使い果たしたとき、SSDはその寿命を迎えるわけだが、実際のスペアブロックの使用量を確認することで、SSDがどの程度消耗しているかを知ることができる。

SSDはNANDフラッシュのブロックをデータ領域とスペア領域に分割し、スペア領域にアドレス変換テーブルや書き換え回数カウンター、エラー補正のためのECC情報などを記録する。さらにブロックの集合体をデータブロックとスペアブロックに分割し、寿命の尽きたブロックをスペアブロックと入れ替えることでSSD全体の寿命を伸ばす。

SSDは長期保管に向いているのか?

一般的に、SSDはバックアップデータなどの長期保管に向いていると言われるが、はたして本当なのだろうか。データ保管にSSDを使う場合、非通電(電源を入れない)状態での期間が長くなるが、その状態でも浮遊ゲートの電荷は確実に漏れ出しエラービットが増加し続ける。

しかも非通電状態では、SSDはエラービットの発生を検出できず補正することもできない。このため、久しぶりにSSDにアクセスしたときには、すでに記録データが消失している可能性がある。


半導体技術協会「JEDEC」では、一般的な(コンシューマ市場向けの)SSDのデータ保持期間を「無通電状態で30℃環境下で1年以上」と定めている。つまり市販のSSDのデータ保管期間は1年程度と想定されているわけだ。


また、SSDのデータ保持期間は環境温度にも敏感で、温度が5度上昇すると保持期間は半減するとされている。さらにSSDは、その消耗とともにデータ保持期間が短くなることから、使い古したSSDはなおさらデータ保管には適さない。


これに対してHDDは、非動作時は磁気ヘッドを退避ゾーン(ランプ)に移動させるなど機械的な保護が施されており、SSDよりも長期保管への耐性が高い傾向がある。さらに米Millenniata社が開発したM-DISC(Millennial Disc)などの長期保管に適した光学メディアも存在することから、重要なデータは性質の異なる複数の高耐久メディアにバックアップを実施することで、万が一の故障や消失に備えておくことが重要だと言えるだろう。

おすすめの記事

著者プロフィール

今井隆

今井隆

IT機器の設計歴30年を越えるハードウェアエンジニア。1983年にリリースされたLisaの虜になり、ハードウェア解析にのめり込む。

この著者の記事一覧