一貫した高パフォーマンス

Predictable Performance

一貫した高パフォーマンス

Aerospikeは、1サーバ当たり、最低100万TPSのスループットを実現してきました。単にパフォーマンスが高いだけではなく、Aerospikeは、バラツキの少ない一貫したパフォーマンスを提供します。高い書き込みスループットを低レイテンシで実現したことにより、大規模なアプリケーションを低費用で開発することが可能となりました。


多彩でカスタマイズされた体験を提供することにより、顧客に興味を抱かせ、より良い関係を保つために、企業はビックデータをリアルタイムで解析し、適切なアクションを提供できるようにアプリケーションを進化させる必要があります。多くの場合、アプリケーションは、大量のデータにアクセスするだけでなく、多大な書き込み負荷の下、特定のデータを抽出しなければなりません。リアルタイムに顧客に対応するためには、ビッグデータを扱うシステムや知的なアプリケーションにより構成される何層もの技術が必要となります。そのような技術の中心となるものは、高速で安定した性能を発揮できるデータベースであり、その結果、システム全体として最速のパフォーマンスを実現し、ブランドに対するダメージを避けることが可能となります。

Aerospikeのリアルタイム・エンジンは、2010年から実運用されており、高い書き込み負荷の下、低レイテンシでバラツキの少ないパフォーマンスと十分な一貫性を達成すべく開発されています。

  1. スマート・クライアント・アーキテクチャ: Aerospikeのスマート・クライアント・アーキテクチャは、クラスタ内の複数のノードに並列的なアクセスを可能にし、SPOFになり得る中央管理サーバのような存在無しに個々のレコードにアクセスします。その際、一回のネットワーク・ホップのみでアクセスが可能であり、ネットワーク遅延を最小限にしています。互いに独立した各クライアントは、全てのノード内に保持されるデータ構造を認識しており、加えて、コネクション・プール等の利用により、レイテンシはクラスタの増大により、大きくなることはありません。均一に分散したデータを保持するノードへのアクセスをクライアントが管理しているため、ロード・バランサも必要ありません。
  2. ハイブリッド・メモリ・アーキテクチャ: Aerospikeのハイブリッド・メモリ・アーキテクチャでは、ロックの競合やストレージに対する想定外の読み込みを削減するため、高度に並列化されたDRAM上のインデックスを利用します。フラッシュ(SSD)に最適化されたAerospikeのストレージ層は、それらの機器の動作を減らし、1リクエスト当たり、1回のストレージに対するアクセスを保証することににより、ストレージにおける遅延を最小限にしています。このDRAM上のインデックスを利用することで、バックグラウンドで動作する保守作業の影響も最小限にしています。
  3. C言語: Aerospikeサーバは、C言語で開発されており、CPUの内部キャッシュ、データの流れ、メモリ・アクセスを最適化しています。Javaベースのデータベースと異なり、使用したJava VMの実装や調整パラメータに依存すること無く、独自開発されたメモリ管理機能により、安定したレスポンスを実現しています。同時に、バックグラウンドでは、データに関する領域確保、寿命管理、移行管理を継続的に実施しています。

データベースのパフォーマンスは、安定して一貫していること、高速であることが必須です。Aerospikeは、オンプレミスでもクラウド環境でも、DRAMとフラッシュ(SSD)上で、業界随一のパフォーマンスをご提供します。

Aerospikeのパフォーマンスに関し、2016年に実施したベンチマークの結果をご説明します。Cassandraと比べ、14倍も高速なスループット、また、レイテンシは42分の1という結果になっており、共に、非常にバラツキの少ない安定した性能であることがわかります。

ulat
ulat


ulat
ulat



図1. AerospikeとCassandraのRead/writeのスループットとレイテンシ


Intel Benchmark: NVMeを利用し、Aerospikeで100万TPSを実現

ご注目ください。DRAMでの性能ではありません。インテル社のP3700というSSDを使用し、一台のAerospikeサーバで毎秒100万件のトランザクションを達成しました。他ソリューションでは、DRAM上にデータを展開するところですが、Aerospikeでは、NVMeにデータを載せています。その結果、大量のデータをわずかな費用で保持することが可能となりました。


インテル社のベンチマーク: Aerospikeで250万TPS

インテル社のベンチマークでは、Xeon E5-2600プロセッサを搭載した一台のAerospikeサーバで、毎秒250万件のトランザクションを達成しました。スケーラビリティに不安を持つことなく、NoSQLアプリケーションを開発するには、Aerospikeは最適の選択肢です。

Cassandraベンチマーク

他のベンチマーク