Amazon Web Services ブログ

Amazon ElastiCache 向け Valkey 9.1 のお知らせ

本記事は 2026 年 6 月 29 日に公開された “Announcing Valkey 9.1 for Amazon ElastiCache” を翻訳したものです。

Amazon ElastiCache で Valkey 9.1 がご利用頂けるようになりました。Valkey オープンソースプロジェクトの最新のコミュニティ主導のイノベーションが、ElastiCache 上で低レイテンシーが求められ、高スループットかつ運用要件が厳しいインメモリワークロードを実行するお客様に提供されます。本投稿では、Valkey 9.1 が、要求の厳しいワークロードからさらに高いスループットとメモリ効率を引き出しながら、マルチテナントおよび共有クラスターのデプロイメントに対してより強力な分離を提供する方法について説明します。また、一般的なアプリケーションや運用ワークフローを簡素化する新しいコマンド、エンジンの動作に対するオペレーターの可視性を高める新しいオブザーバビリティ機能、そして ElastiCache が最新の Valkey オープンソースのイノベーションをフルマネージドサービスとして継続的に提供していく方法についても取り上げます。

オープンソースの Valkey コミュニティは、セキュリティ、可観測性、パフォーマンス、効率性、ツールの強化に重点を置いた貢献により、Valkey 9.1 を開発しました。アップストリームリリースの詳細な技術情報については、Valkey 9.1 コミュニティ発表をご覧ください。

大規模環境におけるコストパフォーマンスの向上

Valkey プロジェクトがコストパフォーマンスに注力していることは、大規模な ElastiCache デプロイメントを運用しているお客様にとって極めて重要です。スループット、レイテンシー、メモリ効率におけるわずかな改善でさえ、大きなコスト削減につながる可能性があるためです。例えば、Samsung Electronics は、ElastiCache for Valkey へアップグレードすることで、グローバルサービスに必要なパフォーマンス、信頼性、開発者体験を維持しつつ、約 30% のインフラコスト削減を達成しました。Valkey 9.1 はこの方針を引き継ぎ、ノードあたりのリクエスト処理数を増やし、同じ容量により多くのデータを保存でき、ワークロードのスケールに応じてより予測可能な運用を実現するための機能強化を提供します。

スループットが制約となるワークロードでは、ノードあたりのパフォーマンスが向上することで、既存インフラ上でのトラフィック増加への対応、スケーリングイベントの遅延、または同じリクエスト量を処理するために必要なノード数の削減が可能になります。Valkey 9.1 には、さまざまなワークロードでスループットを向上させる、再設計された I/O スレッディング通信モデルが含まれています。アップストリームの Valkey ベンチマークテストにおいて、Valkey 9.1 は 512 バイトのペイロード、9 つの I/O スレッド、および 10 コマンドのパイプライン深度を使用して、単一サーバーで 1 秒あたり最大 210 万リクエストを達成しました。完全な結果を確認し、バージョン間で比較するには、Valkey Performance Dashboards をご覧ください。また、アップストリームでテストされたワークロードにおいてスループットを最大 17% 向上させる I/O スレッディングの強化 も含まれています。

Valkey 9.1 では、一般的な高スループットのアクセスパターンのパフォーマンスも向上しています。これには、XRANGEXREVRANGE による高速なストリーム範囲読み取り、キャッシングワークロードにおける高スループットの文字列読み取り、リーダーボードやスケジューラ向けの高速なソート済みセットクエリ、そしてクライアント初期化のオーバーヘッドを削減するキャッシュ済み COMMAND レスポンスが含まれます。

メモリバウンドなワークロードでは、メモリ効率の向上により、同じノードサイズでより多くのデータを保存できます。また、アプリケーションの動作を変更することなく、メモリ圧迫を軽減することも可能です。Valkey 9.1 では、128 バイト未満の STRINGS のメモリ使用量が最大 20% 削減され、ソート済みセットのメモリ使用量が最大 10% 削減されます。これらの削減は、大量の小さなキャッシュ値、ランキング、スケジュール、レート制限の状態を保存するワークロードにとって特に有用です。

Valkey 9.1 では、内部のリハッシュ動作も改善され、キースペースの拡大時におけるレイテンシーへの影響が軽減されています。さらに、SREMZREMHDEL などのバルク削除操作中には、不要なハッシュテーブルのリサイズが一時停止されます。これらの機能強化により、お客様はスループットの向上、メモリ負荷の軽減、運用の予測可能性の向上を実現し、ElastiCache インフラストラクチャからより大きな価値を引き出すことができます。ビジネスにとっては、インフラコストの削減、トラフィック増加への余裕の確保、ピーク需要時の安心感の向上につながります。エンドユーザーにとっては、パーソナライズされた体験の読み込み、リアルタイムランキングの表示、イベント処理、レイテンシーに敏感な AI 機能との対話など、いずれの場面においても、よりレスポンシブで信頼性の高いアプリケーション体験を提供できるようになります。

マルチテナントワークロードに対するきめ細かなアクセス制御

マルチテナントや共有クラスターのワークロードを運用するチームは、クラスターモードのスケーラビリティと可用性を犠牲にすることなく、アプリケーション、テナント、環境を分離する方法を必要としています。例えば MoEngage は、ElastiCache for Valkey を活用して、世界中の 1,350 以上のブランドにサービスを提供し、毎日数十億のパーソナライズされたメッセージを配信するカスタマーエンゲージメントシステムを支えています。Valkey 9.0 では、クラスターモードにおける番号付きデータベースを導入することでこの課題に対応し、論理的な分離とシャード間の水平スケーリングを両立させました。これにより、クラスターモードのメリットをすべて維持したまま、単一クラスター内でテナントや環境を分離できます。

