NVMeプロトコルへの移行の鍵はパフォーマンスとワークロード


NVMeフラッシュストレージは、PCIeバスと直接接続することで、パフォーマンスが飛躍的に向上したストレージ基盤を実現する。この記事では、NVMe製品とその使い方の実態に迫る。

Storage Magazine 5月号より
George Crump

 

NVMeおよびNVMe over Fabrics(NVMe-oF)は、アプリケーションのさらなる高密度化、機械学習や高速解析といった全く新しいアプリケーションの使用を可能にすることで、データセンターのストレージ基盤に劇的な変化をもたらすだろう。NVMeプロトコルをベースにしたストレージにアップグレードするには、入念な検討が必要だが、そうすることにより、企業はNVMeの能力を最大限に引き出し、無駄なお金を使わなくて済む。

フラッシュが初めて市場にやってきたとき、メーカーはSSDをSASやSATAドライブのような外観と動きをするように設計した。これは、互換性と導入の容易さを確保するために、パフォーマンスを犠牲にしたということだ。フラッシュ市場が進化すると、数社のベンダーは、SCSIプロトコルを使わない独自仕様のドライブを使ったPCIeベースのフラッシュを発表した。しかし、これらの製品は他のタイプのSSDと互換性がないという問題があったため、データセンターのストレージ環境は統一性を欠くまだら状態へと突き進むことになった。

メモリー・ベースのストレージに特化して設計されたNVMeプロトコルの中を見てみよう。SASやSATAなどの従来のSCSIプロトコルと比べて、その代替であるNVMeの最も明らかな相違点は、サーバーやストレージシステムとドライブの接続方法だ。SCSIアダプターに接続する替わりに、NVMeではPCIeバスに直接接続する。これによってストレージからCPUへ直接のアクセスが可能になる。また、キューの深さはSCSIが1個だけなのに対して、NVMeでは6万4千個と著しく増えており、同様に各キューのコマンド数もSCSIの1キューあたり32コマンドに対して、6万4千コマンドになっている

 

NVMe-oFとは何か

NVMeプロトコルは、フラッシュのI/Oボトルネックに関連する多くのパフォーマンス問題を解決する。しかし、NVMeベースのシステムをファイバチャネル(FC)やIPの上で共有することは、I/Oパスに再度SCSIを導入することを意味する。NVMe-oFは、NVMeをリモート・ダイレクト・メモリアクセスが可能なストレージネットワークとしてネットワーク化することにより、この問題を解決している。理論的に、エンドツーエンドのNVMeのストレージ環境(アプリケーションサーバーにNVMeネットワークアダプターがあり、ストレージシステム側にもNVMeネットワークアダプターとNVMeドライブがある環境)は、直付けのNVMeドライブと同等のパフォーマンスと低レイテンシが実現されるはずだ。NVMe-oFがあらゆるところで使われるようになれば、DAS(直付け)の構成は必要なくなるだろう。

NVMe-oF関連の作業がほぼ終わっている、というのは朗報だ。この2年の間に出荷されたネットワークスイッチの大半は、NVMe-oFへのファームウェア・アップグレードが可能な筈だ。さらに、FCやIPもサポートされる。現時点で、FCはNVMeおよび従来型のFCベースのSCSIの両方をひとつのネットワークスイッチでサポートできる利点を持っている。

 

現在、NVMeはどのように供給されているのか?

NVMeの最も一般的形態はサーバーにインストールされたNVMeドライブである。ミッドレンジからハイエンドのサーバーのほとんどに(ハイエンドのノートPCでさえも)、NVMeドライブが組み込まれているか、NVMeドライブの拡張が可能になっている。また、NVMeのオールフラッシュ・ストレージアレイ製品も購入可能である。

 

今日(こんにち)のオールフラッシュ・ストレージシステムの大半は、NVMe-oFはサポートしておらず、従来のFCかIPによるストレージネットワーク接続しかサポートしていない。これらのプロトコルによる接続でも、それなりのパフォーマンス向上が得られるが、エンドツーエンド製品本来の力を引き出すように最適化されたものではない。多くのシステムはNVMeにアップグレード可能とはうたわれていないため、ユーザーは一度製品を選択したら、将来はFCやIPとNVMeが混在した構成を持つことになると理解しておこう。市場には、いくつかのエンドツーエンドのNVMeプロトコル製品がある。これらの大半はIPベースのNVMe-oF構成を使用し、サポートするオプションの数も比較的限られている。数は少ないが、FCを使ったエンドツーエンドのNVMe-oF製品はもっとオープンだ。ただし、FCを持っていない企業にとっては追加の投資になってしまう。

 

 

いつNVMeに移行すべきか

