SSDのレベルウェアリングとは?ドライバの役割やHDDとの違いについて知りたい

このQ&Aのポイント
  • SSDのレベルウェアリングは、記憶装置の処理能力を均等に分散させるための技術です。これにより、SSDの寿命を延ばし、データの耐久性を向上させることができます。
  • SSDのレベルウェアリングは、OSのドライバが担当しています。ドライバは、SSD内部のメモリセルに書き込む際に、各メモリセルの使用回数を均等にするように制御します。
  • 一方、HDDではドライブが内部で負荷分散しています。HDDの場合、物理的なディスク上のセクタが故障した場合に、予備のセクタに自動的にデータを移動します。
回答を見る
  • ベストアンサー

SSDのレベルウェアリングは誰が行っていますか?

キャンペーン用質問で申し訳ない。知らなくても特段困らないけれど分かれば安心、という程度の質問です。不適切な質問なら通報して消して下さい。 SSDとHDDは記録媒体の性質上、信頼性に違いがあることは理解しています(例:Seagate製HDD ST500LM030等は55TB/年のデータ転送速度で数年間の利用を想定,同社SSDは明確な耐久性表示無しで1年保証の別売。数Gbitのmulti-level NAND flash LSIは1年で数ビット化ける為FEC無しでは使い物にならない等) このため、大容量SSストレージ(8GBのSDカード等)が出現してしばらくした後、レベルウェアリングを始めたと思いますが、これはOSのドライバの役目で、記憶装置では普通にATAプロトコルを処理していた覚えがあります。 今のOS(Windows10等)でもドライバがレベルウェアリングを担当しているのでしょうか?あるいはHDDの代替セクタの自動割り当てのように、ドライブが内部で負荷分散しているのでしょうか? もし後者ならどんな古い機械でもOSでも気にせずHDDをSSDに安心して交換できて有難いのですが(バックアップは別の話として) SSDとHDDでドライバファイルは同じなのは確認しました(Windows10の場合)が、処理は違うかもしれないので質問してみました。 宜しくお願いします ※OKWAVEより補足:「Lenovo:Windows関連」についての質問です。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

10年は前だったと思いましたが、SSDの1セクタを狙って書き込みを連続で行い、(レベルウエアリングが効いてても効いて無くても)SSDをだめにする実験という記事を読んだ記憶があります。 それをgoogle検索で探していたら、 > SSDにデータを書込みまくり再起不能に追い込む耐久試験 https://gigazine.net/news/20150316-ssd-endurance-experiment-4th/ > SSDの耐久実験で書き込み150万GBの壁 https://gigazine.net/news/20140926-ssd-endurance-experiment-2nd/ というのを発見しました。 そこに、いろいろ書いてありますね。

CyclicHistory
質問者

お礼

追加の補足を書き込む手段がないので、ここに書くのですが もし500GB(0.5TB)のNANDデバイスが10万回書き込み可能なら、のべ50Peta Byte (0.05Exa Byte)書き込み可能。紹介記事の2Peta byteとは相当開きがあります。 まだSSDの負荷均等化は発展途上なのでしょうね。 お付き合いありがとうございました。

CyclicHistory
質問者

補足

こういう記事を見つけました。 https://superuser.com/questions/1267470/is-there-any-value-in-running-a-surface-test-on-an-ssd 予想通りですが、ブロックイレースのせいで、1ページのライトバック分散のために、他の10近い同ブロック内のページも同時に分散させることになるだろう、と。とあります。従って、たった一ページの負荷分散のために10倍ちかいページ、場合によってはブロックとマッピングテーブルが巻き添えを食う(劣化が10倍速い)可能性が高い。 これを避けようとすると巨大なNOR Flasベースの書き換えテーブルが必要(NOR Flashはワード単位更新・・・1->0変化はいったんイレースしたらワード単位で可能なので)をマッピングテーブルに使うことになるんでしょうけど、SLCのNORは高価なので0.1%のオーバヘッドでも無視できないコストかもしれません。追記データ回数も膨大でしょうし。 なんにせよ、個人的な結論としては ・レベルウェアリング(劣化の度合い制御。ウェアレベリングとも書くようですが)は名前と裏腹に現時点では副作用も大きく、実用上効果が大きいとは断言できない。端的に書けば未完成(Seagateがreliablityをデータシートに明記していないのも納得できます)。 個人的には、まだまだOSやドライバレベルでSSDに特化して最適化したほうがいいんじゃないかと思います。スラブを使うなどすれば実際にライトバックする必要も激減しますし、デフラグもSSDなら禁止してしまえば確実。現状ではWindowsよりLinux系列のほうが安全かな? 個人的には、SSDは何かしているけれど、シーケンシャルライト(セクタナンバー順アクセス)ならともかく通常のinode操作やdentry操作には不向きなのかなあ、という印象です 重なる資料紹介、ありがとうございました。

