データセンターでは、プロセッサとストレージの間で終わりのない競争が繰り広げられています。過去 8 年間で、プロセッサに搭載されるコアの数は 16 つまたは 32 つから 64、XNUMX、XNUMX、さらには XNUMX 個に増加しました。この間のストレージ テクノロジにより、レイテンシが劇的に短縮され、データ スループットが向上しました。しかし、現実には、PCIe デバイスまたはネットワーク ストレージに存在するデータを待機するために、あまりにも多くの CPU サイクルが無駄にされています。新しいタイプのストレージ ハードウェア、ストレージ クラス メモリ(SCM)の出現により、私たちは転換点に達しつつあります。 SCM はメモリ チャネル上に常駐するため、周辺ストレージの遅延やデータ帯域幅の制限によって妨げられることはありません。メモリ チャネル上にあると、SCM は CPU にはるかに近くに配置されます。つまり、最新の CPU にデータを送信するための同時「スイム レーン」が増えます。これにより、プロセッサがデータにアクセスできる速度が大幅に向上します。
SCM は一般的なデータセンター ストレージ ソリューションよりもはるかに高速であるため、ストレージの使用方法を再構築することができます。 SCM にはストレージをデータセンター技術競争の先頭に立つ可能性がありますが、それを実現できるのは、SCM の能力をデータ ストレージに効果的に利用する工夫された機能があれば、それを活用できた場合に限られます。この記事では、SCM とは何かを説明し、このテクノロジがこれほど変革をもたらす理由、つまりこのテクノロジの有望性、テストのプロセス、およびこのテクノロジがデータセンターで変革をもたらす可能性があると考える理由について説明します。
多くの新しいハードウェア技術の問題点の1つは、その機能を活用するためにアプリケーションやサービスの書き換えや再設計が必要になる場合があることです。その典型的な例が、マルチコアプロセッサが初めて登場した際に、その機能を活用するためにマルチスレッドコードを記述する必要があったことです。SCMも同様の状況でしたが、Formulus Black社が、既存の変更されていないアプリケーションがSCMを活用してアプリケーションのパフォーマンスを向上させる方法を考案しました。Formulus Black社は、アプリケーションが変更を加えることなくSCMを活用できるように、標準的なPOSIX準拠のブロックデバイスを提供するメモリ管理ソフトウェアを開発しました。Formulus Black社による初期のテストでは、SCMを基盤としたストレージを利用するアプリケーションは大幅なパフォーマンス向上を実現していることが示されています。StorageReview.comのラボで、これらの向上を検証し、定量化します。
Formulus Black の詳細を掘り下げる前に、SCM とその背景について簡単に説明しましょう。 SCM は、プロセッサがペリフェラル バス (NVMe や SSD/HDD の場合のように) ではなく、DIMM スロットを介してメモリ バスにアクセスするという点で、これまでに見てきた他のサーバー ストレージとは大きく異なります。また、このプロセッサの方式も同様です。アクセスはレイテンシの大幅な減少につながります。 DRAM(永続的ではない)とは異なり、SCM は停電後または再起動後も情報を保持します。 SCM には SSD/HDD テクノロジに勝る他の機能もありますが、アクセス速度とその永続性が最も重要です。
SCMを実現するための技術開発には長い年月を要しました。現在SSDデバイスで使用されているNANDフラッシュメモリをDIMMスロットに差し込むだけでは十分な性能を発揮しないため、新たな半導体の開発が必要でした。インテルは、Optane DCパーシステントメモリ製品ラインに採用されている3D XPointチップによって、SCM技術の最先端を走っていました。
Intel による初期のテストでは、3D XPoint は NAND よりも 100 倍高速ですが、DRAM よりはわずか 10 倍遅いことが示されています。 3D XPoint は、DRAM よりも大幅に遅いにもかかわらず、より大容量で低コストのデバイスをサポートし、前述したように、DRAM にはないデータの永続性を備えています。市場にはさまざまな SCM PMEM 製品がありますが、説明を簡単にするため、また現時点ではインテルがこの分野のリーダーであると思われるため、この記事では同社の SCM 製品に焦点を当てます。
SCM製品が利用可能になると、企業はこのテクノロジーを最大限に活用する方法を模索する必要がありました。そして、Formulus BlackはForsaによってまさにそれを実現しました。Forsaは、SCMまたはDRAMを物理メモリ媒体として使用し、論理拡張メモリ(LEM)と呼ばれるブロックレベルデバイスの作成と管理を可能にするソフトウェアスタックです。LEMはPOSIX準拠であるため、アプリケーションはそれを直接使用できます。標準ファイルシステムをマウントすることも、仮想マシン(VM)で使用することも可能です。補足として、ForsaはDRAMでも使用できますが、StorageReview.comラボで行うテストはOptane DC Persistent Memory(DCPMM)を使用します。
DCPMM 用のブロックレベルのデバイス ドライバーは他にもありますが、他のブロックレベルのデバイスとは異なり、Formulus Black は LEM にデータの整合性、リアルタイムのデータ削減、クローン、スナップショット、高可用性などのエンタープライズ ストレージ機能を提供します。これらの機能は、 (LEM が VM によって使用されているかどうかに関係なく)ファイル システムとして、またはアプリケーションによって直接利用できます。さらに、FORSA は、ストック DCPMM が NUMA を認識しないのに対し、FORSA LEM は NURA アーキテクチャにより NUMA を認識するなど、メモリ チャネルの使用に特有の複雑さに対処します。たとえば、テスト ラボの Lenovo SR950 サーバー上で XNUMX つの個別の SCM ストレージ領域をプロビジョニングおよび管理する代わりに、Forsa はマルチソケット サーバー上のすべての NUMA ノードにまたがるすべての SCM メモリ領域をマップし、SCM のプロビジョニングおよび管理を可能にします。すべての SCM 容量の合計を使用するベースの LEM。
Forsa には洗練された Web ベースのユーザー インターフェースがあるため、上記のエンタープライズ機能を備えた LEM を作成して有効にすることは非常に簡単です。ただし、Formulus Black は API ファーストの考え方を持っているため、すべての LEM 管理機能には RESTful API 経由でアクセスできます。
データの整合性を確保するために、Forsa にはメモリ エラー チェックと不良ブロック置換 (BBR) を行う中央フォールト トレランス マネージャー (CFTM) が搭載されています。
データ効率を高めるために、Formulus Black はデータ削減機能も提供します。これは、独自の Formulus Bit Marker (FbM) テクノロジーを使用して重複データを削減するリアルタイム インライン アルゴリズムです。 Formulus Black による初期のテストでは、FbM によって同じ物理メモリ メディアに保存できる生データの量が増加し、ストレージの高速層としてメモリを使用する場合の GB あたりの実効コストが削減できることが示されています。しかし、多数の RHEL VM インスタンスをデプロイしたニッチなケースのテストでは、FbM によってメモリの有効ストレージ容量が 20 倍以上増加したと主張しています。これは、RHEL のゴールデン イメージ インスタンスや、複数の仮想マシン インスタンス間で実行されているその他のアプリケーション データなどのデータ パターンを検出する FbM の機能によるものです。
データ保護の場合、Forsa は高可用性 (HA) モードで使用でき、保護する LEM のミラー イメージを 2 番目のノードに作成します。 HA モードは、非永続的であるため、高価値 LEM の場合、またはストレージのバックアップとして DRAM を使用する場合に非常に便利であることがわかります。
LEM を SSD ストレージ デバイスにバックアップして保護することもできます。 Forsa のバックアップ機能である BLINK は、システム上のすべての LEM または一部の LEM で使用できる機能です。 HA モードと同様に、BLINK は、高価値の LEM を使用する場合、または非永続的な DRAM をストレージのバックアップとして使用する場合に非常に便利であることがわかります。
作成する LEM が単一サーバー上の DRAM または SCM の容量を超える場合があります。このような状況に対応するために、Forsa を使用して、Forsa を実行している 2 つのサーバーにまたがる LEM を作成できます。
Forsa を実行するための要件はかなり緩く、Formulus Black の Web サイトに記載されています。Intel Optane DC Persistent Memory の要件はより厳しく、特定のマザーボードと特定の最新プロセッサモデルでのみサポートされています。今回のテストでは、高性能な Lenovo SR950 サーバーを使用します。使用する SR950 は、768 GB の RAM、4 x 8280M CPU、ブートに使用するオンボード SATA m.2 SSD、および 12 x 1.6TB Intel P4610 NVMe SSD を搭載しています。以前のテストでは、印象的なパフォーマンス結果が得られました。VDBench ワークロードでは、4K 読み取りで 5 万 IOPS 以上、4K 書き込みで 3.2 万 IOPS を達成できました。これは、CPU パフォーマンスの問題によってボトルネックにならないため、Forsa をテストするのに最適なシステムです。SR950の完全なレビューは、こちらでご覧いただけます。
SAP HANA などのいくつかのアプリケーションは、DCPMM テクノロジを活用するために書き換えられたり、変更されたりしていますが、大部分はまだされていません。 Forsa は、この非常に高速なストレージを使用できることに加えて、HA、バックアップ、FbM によるデータ削減など、企業顧客が要求する機能をサポートするため、DCPMM の機能を拡張します。 Formulus Black Forsa には多くの期待があり、私たちの研究室でこれを使用することを楽しみにしています。アプリケーションの書き換えや再構築を行わずに SCM テクノロジーを活用できるため、Forsa は DCPMM のキラー アプリケーションになる可能性があります。
Formulus Black は、Forsa が市場で永続メモリ用の最速のブロック ストレージ インターフェイスであることについて大胆な主張をしており、Forsa LEM は永続メモリのネイティブ ファイルシステムをも上回るパフォーマンスを発揮していると主張しています。 StorageReview では、ラボでこれを使用し、これらの主張をテストすることを楽しみにしています。
Formulus Black 製品概要(PDF)
このレポートはFormulus Blackの後援を受けています。このレポートで表明されているすべての見解や意見は、検討中の製品に対する当社の公平な見解に基づいています。




Amazon