清水理史の「イニシャルB」
NAS向けSSD「WD Red SN700 NVMe SSD」でQNAP NASを強化! 「何に効く?」「キャッシュ?階層化?」「オーバープロビジョニングは?」
最適な「SSDの設定方法」とは?
2021年12月20日 06:00
Western DigitalからNAS向けSSD「WD Red SN700 NVMe SSD」が発売された。「WD Red」で知られるNASに最適化されたストレージ製品の新モデルで、従来のSATAからNVMeへと進化し、高速化や高耐久性が実現されている。その実力をQNAPの4ベイNAS「TS-473A」で検証してみた。
NASを「HDD+SSD」構成にすることで「アクセス速度」と「内部処理」が高速化
SSDの高性能化と低価格化が進んだ今、NASでもSSD採用の動きが活発化している。
これまで、オールフラッシュやSSDキャッシュ、階層化ストレージと言えば、エンタープライズ用途がほとんどだったが、最近では4ベイクラスの中小規模向けNASや家庭用の2ベイNASであっても、SSDを利用することが可能となりつつある。
NASでSSDを利用するメリットは、現状、大きく分けて2種類がある。1つはネットワーク経由でのアクセス速度の向上だ。HDDよりも高速なSSDをキャッシュなどに利用することで、よく使うファイルや仮想環境でのストレージ利用時のアクセスを高速化することができる。
もう1つは、内部処理の高速化だ。現状、NASは単なるデータの保管庫としてだけでなく、仮想化やデータ分析など、さまざまな処理を担うサーバーとしての利用価値も高まりつつある。
中でもSSDの効果を体験しやすいのが画像関連の機能だろう。NASを写真の保存先などに使っている人も多いと思うが、NASは単に画像を保存するだけでなく、保存した写真のサムネイルを自動生成したり、AIで分類したりする機能を備えている。
こうした処理のため、内部的にストレージへアクセスする場合、HDDではランダムアクセスがボトルネックになり、NAS全体の処理速度低下につながる可能性があるが、SSDをキャッシュなどに活用することで、高速な処理を実現できる。
今やNASは、データを保管するだけでなく、そのデータを活用するためのプラットフォームになりつつあるだけに、SSDによる高速化が、快適さを決めるカギになりつつあるわけだ。
NAS向けストレージの定番「WD Red」にNVMe SSDが登場
そんな中、Western Digitalから登場したのが、今回取り上げるWD Red SN700 NVMe SSDだ。
WD Redと言えば、今やNAS向けストレージの定番と言えるブランドで、品質の高さや故障率の低さなどから高い支持を集める製品となっている。
今回登場したWD Red SN700 NVMe SSDは、そんなWD RedシリーズのSSDだ。NASでの利用を前提に開発されていて、24時間365日の常時稼働が想定されていたり、複数ユーザーのアクセスが集中するような利用シーンでのパフォーマンスや耐久性が徹底的に鍛え上げられていたりと、一般的なSSDとは異なる方向性で開発された製品となっている。
ポイントは、従来のSATAからNVMe(PCIe Gen3×4)対応へと進化した点となる。4/2/1TBと500/250GBの各容量が用意されており、最も安い250GBモデルでも、シーケンシャルのリードが最大3100MB/s、ライトが最大1600MB/sで、キャッシュなどに利用した場合のパフォーマンス向上が期待できる。
より大容量のモデルでは速度や耐久性の値がさらに向上するため、実際に購入する際はスペックをよく検討すべきだが、どのモデルも5年間の製品保証が付帯しており、信頼性に心配はない。
SSD装着前提で設計されたQNAP「TS-473A」
それでは、実際にWD Red SN700 NVMe SSDがどれほどの実力を持っているのかを検証してみよう。今回利用するのは、QNAPのTS-473Aという4ベイNASだ。
CPUとして、2.2GHz駆動で4コア8スレッドのAMD Ryzen V1500を搭載した中小規模向けのNASで、標準で2.5Gbps×2のネットワークを搭載していたり、内部のPCIeスロットに10Gbpsやグラフィックカードなどを増設したりできる高性能なモデルとなる。
SSDは、フロントベイに2.5インチのSATAを装着することも可能な上、内部にM.2 2280(PCIe Gen3×1)を2スロット搭載しており、ここにNVMe SSDを装着することも可能となっている。
なお、250GBのWD Red SN700は、シーケンシャル性能の上限が3100MB/sとなるが、今回使用したTS-453Aは、内部のM.2スロットがPCIe Gen3×1の仕様となっていて、内部的な転送速度の上限が1GB/sとなる。 このため、今回は、PCIe接続のM.2アダプタ「QM2-2P-344」を利用してWD Red SN700を装着した。QM2-2P-344は、内部のM.2スロットがPCIe Gen3×4対応で、拡張スロットもPCIe Gen3×4対応の製品だ。
ネットワーク経由の場合は、そもそもネットワークが10Gbpsなので、PCIe Gen3×1でもネットワーク経由での性能に大きな影響はないが、NAS上で動作するアプリなど内部動作の速度向上を目指すのであれば、より高速なインターフェースで利用する方が効果的だ。
ただし、NASは、何より信頼性や耐久性が重視されるため、どちらかというとピーク性能よりも耐久性を重視した方がいい。実用シーンでは、そこまで速度を気にする必要はないだろう。
ちなみに、内部のM.2スロットは、専用の固定具でSSDを簡単に固定できるようになっており、ねじ止めは不要だ。端子部分を挿入し、固定具側に押し込むようにするだけで固定できる。今回は、PCIeスロットに装着したが、通常は手間なく接続できる内部M.2スロットの方が便利だろう。
また、装着するためにケースを開ける必要があるが、これはSSDの盗難防止に効果的な上(底面などから簡単にアクセスできると盗難の危険がある)、背面のファンによってSSDが効率的に冷却される効果もある。
TS-473A本体には、小型ながらSSD用のヒートシンクも同梱されており、SSDを装着するための環境が整っているのも好印象だ。
SSD設定の経験や知識がなくても設定に迷わない
QNAPのNASに搭載されているファームウェアの「QTS」(最新は5.0)では、SSDを活用するための機能が整っており、構成や設定に迷わない工夫がなされている。
中でも心強いのが「SSD Profiling Tool」の存在だ。
例えば、NASに装着したSSDを有効化しようとして、いきなり「オーバープロビジョニングを何パーセントに設定するか?」という設定画面が表示されたとして、即答できるだろうか?
今までのNASは、こうしたSSDを利用するための設定が、利用者の経験や知識、SSDのスペックに依存するものだったが、QNAPのQTSでは、実際の測定値に基づいたデータを元に、効率的な設定値を選択できるようになっている。
具体的には、SSD Profiling ToolでNASに装着したSSDの性能をテストできる。さまざまな条件で書き込みテストを実施することで、オーバープロビジョニングを何パーセントに設定すると、具体的にどれくらいのIOPSが実現できるのかがグラフ化される。
オーバープロビジョニングは、SSDの速度低下や寿命低下を防ぐために、SSD上に一定の空き領域を確保することで、速度低下や寿命低下を防ぐ機能だ。
SSDは、その仕組み上、データを直接書き換えることができず、「書き込みたい部分を含むブロック」の全体をいったん消去した後で、「元からあったデータ」と「書き込みたい内容」を組みあわてブロック全体を全て書き込む。つまり、ブロックの一部を書き換えるだけでも「ブロック全体の読み込み→ブロック全体の消去→ブロック全体の書き込み」という手順が必要で、これが速度低下につながったりSSDの寿命を縮めたりする場合がある。
このため、通常SSDでは、あらかじめ全体の一部の領域(7~10%ほど)をキャッシュとして設定(オーバープロビジョニング)し、ファームウェアによってキャッシュを活用しながら稼働するように設計されている。
SSD Profiling Toolは、こうしたSSDの特性を実際のテストによって検証することで、実際にどれくらいのパーセントをオーバープロビジョニングで確保すればいいかを事前に確認できる機能となる。
NASの場合、データの書き込み容量が多いことから、特にキャッシュで利用すると、すぐにSSDの全容量を使い果たし、ランダムアクセスを中心にアクセス速度の低下が発生しやすくなる。NASでSSDキャッシュを設定したはいいが、時間の経過とともにHDDよりも速度が低下するようになってしまった、などというトラブルは、こうした原因が考えられる。
このため、多めにオーバープロビジョニング容量を確保したり、RAID構成に合わせてオーバープロビジョニング容量を検討したりする必要がある。
要するに、長期的な運用を考慮して、実際に装着したSSDの性能や狙ったIOPSを出すためのオーバープロビジョニングの容量を提案してくれる機能というわけだ。
そして、今回の環境では、以下のようなテスト結果が表示された。
例えば、30000IOPSをターゲットにする場合、推奨されるオーバープロビジョニング容量は20%ほどということになり、性能をフルに発揮させるには、50%のオーバープロビジョニング容量が推奨される。
一般的には10%ほど確保されることが多いが、NASの場合、データの書き換え頻度が高い(特にキャッシュの場合)ため、長期的な寿命を考えると、多めにオーバープロビジョニングを設定し、余裕を持った運用をすべきだろう。
SSD活用方法は「SSDキャッシュ」と「Qtier」の2通り
QNAPのNASでは、SSDを活用する方法は大きく分けて「SSDキャッシュ」と「Qtier(階層型ストレージ)」の2種類がある。
SSDキャッシュは、文字通りSSDをHDDアクセスのキャッシュとして利用する方法だ。HDDからデータを読み込むときにSSDへデータをコピーし、次回アクセスするときはSSDから高速に読み込むことができる。書き込みはSSDに書き込んでから、後でHDDへとデータを移行する。
Qtierは、階層型ストレージと呼ばれる方式で、NASのストレージを「容量(主にHDD)」「高速(主にSATA SSD)」「超高速(NVMe SSD)」の3階層に分け(HDDとNVMeの2階層でも運用可能)、頻繁にアクセスするデータを「超高速」に、あまりアクセスしないデータを「容量」に自動的に分類して保管する方式となる。超高速に保管されたデータはアクセス頻度が落ちると自動的に容量に移動させることができる。
どちらを利用するかはNASの用途次第と言えるが、その目安をQNAPがドキュメントとして公開しているので、これを参考にするといいだろう。
オフィスなどで、計画的にNAS上のドキュメントを利用する場合はQtierが適している。例えば、ファイルサーバーなどで、SSD上に保存された今月のデータを主に使い、月が替わればそのデータは頻度が落ちるので、自動的にHDDへと移動されるというように、計画的に階層を利用できる。
一方、家庭では、こうした計画的な利用はまれだ。このため、突発的なデータもSSDで高速化できるSSDキャッシュで利用する方が適しているケースが多い。また、動画編集や仮想化などで利用する場合もSSDキャッシュが適している。
設定や運用もSSDキャッシュの方が簡単な上、QNAPのNASは、最新のQTS 5.0でLinuxカーネルが5.10に更新されており、NVMe SSDキャッシュパフォーマンスの改善が図られている点も魅力的だ。
SSD増設による効果を確認する
それでは、SSDの効果を検証してみよう。
今回は、QTSの「ストレージ&スナップショット」で「キャッシュ加速」を選択し、NASに装着したWD Red SN700 NVMe SSDを選択してキャッシュとして設定した場合と、同じく「ストレージ&スナップショット」で既存のプールをQtierにアップグレードした場合で値を計測している。
キャッシュの方式は標準では「読み取り」となる。オフィスで利用する場合は、大量のアクセスが発生するためSSD容量を節約するためにも読み込みのみを高速化した方が効率的だが、家庭で利用する場合は、バックアップや大量の写真の保存など、書き込みも高速化するメリットがあるため、今回は「読み取り/書き込み」に設定した。
また、キャッシュモードは、標準では「ランダムI/O」が選択されるが、こちらも家庭での利用はビデオの保管や再生などに利用する可能性があるため、「全てのI/O」を選択するといいだろう。キャッシュ容量は多く消費するが、その効果を体験しやすい。
RAIDタイプは、今回はSSDが2枚なのでRAID 1となる。書き込みを選択するとデータを保護する必要があるが、今回は2枚なのでRAID 1のみが設定可能だ。なお、キャッシュのパフォーマンスを向上させるには、4枚以上でRAID 5などを構成すべきだろう。
オーバープロビジョンは、あらかじめSSD Profiling Toolで確認した値を利用する。標準では10%だが、SSDの寿命を考えると多めに設定しておいた方がいい。特に家庭では、キャッシュ容量が多くても使い切れないので、寿命を優先して多めに確保することをお勧めする。
SSDキャッシュで内部の処理速度がスピードアップ画像のAI処理などが高速に
キャッシュの効果だが、これは冒頭でも触れた通り、2通りの見方をする必要がある。
まずは内部的なキャッシュの効果だ。前述したように、最近のNASは画像のAI処理などで保存したデータを内部で処理する機会が増えている。こうした処理に時間がかかると、肝心のデータアクセス速度などが低下してしまう恐れがあるため、SSDキャッシュによって内部処理が高速化されるメリットは大きい。
実際、写真管理アプリなどを利用している環境でSSDキャッシュを有効化すると、画像のサムネイルの表示などが高速な印象を受ける。
なお、SSDの内部的な転送速度は、SSHアクセスで「fio」テストコマンドを実行することで確認できる。シーケンシャルリードで2GB/s、ランダムリードで153.08MB/sとなる。HDDはシーケンシャルリードが4分の1となる500MB/s前後、ランダムリードが250KB/s(MB/sではなくKB/sである点に注目)なので、大幅にアクセス速度が向上している。
内部的な処理にこのストレージを使えるメリットは非常に大きいと言えるだろう。
アクセス速度の向上はネットワーク次第実力を発揮させるなら10Gbpsの導入を!
続いて、外部からのアクセス時のキャッシュ性能を見ていこう。
こちらに関してはネットワーク次第と言える。今回の検証で利用したTS-473Aは2.5Gbpsのネットワークに対応しているのだが、そもそものNASの性能が10Gbps環境でも使えるほど高い設計になっているため、2.5Gbpsのネットワーク経由では、ベンチマークツールによるSSDキャッシュの効果がほぼ見えない。
10GbEならシーケンシャルライトが2.8倍、ランダムアクセスが1.2~2.2倍に
そこで、今回はTS-473Aの拡張スロットに10Gbps対応のネットワークカード(QXG-10G1T)を装着し、10Gbps環境でCrystalDiskMarkによるベンチマークを実施してみた。
結果は、以下のようになった。なお、WD Redのスペック表に合わせるかたちで、ベンチ結果もシーケンシャルはMB/s、ランダムはIOPSでの表記にしてある。
シーケンシャルに関しては、主にSSDキャッシュ設定時の書き込みで効果が表れた。読み込みはほぼ変わらない(10Gbpsの上限)が、HDDのみの場合に比べて、シーケンシャルライトが約2.8倍に向上している。
SEQ1M Q8TI(MB/s) | SEQ1M Q1T1(MB/s) | RND4KQ32T1(IOPS) | RND4KQ1T1(IOPS) | |||||
リード | ライト | リード | ライト | リード | ライト | リード | ライト | |
Qtier | 1216.13 | 479.39 | 954.6 | 477.56 | 181.21 | 85.32 | 26.38 | 21.66 |
SSDキャッシュ(RW) | 1218.64 | 1196.4 | 990.49 | 630.69 | 190.24 | 189.87 | 25.79 | 26.83 |
HDDのみ | 1193.44 | 425.41 | 963.56 | 430.26 | 154.02 | 83.46 | 25.73 | 22.18 |
ランダムアクセスに関しては、リードもライトも効果が表れた。リードで1.2倍ほど、ライトはシーケンシャルと同じくSSDキャッシュのみだが、2.2倍ほど高速化されている。
SEQ1M Q8TI(MB/s) | SEQ1M Q1T1(MB/s) | RND4KQ32T1(IOPS) | RND4KQ1T1(IOPS) | |||||
リード | ライト | リード | ライト | リード | ライト | リード | ライト | |
Qtier | 1159.79 | 457.19 | 910.38 | 455.43 | 44240.23 | 20829.59 | 6440.67 | 5288.57 |
SSDキャッシュ(RW) | 1162.19 | 1140.97 | 944.61 | 601.47 | 46444.34 | 46355.71 | 6297.12 | 6550.29 |
HDDのみ | 1138.15 | 405.7 | 918.93 | 410.33 | 37603.52 | 20376.95 | 6282.96 | 5415.04 |
NAS+SSDはもはや当たり前の時代に
以上、Western DigitalのWD Red SN700 NVMe SSDをQNAPのTS-473Aで利用してみたが、NASにSSDを追加するメリットは、かなり高いと言えそうだ。
ネットワーク経由でのアクセスも主にライトで大きな効果が見える上、内部キャッシュとして多機能なNASならではの各機能をファイルサーバーとしてのスループットを落とさずに利用できるようになるため、10Gbsp環境でNASの性能をより一層引き上げることができる。
そもそもWD Redなので耐久性は折り紙付きだが、QNAPのNASなら、SSDのオーバープロビジョニングの設定を工夫することで、さらに寿命を延ばしたり、キャッシュがフルになったときなどの速度低下も抑えたりできる。
これからNASを導入するのであれば、同時にSSDの装着も検討すべきだろう。
(協力:テックウインド株式会社)