Home Enterprise Intel Optane DC 永続メモリ NoSQL パフォーマンス レビュー

Intel Optane DC 永続メモリ NoSQL パフォーマンス レビュー

by ブライアン・ビーラー

今年の初めに投稿しました Intel OptaneDC永続メモリ 私たちのレビューのデータ Supermicro スーパーサーバー 1029U-TN10RT プラットフォームを提供します。 スーパーマイクロ Intel 永続メモリのサポートを最初に備えたシステムの 2 つであり、デュアルプロセッサ XNUMXU システムは永続メモリのテストベッドとして優れた機能を果たしました。従来のブロック ストレージ方式で Optane DC 永続メモリの速度を見ることは有益ですが、永続メモリの真の価値は、この新しいメディアをネイティブに活用できるアプリケーションによって明らかになり、データを DRAM、永続メモリ、またはオンボード ストレージにインテリジェントに配置できます。アプリケーションのニーズ。 Optane DC 永続メモリのパフォーマンス プロファイルをより深く理解するために、最先端の NoSQL プラットフォームである Aerospike を使用して Supermicro サーバーを動作させました。


今年の初めに投稿しました Intel OptaneDC永続メモリ 私たちのレビューのデータ Supermicro スーパーサーバー 1029U-TN10RT プラットフォームを提供します。 スーパーマイクロ Intel 永続メモリのサポートを最初に備えたシステムの 2 つであり、デュアルプロセッサ XNUMXU システムは永続メモリのテストベッドとして優れた機能を果たしました。従来のブロック ストレージ方式で Optane DC 永続メモリの速度を見ることは有益ですが、永続メモリの真の価値は、この新しいメディアをネイティブに活用できるアプリケーションによって明らかになり、データを DRAM、永続メモリ、またはオンボード ストレージにインテリジェントに配置できます。アプリケーションのニーズ。 Optane DC 永続メモリのパフォーマンス プロファイルをより深く理解するために、最先端の NoSQL プラットフォームである Aerospike を使用して Supermicro サーバーを動作させました。

Intel OptaneDC永続メモリ
Supermicro サーバーのインテル Optane DC 永続メモリ モジュール

エアロスパイクとは?

Aerospike は、運用データを含む要求の厳しい読み取り/書き込みワークロードに対応する、分散型で拡張性の高い非リレーショナル データベース管理システムを提供します。数十から数百 TB のデータベース内の数十億のレコードにまたがるデータ セットにアクセスする際に、非常に高速で予測可能な応答時間を実現するように設計されています。 Aerospike は、詐欺防止、デジタル決済、推奨エンジン、リアルタイム入札などを含む、さまざまな戦略的アプリケーションを強化します。 Aerospike の顧客には、Adobe、Airtel、FlipKart、Kayak、Nielsen、PayPal、Wayfair などの大手企業が含まれます。

ユース ケースとデータ セットに応じて、Aerospike は、ユース ケースに合わせてシステム リソースを最適化するさまざまな構成で導入できます。 Aerospike は、メモリ内のデータを使用して起動することも、SSD 上のデータを使用してメモリ内のインデックスを作成することも、SSD 上のデータを使用して SSD のインデックスを作成することもできます。最近、Aerospike は、AppDirect モードで Intel の Optane DC 永続メモリを利用する新しい構成をリリースしました。インデックスは、SSD 上のデータとともに PMEM に保存されます。この新しいモードは、SSD 上のデータを使用してメモリ内のインデックスに非常に近いパフォーマンスを維持しながら、Aerospike の容量を拡張します。この新しいモードでは、ミリ秒未満のレイテンシが提供されるだけでなく、プライマリ インデックスの再構築なしで Aerospike の高速完全再起動も可能です。