その他の回答 (3)

回答No.3

デフラグメンテーションの書き込み量は多いので、単純に、デフラグはSSDの書き込み可能量を大きく減らすからデフラグはSSDによくないのでしょうね。 SSD専用のドライバー又は分散書き込みシステムをOS側に新しく用意するより、SSDを、シークが高速なHDDだと見せかける方が、互換や安全性の面でよかったのではないかとも私は思います。 余談ですがマイクロデータの空飛ぶ絨毯だったかなあ。あれはHDDのセクタを3次元空間的に分析して、ヘッドの移動量を最小にしていたという話しだった。

CyclicHistory
質問者

補足

お付き合い有難うございます。 デフラグの話もそうなんですが、私が最初に疑問を持ったのは hibernate を使っているとSSDはすぐ劣化するという意味の指摘をインターネットで散見したことなんです。 仮にメインメモリ32GBのPCを使っていて日に3回ぐらいhibernateする。1年で32TB程度の書き込みですよね。NANDデバイス自体は数十万回ぐらいの繰り返し消去・書き込みを保証している。500GBのSSDで完全な劣化均等化をしている場合、10万回書き込み可能として0.5*1e5/32=1562.5年は持つ計算です。そうそう劣化するような話にはならない。なぜhibernateがいけないんだろう? ご指摘があったデフラグが次のきっかけでした。NANDの場合ブロック消去+ページ書き込みなので、何が真っ先に酷使されるかわかりにくいのですが。やっぱり不思議です。 少なくともSSD自身が中で色々やっていることはWindowsのchkdskでもわかります。未使用セクタの正常性チェックがSeagate製品の場合、恐ろしく速い。使用済みセクタと比べて少なくとも5倍、体感10倍以上違う。おそらく実際にはSSD内部では何もせず単に正常終了のコードをホストに返しているのだと思います(1分程度で300GBの未使用領域のチェックが完了する)。読み出しも少しはデバイスに負荷を与えるので避けているのかなあという気がします。想像ですが。 SSDを長持ちさせたいので、どこが最初に劣化するのか知りたい所ではありますが、具体的な話はあまり目にしません。発売済みだから特許申請済みなのは確かなので教えてくれてもいいのに!(笑) >余談ですがマイクロデータの空飛ぶ絨毯だったかなあ。あれはHDDのセクタを3次元空間的に分析して、ヘッドの移動量を最小にしていたという話しだった。 そうなんですね。これを聞いて、floppy discがFATをディスク中央のシリンダに配置していたことを思い出しました。メモリにアロケーションテーブルをキャッシュしている状態でこれに意味があったのか今となっては謎ではあります。

  • wormhole
  • ベストアンサー率28% (1620/5655)
回答No.2

SSDのウェアレベリングは当初からSSD自身で行ってますよ。

CyclicHistory
質問者

お礼

m5048172715氏から助言を頂いています SSDは何かはしているが、その程度はNAND Flashデバイスの実力を十分発揮できるところまでは到達していないようです。 書き込みありがとうございました。

CyclicHistory
質問者

補足

回答ありがとうございます。 SSD自身がやっているのですね。ある程度はやっていると思うのですが、どこまでなのかな、という気もします。先に回答を頂いた方に指摘して頂いたように、デフラグは良くないという販売元の解説が未だに残っているので少々不思議な気がするのです。 (デフラグについては、HDDでもサーボ駆動がデフラグで大量発生するのでヘッドの固着やらサーボ劣化やらよろしくないけれど、なぜか余り言われなくなってしまいました。なぜだろう?) 重ねて回答ありがとうございました。

回答No.1

SSDがこっそりやっているみたいだ。参考のURLでは文が受け身で主語が不明だった。 このアドレス変換テーブルや消去回数のカウンタなども、ユーザーがアクセスできないフラッシュメモリ内の(データ領域以外の)場所に何かが保管している。 https://www.logitec.co.jp/data_recovery/column/vol_003/ 主語はSSDかな?

CyclicHistory
質問者

補足