NVMeをパフォーマンス向上のために投資する場合、一般的に企業が要求するIOPSは30万~70万IOPSである。仮想環境や物理環境のデータベース・アプリケーションのような、従来型のワークロード用に、企業はより高密度のアプリケーション基盤を構築する必要がある。これを仮想マシンを例にとって言うと、物理サーバー1台あたりのVMの数を3倍とまではいかなくても、2倍にすることを意味する。ほとんどのサーバーは潤沢なCPUパワーを持っているが、ストレージやRAMの量は限られている。NVMeはストレージI/Oの向上に寄与するだけでなく、RAMの制限緩和にも貢献する。なぜならば、仮想メモリスワップ・プール上でRAMと同等のパフォーマンスを提供するからだ。

ハイパーコンバージド・インフラストラクチャー(HCI)は、クラスターノードでNVMeストレージを使うことで、さらに多くのメリットを提供するだろう。HCIストレージ・ソフトウェアが個々のVMにVMと同じサーバーにあるプライマリデータストアを割り付ける機能を持っていれば、その効果はなおさらだ。ライトI/Oはデータ保護のために今でもネットワーク経由でレプリケートされてしまうが、リードI/Oの時、VMはNVMeのフルのパフォーマンスを享受する。



大半の企業は現時点で、エンドツーエンドのNVMeを必要とはしていない。必要になると考えられるのは、AI、機械学習、ディープラーニング、高速解析などのワークロードだ。これらのワークロードには、数十億とまではいかずとも、数百万の小さいファイルをスキャンする処理が含まれているため、ストレージデバイスの速度とレイテンシは重要な要素だ。特にワークロードの規模が拡大し本番運用に入ると、パフォーマンスは重要になる。

企業がいつNVMeに移行するかの決断の一部はベンダーが握っている。完全なNVMeベースのアレイとSASベースのアレイの価格差が縮まるにつれて、NVMeのパフォーマンスは必要なくてもNVMe製品を買う傾向が強くなるのは当然のことだ。

 

NVMeパフォーマンスのボトルネック問題に対処する

現在の水準から見れば、NVMeはパフォーマンス・ボトルネックを持っていない。これは、メディア自身のレイテンシが非常に低いためにそう見えるだけで、実際はボトルネックが存在する。NVMeで弱点になっているコンポーネントは、具体的にはソフトウェアだ。通常はNVMe環境のメディアレイテンシの低さの陰に隠れている。ストレージベンダーが、ストレージ・ソフトウェアのパフォーマンスを改善するために用いているのは、以下の3つの方法である。

 

1. ソフトウェアはそのままにして、よりパワフルなプロセッサーと組み合わせる。

問題は、これらNVMeのソフトウェアを走らせるIntel標準のプロセッサーが、コア1つ1つのパフォーマンスを改善せずに、コア数を増やすことでパフォーマンスを改善している点だ。ソフトウェアがこれらのプロセッサーを横断する効率的なマルチスレッド処理を行わない限り、コア数を増やすほどリターンは小さくなる。

 

2. FPGA(Field Programmable Gate Array)またはカスタムICを使ってソフトウェアをハードウェア化する

ソフトウェアをハードウェア化することによって、ストレージサービスを専用のハードウェアとプロセッサーで走らせることが可能になる。FPGAやカスタムICによるアプローチは、汎用製品のIntel CPUを使うのに対し費用がかさむ。さらに、この方法ではソフトウェアのアップグレードが難しくなり、企業は定期的にストレージシステムの中のFPGAを再プログラムする必要が生じる。

 

3. ハードウェアの様々な変化のメリットを最大限に享受するため、ソフトウェアを一から書き直す

書き直しは、1コア専用になっているところをコアの横断が可能な真のマルチスレッドにするところから始まる。書き直しはさらに、データ保護、データ配置、スナップショット、ボリューム管理のアルゴリズム修正にまで進まなければならない。書き直しは、長期のソリューションとしてはおそらく最善だが、同時に最も困難で時間のかかるアプローチでもある。

 

NVMeは高価か?

NVMeドライブは、急速にSASフラッシュ・ドライブと同等の価格になりつつある。しかし、これらのドライブから最大限のメリットを得ようとするなら、NVMeにハイスペックな環境を用意しなければならない。そのため、SASベースのオールフラッシュ・アレイの環境に比べて高価になってしまう。一般的に、NVMeベースのストレージシステムはよりパワフルなプロセッサーとPCIeスロットとRAMの搭載数が多い高機能マザーボードを使う。これらのコンポーネントすべてによって、NVMe投資が高価なものになってしまうことがある。企業が、エンドツーエンドのNVMeアーキテクチャーを使うと決めた場合、新しいネットワークアダプターも必要になるかも知れない。

 