さまざまな Aerospike 構成にさまざまなタイプのワークロードを適用することで、SuperMicro SuperServer で Intel Optane DC 永続メモリを利用することによるメリットとパフォーマンスを評価できます。 SSD 構成上のメモリ/データのインデックスと SSD 上の PMEM/データのインデックスに対してベンチマークを実行して比較すると、永続メモリと DRAM の使用について情報に基づいた選択を行うための情報が得られます。永続メモリのパフォーマンスに関する追加の洞察を提供できる追加の構成が 1 つあります。 PMEM のインデックスと PMEM のデータ機能はリリースされていませんが、サーバー上の PMEM を構成して PMEM のインデックスを使用して実行し、ブロック デバイスとして構成された PMEM の一部を実行する方法があります。 PMEM のインデックスと PMEM のデータのパフォーマンスの可能性。

Aerospike NoSQL 構成

50 つの異なるワークロードが 50 つの異なる構成のそれぞれに適用されました。 Aerospike Java ベンチマークは、4 台のクライアント サーバーから XNUMX/XNUMX の読み取り/書き込みワークロード、読み取り専用ワークロード、および書き込み専用ワークロードを生成しました。各テストは複数のフェーズで構成されています。

  • 取り込みフェーズ – データをデータベースにロードします。
  • ウォームアップ フェーズ – 書き込み負荷を 2 時間実行して、データベースの定常状態を作成します。
  • テスト フェーズ – テスト用の実際のワークロードを 1 時間実行します。

テストを実行する前に、データに適切なキー セットとオブジェクト サイズが選択されました。 Aerospike には、数バイトから 440 万バイトまで幅広いオブジェクト サイズがありますが、キー セットとオブジェクト サイズは、サーバー ハードウェアを動作させ、PMEM 構成のパフォーマンスを実証するために選択されました。オブジェクトのサイズが大きくなると、ネットワークのボトルネックが発生し、Optane DC 永続メモリの能力が十分に発揮されなくなる可能性があります。したがって、すべてのテストで XNUMX バイトのオブジェクト サイズが使用されました。

キー セットのサイズは、SSD 構成のメモリ/データのインデックスに使用されるメモリの量によって制限されました。メモリ構成のインデックスは、4 億オブジェクトのデータ セットに制限されていました。 PMEM のインデックスは 15.5 億キーの容量を処理できますが、メモリ テストのインデックスとより適切に比較するには、4 億キーのみが使用されました。最終的なテスト セットは、PMEM のインデックスと PMEM のデータを使用して実行されました。サーバーには合計 1.5 TB の PMEM が搭載されていたため、これらのテストには XNUMX 億個のキーのみが使用されました。

ハードウェア構成

ハードウェア構成には 2 つの主要なコンポーネントが含まれています。単一のデータベース サーバーには、Intel Optane PC 永続メモリが収容されています。 4 つのクライアント サーバーは、データベース サーバーに対する負荷を生成します。

データベースサーバー

  • シャーシ – SuperMicro Ultra 1U SYS-1029U-TN10RT
  • CPU
    • 2 x Intel Xeon スケーラブル 8268 (2.9GHz、24C)
    • 2 x Intel Xeon スケーラブル 8280 (2.7GHz、28C)
  • ストレージ – 10 x Intel DC P4510 2TB NVMe SSD、1DWPD
  • DRAM – 12 x 32GB DDR4-2933
  • 永続メモリ – 12 x 128GB DDR4-2666 Intel Optane DC PMM
  • ネットワーク – 100 GbE
  • OS – Fedora 29  

クライアントサーバー

  • シャーシ – Dell R740xd
  • CPU – 2 x Intel Xeon スケーラブル 6130
  • DRAM – 256GB
  • ネットワーク – 2 x 25 GbE
  • OS – Ubuntu – 18.04
  • ソフトウェア – Aerospike Enterprise 4.5.1
  • ロード ジェネレーター – Aerospike Java ベンチマーク (Aerospike Java クライアント 4.4.0)

エアロスパイクのパフォーマンス結果