回答ありがとうございます。 謎に感じるのは、ディレクトリエントリなどの書き換えの場合、ライトバック時に別の物理セクタに書き込まれるのか、です。一対一の論理・物理マッピングを動的に変更するテーブルが必要になりますよね。でも、このテーブルだけは物理的な位置を変更できないし、そこだけ劣化したらお終いですよね。 512バイトセクタと仮定するとセクタアドレスが6バイト程度として全容量に対して2%程度のメモリが別途必要になる(2TBなら16GBのSLTなど用意するのかな)。 SSDが自力で劣化均等化をしているとして、それならばデフラグがなぜ良くないのかという疑問も出てくる(同一セクタ数十万回~数百万回は書き換え可能なはずなので、本当に均等化できるならそこまで気にしなくともという気がするのです) 最近の風潮は壊れたら買い替える流れなので、質問に書かせていただいた通り、そんなに気にしなくてもいいのではありますが。 だって、普通のRAMも読み書き上限回数ありますからね!気にし始めたら多分眠れません(笑)

関連するQ&A

  • SSDの速度や価格などについて

    SSDについて質問があります。 現在、PCの仕様については以下の通りです。 ホストOS:Windows7(64ビット) ゲストOS:Windows7(32ビット) CPU:Intel Core i7 950 メモリ:24GB(最大24GB) HDD容量:2TB(使用:270GB) ゲストOSの仕様: メモリ:4GB プロセッサ:4 HDD容量:300GB 現在メインのホストOSで、Excel(2010)の作業をしているのですが、非常に時間がかかっています。 再計算に25分程度かかります。 できるだけ、処理時間を短くするためExcelファイルを分散させています。関数やプログラムの知識がないため、遅い関数などを使って時間がかかっているのかもしれませんが。 ちなみに、現在40万件程度なんですが、恐らく5000万件程度必要かもしれません。 そこで、OS、ソフトをSSDに入れ、データだけHDDに入れればソフトの起動・作業の処理速度は劇的に変わるものでしょうか?どの程度早くなるものなんでしょうか? また、仮想OSでも作業をしています。仮想OSではそんなに長くなる作業はしていませんが。 仮想OSでは、上記の通りHDDの容量が300GBです。作業はしないのですが、余裕を持って一時的にデータをためておくことがあります。その後すぐに、外付けのHDDにコピーするのですが。 そうなると、少なくともSSDが300GB以上必要になってくるということでしょうか? また、これらの問題はSSDではなく、ほかの方法があるでしょうか?Excelの問題でいえば、例えば処理速度の速いデータベースソフト(という名前?)を使うとかでしょうか? Excelと、仮想OSの問題でSSDで解決できるでしょうか? もし、ほかの方法があれば教えてください。 また、SSDの価格についての質問なんですが、最近かなり、低価格になっているという記事を見たことがあるのですが、これから1年後とか急速に低価格化・性能向上が見込めるものでしょうか? そうなると、SSDの購入はもう少し待った方がいいのでしょうか? SSDの問題だけじゃないかもしれませんが、回答よろしくお願いします。

  • デスクトップ HDDとSSD

    済みません、よくわからなくてどなたか教えて下さい。 現在6年ほど使っているデスクトップが重くなるというのでしょうか、グルグル周ってなかなか開けない状態がしょっちゅうあります。 Windows7のサポートもあと1年半ほどで終了するとの事で、新しいものを・・・と思ってはいるのですが、疎いものでよくわかりません。 プロセッサーはCorei5でCPUは8G(これ以上欲しいですが高くなるので・・・)、OSはWindows10で、気になるものを見つけたのですが、HDDとSSDの違いと言うかこれがよくわかりません。 SSDは処理能力が早くて、HDDは保存要領が大きい???のでしょうか? いずれもDELLの商品なのですが HDDが1TとSSDが128のものと、 SSDなしでHDDのみ2Tのものとでは どちらがいいのか、分らず相談させていただきました。 処理能力の高いSSDを搭載したもので、まめに他のものに保存掛けていた方がいいのか、若干速度は遅くても、HDDが大きいほうがいいのか・・・。 もっと性能のいいものを・・・というのは重々承知ですが、自分のお小遣いの範囲で考えるのでこれぐらいが限度です。 なお、ゲームは一切いたしません。excel、word以外はイラストレーターを使ったり、youtubeは音楽を聴くぐらいです。 申し訳ございませんが、よろしくお願いします。

  • HDDとSSDについて色々お聞きしたいんですが

    HDDからSSDに変えようと思うんですが マザボが古くてドライバをいれないとSATA3のケーブルで繋げても認識しないらしいんですが 古いケーブルでSSDに繋げてOSを再インストールした後、ドライバを入れてSATA3対応のケーブルに変えればいいんでしょうか? また現在使っているHDDはCドライブとDドライブに分割している状態なんですが SSDにOSを再インストールした後、分割した状態でデータもそのままのHDDを繋げるとどうなるんでしょうか?

  • C\をHDDからSSDへ

    一ヶ月ほど前、ドスパラでBTOのデスクトップPC{Windows7-64bit(DSP)インストール済み}を購入しました そして数日前SSDを購入しました Cドライブの場所をHDD→SSDにかえたいのです 中身などほかのデータはいいです、最初からドライバとかインストールすることになるのは構わないですが、OSを再びSSDにインストールすることは何とかできないでしょうか?

  • OSの入ったHDDをSSDにしたい

    自作PCで現在OSはHDDのCドライブに入っています。 OS:windows7Home64bit SSDに交換したいのですが、現在のHDDのデータ(OSを含む)を丸々SSDに移して使用することは出来ますか? 無理な場合、SSDに新しくOSを入れるとして今のユーザーアカウントをSSDに引き継ぐことは出来ますか? まぁ無理ならSSDに新しくOSを入れ、コツコツ今の状態に持ってきます。 というか・・・HDDからSSDに変えて良い点はなんです?

  • SSDに換えたいが。

    SSDに換えたいが。 現在使用しているPC(WindowsXP)、約5年使用、HDDの寿命交換時期にきているのかと思いながら・・・ この際少し高いが(HDDより)、SSDへ換えて(SSDに換えたい理由は立ち上がりスピードを少しでも早くしたい為)XPを使い続けるべきか、新たにPC(Windows7)に変えるべきか、迷っている。そこで質問、 1.XPをHDDからSSDに変えた場合と、Windows7(メーカーにより違うと思うが平均的に)と比較して立ち上がりのスペードはどちらが早い?(現在使用しているPCの立ち上がり約90秒です) 2.SSDの寿命はHDDと比較してどう?(SSDの寿命もあまり長くはなさそうですが) ご教示の程よろしくお願いします。

  • SSDに換装できないPCをSSD化して早くするには

    HDDのノートパソコンのHDDからSSDに換装するとパソコンが速くなりますが、SSDに換装できないHDD内蔵で動作がもともと遅いcore i5のノートPCに困っております。 SSDに換装ができないため、外付けSSDか内蔵型SSDを常時ノートPCにUSB接続し続け、SSDの方にWindows10のOSを入れて、そこから起動するようにし、インストールするソフトも外付けSSDの方にインストールして、あたかも内蔵SSDにOSやソフトをインストールするかのようにして運用できないものかと思いついたのですが、このようなことは可能でしょうか? ノートPCはHPです。 宜しくお願い致します。

  • SSDに入れるもの教えてください。

    120GのSSD(ADATA SSD S5111 ATA)にOSと各種ドライバなどセットアップして空きがあと100Gくらいあるのですが、 Windowsの DVD-maker・Player・Movie-makerなどのアプリが気になります。 私はGomPlayerなどを利用してますし、動画編集系は有償ソフトを利用しているのですが、既存の物を削除してもいいのでしょうか? その後、よく利用するアプリはSSDに入れたほうが作業パフォーマンスが向上するでしょうか? それともSSDにはOSやその他のドライバ等だけにして、HDDに入れたほうがいいですか? また、対ウイルスアプリなどの頻繁にアップデートを繰り返すものはSSD寿命の関係でHDDに入れるべきですよね? Office2010もどちらにインストールするべきが悩んでいます。 「システムの復元」機能も有効にしたままでいいのですか?

  • SSDの導入について

    10年ほど前に作った自作PCを利用しています。 ここ数年、立上時も含めて非常に動作が遅く、買い替えも検討しているのですが 今のPCでもSSDを導入すれば早く動くようになるのでしょうか? (PCのスペックは添付致します) また早くなる場合、SSDにOS(Windows7)やオフィスをインストールしてそれ以外はHDDに入れるようにするのでしょうか? それで良い場合は今HDDにインストールされているOSやオフィスを一度アンインストールしてSSDにインストールしなおすのでしょか? あまり詳しくなく分かりにくいかもしれませんがどなたかご存知の方が居られましたがご教授の程お願い致します。

  • SSD

    自作PCを作ろうと考えているのですが、OSはSSDに、データはHDDにと考えています。 そこで、SSDはどのぐらいの容量が必要なのかと思い質問させていただきました。 SSDはどのぐらいの容量必要でしょうか?