DUICUO

マイクロソフト、高スループット、低レイテンシ、スケーラビリティを実現する Garnet キャッシュ ストレージ システムを発表

マイクロソフトは3月20日、ハードウェアの能力を最大限に活用し、アプリケーション開発者がアプリケーションをより高速に実行できるようにする、Garnetという新しいキャッシュ ストレージ システムを発表しました。

Microsoft は Garnet をオープンソース化し、Windows & Web Experiences Platform、Azure Resource Manager、Azure Resource Graph に導入されていると述べています。

マイクロソフトはプレスリリースで、アプリケーションとサービスが「これまで以上に高い効率、低遅延、低コスト」でデータにアクセスできるようにすることを目標に、Garnet プロジェクトが 2021 年に開始されたと述べた。

Garnetは、Microsoft ResearchがC# .NET 8.0をベースに開発した新しいタイプのリモートキャッシュストレージシステムです。高速性、スケーラビリティ、低レイテンシを実現するように設計されています。

Garnet は単一ノード内でスレッドをスケーリングでき、レプリケーション、チェックポイント、フェイルオーバー、トランザクション処理などの機能を使用して、シャード クラスターの実行をサポートします。

メインメモリだけでなく、SSDやAzure Storageなどの階層型ストレージでも実行できます。Garnetは豊富なAPIと堅牢なスケーラビリティモデルを提供します。

Microsoft は、Garnet の利点を次のように概説しています。

  • Garnet は、一般的な RESP ワイヤ プロトコルを開始点として使用します。これにより、Garnet は現在ほとんどのプログラミング言語で変更されていない Redis クライアントを直接使用できます。
  • Garnet は優れたスケーラビリティとスループットを提供し、複数のクライアントや小さなバッチへの接続を可能にするため、大規模なアプリケーションやサービスのコストを節約できます。
  • Garnet は、99 パーセンタイルと 99.9 パーセンタイルでクライアントのレイテンシが優れていることを実証しました。これは、実際のアプリケーションにとって非常に重要です。
  • Garnetは最新の.NETテクノロジーを基盤として構築されており、クロスプラットフォームの互換性、スケーラビリティ、そして最新性を備えています。通常の使用状況においてパフォーマンスを犠牲にすることなく、開発と進化を容易に行えるように設計されています。.NETの豊富なライブラリエコシステムを活用することで、幅広いAPIを提供し、オープンな最適化の機会を提供しています。.NETを綿密に活用することで、GarnetはLinuxとWindowsの両方で最先端のパフォーマンスを実現しています。

実験1: 異なるクライアントセッション数でのスループット

図 1: データベース サイズ (a) 1024 キーと (b) 2 億 5,600 万キーでクライアント セッション数が変化するときのスループット (対数スケール)。

実験2: 異なるバッチサイズのスループット

図 2: データベース サイズが (a) 1024 キー、(b) 2 億 5600 万キーの場合のバッチ サイズの変化に対するスループット (対数スケール)。

実験3: 異なるクライアントセッション数におけるレイテンシ

図3: クライアントセッション数の違いによるレイテンシの変化、(a)中央値、(b)99パーセンタイル、(c)99.9パーセンタイル

実験4: 異なるバッチサイズでの遅延

図4: 異なるバッチサイズにおける遅延変動、(a)中央値、(b)99パーセンタイル、(c)99.9パーセンタイル

IT ホームでは参照アドレスを提供しています。

  • アプリケーションとサービスを高速化するオープンソースの次世代高速キャッシュストア、Garnet のご紹介