前述したように、さまざまなワークロード構成およびインデックスとデータベースの場所でテストを実行しました。さらに、2 つの異なるセットを使用しました。 第 2 世代インテル Xeon スケーラブル CPU。データベース サーバーでは 8268 と 8280 の両方を実行しました。8280 CPU は、Optane DC 永続メモリをサポートする最上位の Intel CPU です。生のクロック速度では、8280 は 12 よりも 8268Ghz 向上しており、パフォーマンスが 8.6% 向上しています。以下の表には含まれていませんが、サービス品質の観点からは、テストのすべての遅延結果がサーバーで 100% ミリ秒未満かそれに近い値であったことに注意してください。

メモリ内のインデックス、NVMe SSD 上のデータ

アクティビティXNUMX スループット操作
インテル8268
スループット操作
インテル8280
読み取り/書き込み 50/50 2,100,000 2,298,000
100%読む 2,240,000 2,720,000
100%書き込み 1,760,000 2,020,000

8280 が 8.6 と比較して生のクロック速度が 8268% 向上していることはわかっていますが、それがアプリケーションの改善にどのように変換されるかを確認することが中心的な目的です。 Aerospike では、インデックスがメモリ内にあり、データが NVMe SSD 上にあるため、次の項目の変更が見られました。読み取り/書き込み混合の 50/50 パフォーマンスは 9.4% 向上し、100% 読み取りでは 21.4% 向上し、100% 書き込みではパフォーマンスが 14.8% 向上しました。 

Optane DC 永続メモリのインデックス、NVMe SSD のデータ

アクティビティXNUMX スループット操作
インテル8268
スループット操作
インテル8280
読み取り/書き込み 50/50 2,000,000 2,252,000
100%読む 2,200,000 2,630,000
100%書き込み 1,740,000 1,980,000

このデータからわかるように、インデックスを DRAM から永続メモリに移動しても、トランザクション パフォーマンスにはほとんど影響がありません。ただし、本番環境では、これが意味するのは、Aerospike はインデックスに DRAM の代わりに永続メモリを使用できるため、再構築のために大規模な DRAM プールを SSD に移動する必要がないため、データベース ノードの再起動後の復元がはるかに高速になるということです。テスト対象の 128GB Optane DC 永続メモリ モジュールは 128GB DIMM よりも大幅に安価であるため、高密度ボックスのコストも削減されます。 

Optane DC 永続メモリのインデックスとデータ

アクティビティXNUMX スループット操作
インテル8268
スループット操作
インテル8280
読み取り/書き込み 50/50 2,600,000 2,866,000
100%読む 2,810,000 3,100,000
100%書き込み 2,120,000 2,210,000

前述したように、Aerospike は、Intel Optane DC 永続メモリ上でインデックスとデータベースの両方を実行する機能の一般提供を発表しましたが、まだ提供していません。とはいえ、それを可能にする現在のコード ビルドのデモを行ったところ、混合ワークロードにおいて 33 秒あたり約 600,000%、つまり XNUMX オペレーションが増加したことがわかりました。 

まとめ

Intel Optane DC 永続メモリは、データ階層の非常に強力な部分です。 RAM とストレージの間にスロットを配置する Intel の永続メモリは、ついにテクノロジーの主流をもたらします。しかし、新しいストレージ テクノロジにアクセスできるだけでは十分ではありません。永続メモリをネイティブに活用できるアプリケーションは、大きな競争上の優位性を持つことになります。 Aerospike の柔軟性は、Optane DC 永続メモリのアプリ ダイレクト モード サポート (ブロック ストレージ) を最初から備えていたことを示しています。さらに、インデックスとデータの両方を永続メモリ モジュールに保持するという点では、NoSQL の世界のリーダーです。後者はまだ新たなビジョンですが、初期の結果は非常に有望に見えます。

エアロスパイク

このレビューについて話し合う

StorageReview ニュースレターにサインアップする