検索
特集/連載

「SSD本来のパフォーマンス」を引き出す新技術の正体キオクシアが開発したストレージ新技術

SEFはSSDのパフォーマンスやセキュリティを向上させる技術だ。具体的にはどのような仕組みによって従来のSSDにはないメリットが得られるのか。

Share
Tweet
LINE
Hatena

 キオクシアは新しいコンセプトのSSD技術を開発し、大規模なデータセンターのニーズにも対応するオープンスタンダード(相互運用性を確保するための標準仕様)として発表した。それが「Software-Enabled Flash」(SEF)だ。データ読み書きのパフォーマンス向上や、セキュリティ強化を実現する技術だ。その仕組みやメリットを解説する。

SSDのパフォーマンスを引き出す「SEF」

 SEFではプログラムの意図に応じて、NAND型フラッシュメモリの制御をホストシステム(ストレージを利用するシステム)が担う。キオクシアはSFFのAPI(アプリケーションプログラミングインタフェース)も開発し、オープンソースソフトウェア(OSS)の発展と普及を促進する非営利団体Linux Foundationを通じ、オープンソースプロジェクトとしてパッケージ化して提供している。

 キオクシアによると、SEFによって企業は自社のアプリケーションやデータセンターのニーズに応じてSSDをカスタマイズできるようになる。必要に応じて機能を最適化したり、変更したりすることもできる。

SEFのメリット

 SEFの目的の一つは、不要なデータを削除して空き容量を増やす「ガベージコレクション」の不必要な処理によるシステム停止をなくすことだ。極端な場合、ガベージコレクションの処理は、アプリケーションが完了を待つ間、数秒間の停止を引き起こす可能性がある。

 プログラマーはSEFを使うことで、どのデータをSSDのどの領域に保存するかを管理できる。セキュリティの懸念や、「うるさい隣人」(ノイジーネイバー)問題(あるアプリケーションがリソースを過剰に消費することで、他のアプリケーションの動作に悪影響を及ぼすこと)を回避するために、プログラム同士を分離することもできる。

 SEFのメリットは、SSDにまつわるさまざまな側面をホスト側から制御できるようにすることで実現する。例えば以下がある。

  • NAND型フラッシュメモリの遷移層
  • バッファ(一時的な記憶領域)への書き込み
  • ガベージコレクション
  • ウェアレベリング(データの書き換えを各ブロック<データの記録領域をまとめた単位>に分散させること)

 ただしこういった制御のタスクをプログラマーが設定する必要があるわけではない。APIを使うことで、SSD全体もしくは一部を、従来の内部管理と同じようにプログラムに管理させることができる。

SEFの動作

 こうした管理機能は、ホストシステムがSSDのデータ管理を詳細に制御する技術「Open-Chanel SSD」でも存在していたが、SEFではさらに詳細な制御が可能だ。SEFのコントローラーは、最もシンプルなタイプの場合、ストレージの通信プロトコル「NVMe」(Non-Volatile Memory Express)接続SSDのコントローラーほど多くのことをする必要はない。DRAM(Dynamic Random Access Memory)なしでも構築できる。コントローラーは主に、NAND型フラッシュメモリを抽象化する役割を担う。

 コントローラーがNAND型フラッシュメモリの各チップをホスト側に提示し、ホストは各チップがどのチャネル(データ伝送経路)にあるかを識別できる。これにより、ホストは素早くチャネルを管理できる。これに加えて、さまざまなデータの正確な位置を管理し、異なるユーザーのタスクを分離することでセキュリティが向上する。

 SEFは、1つのSSDで実行することも、何千個ものSSDにまたがって拡張することもできる。

SEFの現状

 SEFは、単純にソフトウェアとハードウェアの2つに分けられる。2020年半ば、キオクシアはオープンソースのSEFのAPIをリポジトリ共有サービス「GitHub」で公開し、後にその管理はLinux Foundationに引き継がれた。続いて2023年9月、キオクシアは完全な仕様のコマンドセットをLinux Foundationに提供した。2023年12月、キオクシアはLinux FoundationにSDK(システム開発キット)を提供した。このSDKには、書き込み増幅率(データの書き込みに必要な回数と実際に書き込まれた回数の比率)の低減、待機時間の制御、複数の通信プロトコルのサポートが組み込まれている。

SEFは万人向けではない

 SEFはユーザー企業のニーズに幅広く応えるものなのか。ユーザー企業が一般的なシステムで既存のアプリケーションを使用する場合、SEF搭載SSDを使っても目立った違いはない。通常のNVMe接続SSDとパフォーマンスはほとんど変わらない。むしろNVMe搭載SSDに比べて提供元が限られるので、市場競争力が低く、価格が高くなる可能性が高い。

 しかし、ハイパースケーラー(大規模データセンターを運営する事業者)はSEFに興味を示しており、キオクシアと共同でこの取り組みを推進している。ハイパースケールデータセンターでは、厳密な管理と、コスト、パフォーマンス、電力・冷却要件の最適化のために、サーバのソフトウェアを更新する。このようなデータセンターでは、コストのかかるサーバ用ソフトウェアの開発でも、何万台ものサーバで使うことで、設備投資(CAPEX)と運用経費(OPEX)を開発コストを上回る規模で削減できれば、財務的メリットは十分に得られる。

 SEFのAPIはカスタマイズを一つずつ選択して実行できるため、多くのアプリケーションは、アプリケーションが必要とするSEFの最適化機能だけを使用する可能性が高い。SSDの他の側面は、APIのライブラリに管理を任せられる。アプリケーションにどの程度の制御を組み込むか、何をそのままにするかは、それぞれの開発チーム次第だ。

TechTarget発 先取りITトレンド

米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る