例として、ユーザーを作成し、データベース 0 と 1 へのアクセスに制限することができます:

ACL SETUSER app-user on >secretpass +@all ~* db=0,1

認証後、そのユーザーはデータベース 0 を操作できます:

SELECT 0
OK

SET mykey "hello"
OK

しかし、データベース 2 にはありません:

SELECT 2
(error) NOPERM No permissions to access database

Valkey 9.1 ではその基盤の上に、データベースレベルのアクセスコントロールリストが追加され、ユーザー権限を特定のデータベースに限定できるようになりました。これまでもアクセス制御ルールによって、ユーザーが実行できるコマンドやアクセスできるキーを制限することは可能でしたが、それらの権限はデータベース全体に広く適用されていました。Valkey 9.1 では、必要なデータベースに対してのみユーザーにアクセス権を付与できます。クラスターモードでの番号付きデータベースとデータベースレベルのアクセス制御を組み合わせることで、より強力な分離とガバナンスを維持しながら、共有クラスターに集約できるワークロードの範囲を広げられます。

新しいコマンドによる一般的なワークフローの簡素化

アプリケーションがスケールするにつれて、一時的な状態の消費、複数の有効期限付きキーの設定、クラスター全体のデータスキャンなどの一般的なワークフローを実装するために、チームはマルチステップのクライアントロジックに依存することがよくあります。これらのパターンは、複雑さを増し、ネットワークのラウンドトリップを増加させ、アプリケーションコードの保守を困難にする可能性があります。

Valkey 9.1 ではこれらのワークフローを簡素化する新しいコマンドが導入されました。HGETDEL は、ハッシュから 1 つ以上のフィールドをアトミックに取得して削除します。これにより、一時的な状態、ワンタイムトークン、キューのようなデータを一度だけ消費するワークフローを構築できます。たとえば、ワーカーは他のジョブメタデータをそのまま残しつつ、ジョブの状態を 1 つのコマンドで取得して削除できます。

HSET job:42 status "pending" payload '{"action":"send_email"}' retries "3"
HGETDEL job:42 FIELDS 2 status payload

MSETEX は、共有の有効期限を持つ複数のキーを 1 つのコマンドで設定します。これにより、セッションキー、キャッシュフラグメント、レート制限バケット、その他一時的なアプリケーション状態を一貫した TTL で書き込むようなパターンが簡素化されます。

MSETEX 3 session:abc "user:1" session:def "user:2" session:ghi "user:3" EX 3600

Valkey 9.1 では CLUSTERSCAN も導入されており、クラスター全体でキーをスキャンするための統一された方法が提供されます。これまではクライアントが各ノードを個別にスキャンし、結果をマージする必要がありました。CLUSTERSCAN は、キーを反復処理するためのクラスター全体のインターフェイスを提供することで、クラスター対応の運用ツール、デバッグ、インベントリジョブ、移行ユーティリティを簡素化します。

CLUSTERSCAN 0 MATCH "session:*"

これらのコマンドを組み合わせることで、開発者や運用担当者は一般的なワークフローをより直接的に表現でき、クライアント側の複雑さを軽減し、大規模なクラスターモード有効デプロイメントとより自然に連携するアプリケーションやツールを構築できます。

大規模デプロイメントにおけるオブザーバビリティの向上

Valkey 9.1 では、大規模なデプロイをより効果的に運用できるようにする可視性の改善も新たに追加されています。新しいメインスレッドおよび I/O スレッドの使用率メトリクスにより、エンジンの稼働状況をより明確に把握できるようになり、実際のワークロードによる負荷と想定内のスレッド動作を運用者が見分けやすくなります。

本リリースでは JSON 形式のサーバーログも追加され、カスタムパースロジックなしでオブザーバビリティプラットフォームにエンジンログを取り込み、検索、分析することが容易になります。

これらの機能強化により、チームはクラスターのチューニング、パフォーマンス問題の調査、大規模な ElastiCache デプロイの管理をより自信を持って行えるようになります。

まとめ

Amazon ElastiCache 向け Valkey 9.1 は、高性能キャッシュからリアルタイム性・共有性・運用面での要求が厳しいアプリケーションを支えるより広範な基盤へと、Valkey の進化をさらに推し進めるものです。ノードベースのクラスターを運用するお客様にとって、このリリースはインフラストラクチャの効率向上、ワークロードの分離強化、アプリケーションやツールの複雑さの軽減、そして大規模なデプロイをより高い信頼性で運用することに役立ちます。

まずは以下を試してみましょう:

Amazon ElastiCache 向け Valkey 9.1 は、対応する AWS リージョンにて追加費用なしでご利用いただけます。

著者について

Mas Kubo

Mas Kubo

Mas は AWS のインメモリデータベースチームのプロダクトマネージャーで、Amazon ElastiCache のオープンソース高性能データストアエンジンである Valkey を担当しています。仕事以外では、フリーダイビング、パラグライディング、カイトサーフィン、セーリングを通じて風と海を追いかけています。


本記事は、Announcing Valkey 9.1 for Amazon ElastiCache を翻訳したものです。翻訳は Solutions Architect の Hayato Tsutsumi が担当しました。