市場がNVMeに移行するのはいつ?

今後3年以内に、市場に出ている製品の大半はNVMeプロトコルベースになるだろう。また、ミッドレンジのSASオールフラッシュ・アレイとNVMeアレイの価格差は無視できるほど小さくなるだろう。移行はNVMeアレイを既存のレガシーネットワークに接続するところから始まるだろう。ネットワークはストレージよりも刷新のペースが遅い嫌いがある。そのため、NVMeアレイをSCSIベースのネットワークに接続することは、このネットワークの移行ペースに歩調を合わせることになる。5,6年の歳月を掛けて、市場が次世代のストレージに入れ替わるまで、ネットワークはゆっくりとNVMeプロトコルに変わっていくだろう。そして、その頃にはアレイは内側も外側もNVMeになっている、ということだ。

早急にNVMeに移行しなければならない企業には二つのタイプがある。まっとうなパフォーマンス増強を必要としている企業と、今後2年以内にストレージを更改しなければならない企業だ。NVMeの最大限のパフォーマンスが必要ならば、プロトコルの新規性にかまわず、エンドツーエンドの製品を検討してもらいたい。結果をいち早く得られるメリットを考えれば、新興のストレージベンダーの製品や新しいネットワーク基盤を使う潜在的なリスクを負うだけの価値がある。(「NVMe市場へのベンダー参入を理解する」参照)


NVMe市場へのベンダー参入を理解する

ベンダーは各社の能力に応じて、数段階のレベルに分かれてNVMe市場に参入している。

最初のレベルはサプライヤーだ。ここには、Intel、Kingston Technology、Micron Technology、Samsung、Seagate Technology、東芝、Western Digital Corp.などNVMeドライブやメディア自体を供給している企業が含まれる。これらのベンダーは、パフォーマンス、負荷の下でのパフォーマンスの一貫性、特定のワークロードに対してプログラム可能であること、密度(1ドライブあたりのテラバイト数)などで、お互いを差別化している。

多くの企業は、ドライブを何にするかのレベルの決定までは直接関与しない。その上のレベルのベンダー、即ちNVMeアレイ・プロバイダーが企業のかわりにその選択を行うからだ。NVMeアレイ・プロバイダーは、以下のどちらかのカテゴリーに分類される。

既存ストレージ・アレイベンダー

ここには、オールフラッシュ・ベースのアレイ市場が、SASベースのフラッシュのみによって作られたときに、実際にその市場に参加した、DataDirect Networks (Tintri)、Dell EMC、Hewlett Packard Enterprise、 NetApp、Pure Storage、Western Digital (Tegile)その他のベンダーが含まれる。現在、これらベンダーの大半が既存製品のNVMe版を出している。そしてこれらの製品のほとんどが、PCIe接続のNVMeドライブを搭載した既存製品の焼き直しである。NVMeの拡張されたコマンド数とキューの深さの利点を活かすためにストレージ・ソフトウェアを変更したベンダーはわずかだ。他には、Kaminarioのように、バックエンドのストレージ・ノードとフロントエンドのストレージコントローラ間のネットワークにNVMe-oFを使っているところもある。

新興ベンダー

ここには、Apeiron Data Systems、E8 Storage, Excelero、Pavillion Data Systems、Vexataなど、エンドツーエンドのNVMeストレージを提供するベンダーが含まれる。大半の製品は、IPベースのNVMe-oFだが、ファイバチャネル上でNVMe-oFをサポートしているベンダーも数社ある。

 

SASのフラッシュアレイを持っていてアップグレードが必要な企業は、標準的なネットワークへの接続機能をもったNVMeアレイが提供できるベンダーを真剣に検討すべきだ。これらの製品は大手ベンダーから購入でき、ネットワークの変更も必要ない。

NVMeとNVMe-oFはメモリー・ベースのストレージに向かう重要な一歩を示しており、この新しいプロトコルは、業界の中で急速に採用されつつある。多くの企業は、SASのオールフラッシュ・アレイを限界まで追い込むような使い方はしていない。つまり、ITプロフェッショナルにはまだ時間があるのだ。あなたが、NVMeアーキテクチャーの能力を全面的に利用できるワークロードを持っていないのであれば、十分に時間をとってNVMeのプロトコルを理解し、あなたの会社のためのロードマップを作ることをお勧めする。

 

著者略歴:George Crumpは、ストレージと仮想化を専門とするITアナリスト企業Storage Switzerlandの社長である。

 

 

 

Copyright 2000 - 2019, TechTarget. All Rights Reserved, *この翻訳記事の翻訳著作権は JDSF が所有しています。
このページに掲載されている記事・写真・図表などの無断転載を禁じます。