ScaleFlux は、コンピューティング ストレージ、より具体的には大規模なコンピューティング ストレージのみに焦点を当てている会社です。同社は主に ScaleFlux Computational Storage Drives (CSD) を使用してこれを行っています。名前から推測できるかもしれませんが、CSD は、ドライブとシステムのパフォーマンスを向上させることができるコンピューティング エンジンと統合された NVMe SSD です。しかし、コンピューティング ストレージが意味するものは、相手に応じてさまざまです。このレビューでは、ScaleFlux CSD 2000 を使用して、ScaleFlux の視点を体験します。
ScaleFlux は、コンピューティング ストレージ、より具体的には大規模なコンピューティング ストレージのみに焦点を当てている会社です。同社は主に ScaleFlux Computational Storage Drives (CSD) を使用してこれを行っています。名前から推測できるかもしれませんが、CSD は、ドライブとシステムのパフォーマンスを向上させることができるコンピューティング エンジンと統合された NVMe SSD です。しかし、コンピューティング ストレージが意味するものは、相手に応じてさまざまです。このレビューでは、ScaleFlux CSD 2000 を使用して、ScaleFlux の視点を体験します。
コンピューティング ストレージとは何ですか?
実際、私たちは StorageReview で数年間、コンピューティング ストレージについて書いてきました。一言で言えば、コンピューティング ストレージは (システムのコンピューティング アーキテクチャやメモリ アーキテクチャではない) コンピューティング リソースを取得し、それらをストレージ自体の中に配置します。
場合によっては、これらのコンピューティング リソースがホストとストレージの間に配置されることもあります。これにより、データの移動が減少し、システムのコンピューティング リソースの負担が軽減され、パフォーマンスまたは少なくともパフォーマンスの一貫性が向上する可能性があります。ただし、多くのベンダーがコンピューティング ストレージに参加しているため、「コンピューティング ストレージ」という用語は製品によって非常に異なる意味を表す場合があることを理解することが重要です。
ScaleFlux CSD 2000 とコンピューティング ストレージ
ScaleFlux CSD は、データ パスの圧縮/解凍エンジンを導入することで他と区別します。同社によれば、これにより容量は実質 4 倍、パフォーマンスは 2 倍になるという。もちろん、これはデータが圧縮可能であることを前提としています。これは、このプラットフォームが適切に動作するために不可欠なことです。条件が適切であれば、有効容量は強力なセールスポイントになります。
コストと密度についても議論が必要です。データを圧縮し、より有効な容量を確保することにより、組織はフラッシュのコストを最大 50% 節約できると ScaleFlux は試算しています。圧縮のおかげで、同じスロットで「より多くの」フラッシュを提供することもできます。
コストと効率はパフォーマンスがなければほとんど意味がありません。ScaleFlux が主張するパフォーマンスは従来の SSD の 1 倍になるでしょうか?このドライブにはデータ センター バージョンとデータ スケール バージョンの両方がありますが、ここでは上位の数字を見てみましょう。 1:750 データ圧縮の最高値は、4:490 データ圧縮の場合、4K 読み取りで 2K IOPS、1K 書き込みで 3K IOPS です。シーケンシャル速度については、ドライブはいずれかの圧縮で 2.3 GB/秒、1:1 圧縮で最大 XNUMX GB/秒の書き込み速度に達すると見積もられています。
CSD とのその他の違いは、ユーザーがパフォーマンスと GB あたりの価格を最適化できる調整可能な FTL/FM を備えていることです。高いパフォーマンスを実行すると電力と温度の問題が発生する可能性がありますが、過熱を避けるためにこれらの問題を抑制することはできます。データ保護はもはや常にニュースになっているようで、CSD はエンドツーエンドのデータ保護と、データ パス内のすべての内部メモリに対する ECC、および電力損失保護を主張しています。
ScaleFlux を使用してこの CSD アクションを実行するには、いくつかの欠点があります。 3 つは、従来の SSD が PCIe Gen 4 に移行している時期に、今回レビューしているドライブが Gen XNUMX であるということです。これは解決可能な問題です。もう XNUMX つの問題は、現在ドライバーのサポートが Linux に限定されていることです。 Windows と VMware は終了です。ローカライズされた仮想化は興味深い使用例であり、データ削減の利点が得られます。願わくば、より広範なサポートが提供されることを願っています。
ScaleFlux CSD 2000 の主な仕様
フォームファクタ | PCIe AIC および 2.5 インチ U.2 |
インタフェース | PCIe Gen3 x4 低遅延ブロック ストレージ デバイス |
NANDメディア | 3D TLC および 3D QLC |
電力損失保護 | はい |
データ保護 |
|
出力 |
|
使用温度 | 50°C @ 200LFM (AIC) 35°C @ 200LFM (U.2) |
温度保護 | サーマルスロットリングが有効 |
MTTF | 2万時間 |
計算能力 |
|
ソフトウェアの互換性 | Linux OS 2.6 カーネル以降のみ
|
ScaleFluxによる圧縮
私たちはまず、圧縮がどのように実装されるかを把握したいと考えました。 Linux を使い始めるには、ドライブを表示および操作するためのカスタム ドライバーをロードする必要があります。これは、一般的な nvme-cli ツールセットのブランチです。これにより、ドライブをそのまま表示したりフォーマットしたり、現在のデータセットに基づいて使用可能な容量を操作したり変更したりすることができます。以下は、ワークロード テストの前後の出力の簡単な例です。 「sfx-nvme list」の最初のコマンドは、インストールされているドライブを表示します。
root@storagereview:~# sfx-nvme リスト
ノード SN モデル名前空間の使用形式 FW Rev BUS:slot:func
/dev/sfdv0n1 UC1945A7112M CSDU3RF040B1 1 3.20 TB / 3.20 TB 512 B + 0 B 4870 0000:d8:00.0
完全に非圧縮のデータ (通常の作業データセット) を使用した最初のベンチマークの後、ドライブが 1.00 の圧縮率を示していることがわかります。
root@storagereview:~# cat /sys/block/sfdv*/sfx_smart_features/sfx_capacity_stat
free_spacephysical_sizelogical_sizecomp_ratioprovisioned_capspace_flag
2736 6251231232 6251231312 1.00 6251233968 0
次に、vdbench の圧縮レベルを 4x に切り替え、ドライブが舞台裏で魔法の一部を機能できるようにしました。それが完了し、SSD を再度クエリすると、サイズが増加し、圧縮率が 4.10 になっていることがわかります。幸いなことに、この基本的な見直しにより、ドライブは圧縮機能の点で主張どおりの動作をします。
root@storagereview:~# cat /sys/block/sfdv*/sfx_smart_features/sfx_capacity_stat
free_spacephysical_sizelogical_sizecomp_ratioprovisioned_capspace_flag
4728607824 1522626144 6251231312 4.10 6251233968 0
ScaleFlux CSD 2000 のパフォーマンス
VDBench ワークロード分析
ストレージ デバイスのベンチマークに関しては、アプリケーション テストが最適であり、総合テストは 2 番目になります。実際のワークロードを完全に表現しているわけではありませんが、合成テストは、競合ソリューション間での完全な比較を容易にする再現性係数を備えたストレージ デバイスのベースライン設定に役立ちます。
これらのワークロードは、「4 コーナー」テスト、一般的なデータベース転送サイズ テスト、さまざまな VDI 環境からのトレース キャプチャに至るまで、さまざまなテスト プロファイルを提供します。これらのテストはすべて、スクリプト エンジンを備えた共通の vdBench ワークロード ジェネレーターを利用して、大規模なコンピューティング テスト クラスターの結果を自動化して取得します。これにより、フラッシュ アレイや個々のストレージ デバイスを含む幅広いストレージ デバイスにわたって同じワークロードを繰り返すことができます。
これらのベンチマークのテスト プロセスでは、ドライブの表面全体にデータを埋めてから、ドライブ容量の 25% に相当するドライブ セクションを分割して、ドライブがアプリケーションのワークロードにどのように応答するかをシミュレートします。これは、ドライブの 100% を使用して定常状態にするフル エントロピー テストとは異なります。結果として、これらの数値は、より高い持続的な書き込み速度を反映することになります。
プロフィール:
- 4K ランダム読み取り: 100% 読み取り、128 スレッド、0 ~ 120% iorate
- 4K ランダム書き込み: 100% 書き込み、64 スレッド、0 ~ 120% iorate
- 64K シーケンシャル読み取り: 100% 読み取り、16 スレッド、0 ~ 120% の iorate
- 64K シーケンシャル書き込み: 100% 書き込み、8 スレッド、0 ~ 120% iorate
- 合成データベース: SQL および Oracle
- VDI フル クローンおよびリンク クローン トレース
比較のために、非圧縮データと 4 倍圧縮データを送信する VDBench を備えた ScaleFlux SSD を見ていきます。ランダム 4K では、非圧縮 CSD は 100 μs 未満で開始され、レイテンシ 588,893 μs で 216 IOPS に達しました。圧縮を使用すると、ドライブはわずかに遅くなり、レイテンシ 573,460μs でピーク 222 IOPS になりました。
4K ランダム書き込みでは、非圧縮ドライブが約 355μs で約 325K IOPS でピークに達し、その後若干低下しました。圧縮を使用すると、ドライブはほとんどの場合 100μs 未満に留まり、ピーク時は約 572K IOPS、遅延は 168μs でした。
64K のシーケンシャル ワークロードに切り替えると、読み取りの場合、非圧縮ドライブは 33,785µs のレイテンシで 2.11 IOPS または 473GB/s のピークに達しました。圧縮を使用すると、ドライブは 47,489μs という低い遅延で 2.97 IOPS、つまり 336GB/s に達することがわかりました。
64K 書き込みでは、テストの大部分において、両方の構成が 100μs 未満で実行されました。非圧縮構成では、レイテンシ 24,074 μs で 1.5 IOPS または 643 GB/秒でピークに達しました。 4 倍圧縮では、レイテンシ 36,364μs で 2.27 IOPS または 397GB/s のピークが見られました。
次のテスト セットは、SQL ワークロード、SQL、SQL 90-10、および SQL 80-20 です。 SQL から始めて、両方のデータ構成は非常に似ていました。非圧縮データのピークは 188,269 IOPS、遅延は 167 μs でしたが、ドライブに送られる圧縮データのピークは 190,370 IOPS、遅延も 167 μs でした。
SQL 90-10 では、非圧縮の ScaleFlux CSD 2000 は 185,310µs のレイテンシーで 172 IOPS のピークに達しました。ドライブに 4 倍の圧縮を適用すると、ピーク値は 220,615 IOPS、遅延は 144μs に達しました。
SQL 80-20 の非圧縮ドライブのピークは 179,482 IOPS、遅延は 177μs でした。 CSD に送られる圧縮を見ると、221,851μs のレイテンシで 143 IOPS のピークが見られました。
次に、Oracle ワークロード、Oracle、Oracle 90-10、Oracle 80-20 です。 Oracle 以降、非圧縮のピークは 184,048 IOPS、レイテンシは 194 μs でした。圧縮が行われているドライブを見ると、ピーク値は 245,385 IOPS、レイテンシーは 135µs でした。
Oracle 90-10 はどちらも、パフォーマンスと遅延の点でほぼ同じスタートを切りました。非圧縮バージョンは、レイテンシ 155,641 μs で 141 IOPS に達しました。圧縮バージョンでは、175,681μs の遅延で 125 IOPS のピークに達しました。
Oracle 80-20 ブースのドライブ構成は 100µs 未満で開始されました。非圧縮データの場合、レイテンシー 151,983μs でピークは 144 IOPS でした。圧縮データでは、182,640μs の遅延で 120 IOP のピーク パフォーマンスが確認されました。
次に、VDI クローン テスト (完全およびリンク) に切り替えました。 VDI フル クローン (FC) ブートの場合、非圧縮データを含まない ScaleFlux CSD 2000 では、ドライブは 127,616 μs のレイテンシで 263 IOPS のピークに達しました。 4 倍の圧縮を送信すると、レイテンシが 161,543µs でパフォーマンスが最大 216 IOPS に向上しました。
VDI FC 初期ログインでは、非圧縮データでは 78,125 μs で 379 IOPS のピークが得られ、圧縮データでは 154,077 μs で 189 IOPS のピークが得られました。
月曜日の VDI FC では、非圧縮ドライブは 62,922μs の遅延で 251 IOPS に達しました。 4 倍圧縮では、わずか 100,680μs の遅延で 156 IOPS というはるかに高いピークが得られました。
VDI リンク クローン(LC)ブートの場合、駆動する非圧縮データは 58,705 μs のレイテンシで 271 IOPS のピークに達しました。 4x 圧縮をドライブに送信すると、ピークは 81,137 IOPPS、遅延は 196µs に達しました。
VDI LC 初期ログインでは、非圧縮データを含むドライブが 36,537μs の遅延で 215 IOPS のピーク パフォーマンスに達しました。 4x 圧縮データがドライブに到達すると、ピーク時の IOPS は 56,739、遅延は 137µs に達しました。
最後に、VDI LC Monday Login を使用すると、非圧縮ドライブは 48,814µs のレイテンシで 323 IOPS のピークに達しました。圧縮すると、SSD は 81,799µs のレイテンシーで 192 IOPS のピークに達しました。
まとめ:
ScaleFlux はコンピューティング ストレージのみに焦点を当てています。これは主に、ScaleFlux Computational Storage Drives (CSD) として知られる SSD を通じて行われます。これらは、パフォーマンスとデータ効率を向上させるコンピューティング エンジンを備えた PCIe Gen3 SSD です。同社はいくつかの異なるドライブを持っていますが、このレビューでは ScaleFlux CSD 2000 に注目しました。
ScaleFlux ドライブと他の計算ストレージとの主な違いは、データ パスの圧縮/解凍エンジンです。 ScaleFlux は、計算技術のおかげで、容量が 4 倍になり、パフォーマンスが 2 倍になったと主張しています。これはパフォーマンスに影響を与えるだけでなく、データの圧縮率が高い場合のストレージ効率を考慮すると、SSD ストレージの TB あたりのコストも削減できる可能性があります。
そこで最も懸念されるのは、圧縮エンジンが機能するかどうかということです。テストでは最初から圧縮を操作していたので、それは簡単でした。完全に非圧縮のデータから始めましたが、予想通り、ドライブからの比率は 1:1 でした。 4X 圧縮率に切り替えると、ドライブ上で 4.1:1 の圧縮率が得られました。パフォーマンスを確認する前に、重要な最初のステップにチェックマークが付きました。
まず、非圧縮データが送信されていないドライブを見てみましょう。ハイライトには、589K 読み取りで 4K IOPS、355K 書き込みで 4K IOPS、2.11K 読み取りで 64GB/秒、1.5K 書き込みで 64GB/秒が含まれます。 SQL では、188K IOPS、SQL 185 ~ 90 で 10K IOPS、SQL 179 ~ 80 で 20K IOPS のピークが見られました。 Oracle ワークロードでは、ピークが 184 IOPS、Oracle 156-90 では 10 IOPS、Oracle 152-80 では 20 IOPS に達しました。 VDI クローン テストでは、圧縮なしの CSD 2000 では、フル クローンの起動時に 128K IOPS、初回ログイン時に 78K IOPS、月曜日のログイン時に 63K IOPS が得られました。リンク クローンの場合、ドライブは起動時に 59K IOPS、初回ログイン時に 37K IOPS、月曜日のログイン時に 49K IOPS を実現しました。
4 倍圧縮データを送信すると、4K 読み取りを除くすべてのテストでパフォーマンスが大幅に向上し、それほど大きな差がなかったのには驚きました。ハイライトには、573K 読み取りで 4K IOPS、572K 書き込みで 4K IOPS、2.97K 読み取りで 64GB/秒、2.27K 書き込みで 64GB/秒が含まれます。 SQL では、190K IOPS、SQL 221 ~ 90 で 10K IOPS、SQL 222 ~ 80 で 20K IOPS のピークが見られました。 Oracle の場合、ピークは 245 IOPS、Oracle 176-90 では 10 IOPS、Oracle 183-80 では 20 IOPS でした。 VDI クローン テストでは、圧縮を使用した ScaleFlux により、フル クローンの起動時に 162K IOPS、初回ログイン時に 154K IOPS、月曜日のログイン時に 101K IOPS が得られました。リンク クローンの場合、ドライブは起動時に 81K IOPS、初期ログイン時に 57K IOPS、月曜日のログイン時に 82K IOPS を実現しました。
ScaleFlux CSD 2000 は非常に興味深い製品であり、コンピューティング ストレージの普及に伴い、従来の SSD スペースに大きな変革が起こる可能性を示しています。 CSD は何年も前から存在しているため、この概念は新しいものではありません。おそらく不足しているのは実行力です。彼らとしては、ScaleFlux は、CSD 担当者の中で私たちの研究室で何かを手に入れた最初の人物です。自信だけでは役に立ちませんが、ドライブは実行しなければなりません。
この場合、パフォーマンスはグラフに表示される数字だけではありませんが、そこではうまくいきました。この SSD プディングの証拠は、圧縮可能なデータに対して適切に機能する能力に関するものです。これは私たちのテストで予想どおりに行われ、2000 つを除くすべてのテスト プロファイルでわずかなパフォーマンス ポップさえももたらしました。この SSD を意味のあるものにするには、ユースケースを調整するだけで十分です。圧縮可能なデータは ScaleFlux テクノロジーから大きな恩恵を受けることは間違いありません。今すぐ VMware や Windows の仮想化サポートが必要ない限り、CSD XNUMX は PoC で調査してワークロードにどれだけのメリットがあるかを確認する価値があります。
StorageReview と連携する
ニュースレター | YouTube | LinkedIn | Instagram | Twitter | Facebook | TikTok | RSSフィード