SSDの選びかた(1/5):TBWは使いかたで決まる!

SSDの選びかた(1/5):TBWは使いかたで決まる!

この記事に関連する製品

おことわり

 この記事は、2019年10月にQiitaに投稿した記事を加筆修正したものです。

はじめに

 ストレージを選ぶ際、データアクセス性能、価格、そして寿命などを判断基準にされることが多いと思います。

 特に、NANDフラッシュメモリを不揮発性記憶媒体とするSolid State Drive(以降、単に”SSD”と記載します)の場合、寿命が主な判断基準のひとつになり得ます。

 使用上の不備や落下による破損などを除けば、SSDの製品寿命は、広く知られているように、NANDフラッシュメモリのブロック(以降、単に「ブロック」と記載します)の書き換え回数に依存します。

 そしてブロックの書き換え回数に起因するSSDの寿命の指標として、Terabytes Written (TBW)を思い浮かべる方が多いと思います。

 しかし、TBWはある特定の使いかた(ワークロード)でSSDを使用した場合の値であり、同じSSDでも使いかたが変わると値が変わります。

 これはSATA SSDでもNVMe SSDでも同じです。

 例えば、あるSSDの製品仕様に「TBWは500 TB」と記載されていても、どのような使いかたでもホストから500 TB書き込めると保証しているわけではありません

 そこで、これから数本の記事で、寿命も含めた「SSDの選択基準」についてまとめます。

 この記事では、TBWの定義と、SSDの製品仕様に記載されているTBWの意味を説明します。

まとめ

  • SSDの製品仕様中のTBWはJEDECのワークロード(特にクライアントワークロード)を用いて算出した値が多い
  • TBWはワークロードに強く依存するため製品仕様のTBWが参考にならないこともある
  • SSDの製品仕様に記載のTBWを鵜呑みにして製品を選定するのは危険

TBWとはJEDECが定義したもの

 Terabytes Written (TBW)は、JEDECがJESD2181という仕様で定めているものです。

 そのJESD218に記載されているTBWの定義は下図の通りです。これは、2011年8月に開催されたFlash Memory Summitでの講演資料2から引用したものです。

図:JESD218におけるTBWの定義

 この文章を直訳すると以下のようになります。

 SSD製造者は、目的のアプリケーションクラス用のワークロードを使用して以下の条件を満たしながらホストがSSDに書き込むことができるサイズ(テラバイト)の最大値を、SSDの耐久性評価結果として示すこと。

1) SSDが容量を維持し、
2) SSDがアプリケーションクラスに要求されるエラー率(Unrecoverable Bit Error Rate: UBER)を維持し、
3) SSDがアプリケーションクラスに要求される機能故障(率)を満たし、
4) SSDがアプリケーションクラスで要求される時間だけ非通電でもデータを保持すること

 この記載内容のうち、1)から4)の条件はSSDがストレージとして備えるべき基本的な機能要件です。

 そのためか、「ホストがSSDに書き込むことができるサイズの最大値」という部分が独り歩きし、このTBWが様々な場面でSSDを比較する指標のひとつとして使われています。

 これは、「アプリケーションクラス用のワークロードを使用して」という部分が考慮されていないことが問題です。この記述の存在こそが、TBWがワークロード(=使いかた)に依存する証拠です。

 なお、上記「アプリケーションクラス用のワークロード」としては、通常、JEDECがJESD2193で定義したものが使用されます。具体的には、クライアントワークロードとエンタープライズワークロードの2つです。

JESD219の「クライアントワークロード」とは

 JESD219が定める「クライアントワークロード」とは、「クライアントSSD」のためのワークロードです。

図4:JESD219が定めるワークロードの種類とその特徴2

 図には、クライアントSSDのワークロード(図中左側)として、「週7日、1日8時間稼働」「バースト的に発生するワークロードで、休息時間(ホストからSSDへアクセスがない時間)がかなり長い」「書き込みは少ない」「LBA空間全体に占めるアクセス領域(フットプリント)がとても局所的」「コスト最適化されている」と記載されています。

 これらの特徴はすべて、いわゆるオフィスや家庭利用のPCに搭載されるSSD、特に、OSがインストールされたシステムドライブを想定したものです。

 したがって、JESD219のクライアントワークロードを用いて算出したTBWは、オフィス・家庭利用PC向けSSD、特にOSをインストールするシステムドライブの選定時に使用できる値なのです。

 JESD219のクライアントワークロードを用いて算出したTBWが参考になる使いかたと参考にならない使いかたの例を挙げると以下の表のようになります。

表:JESD219のクライアントワークロードで算出したTBWが参考になる使いかたと参考にならない使いかたの例

おわりに

 TBWの数値は製品の比較に使用しやすいものの、算出に使用したワークロードと実使用時のワークロードが一致しない場合には的外れな比較となり、要件を満たさない選択になる可能性があります。

 次の記事では、TBWがワークロードに依存する理由、およびTBWの大小を左右する要素、などを説明します。

リファレンス

  1. JEDEC, “Solid-State Drive (SSD) Requirements and Endurance Test Method”, JESD218B.01, March, 2016
  2. Alvin Cox, “JEDEC SSD Endurance Workloads”, Flash Memory Summit 2011, Santa Clara, CA, August, 2011
  3. JEDEC, “Solid-State Drive (SSD) Endurance Workloads”, JESD219A, July, 2012

他社商標について
記事中には登録商標マークを明記しておりませんが、記事に掲載されている会社名および製品名等は一般に各社の商標または登録商標です。

記事内容について
この記事の内容は、発表当時の情報です。予告なく変更されることがありますので、あらかじめご了承ください。

お問い合わせ