Azure Managed Redis には、 Redis Enterprise ソフトウェアに基づくメモリ内データ ストアが用意されています。 Redis Enterprise は、互換性を維持しながら、Redis のコミュニティ エディションのパフォーマンスと信頼性を向上します。 このサービスは、Microsoft によって管理されており、Azure 上でホストされ、Azure 内外の任意のアプリケーションから使用できます。 Azure Managed Redis の構築方法の詳細については、「Azure Managed Redis のアーキテクチャ」を参照してください。
注
Azure Managed Redis は製品として一般公開 (GA) されています。 ただし、一部の機能はパブリック プレビューのままです。
- キャッシュのスケーリング
- データの永続化
- クラスター化されていないキャッシュ
Azure Managed Redis は、バックエンド データ ストアを頻繁に使用するアプリケーションのパフォーマンスとスケーラビリティを向上します。 頻繁にアクセスされるデータをサーバー メモリに保持することで、大量のアプリケーション要求を処理できます。このデータは、すばやく書き込んで読み取ることができます。
Redis によって、きわめて低遅延かつ高スループットのデータ ストレージ ソリューションがモダン アプリケーションにもたらされます。 さらに Redis は、データ インジェスト、重複除去、メッセージング、ランキング、セマンティック キャッシュのほか、ベクトル データベースとして、非キャッシング アプリケーションにますます使用されています。
Azure Managed Redis は、スタンドアロンでデプロイすることも、Azure Container Apps、Azure App Service、Azure Functions、Azure SQL、Azure Cosmos DB などの他の Azure アプリまたはデータベース サービスと共にデプロイすることもできます。
主なシナリオ
Azure Managed Redis は、一般的なアプリケーションのアーキテクチャ パターンをサポートしているため、アプリケーションのパフォーマンスが向上します。 次のパターンなど、最も一般的なものをいくつか示します。
パターン | 説明 |
---|---|
データ キャッシュ | 多くの場合、データベースが大きすぎてキャッシュに直接読み込むことができません。 キャッシュ アサイド パターンを使用して、必要な場合にだけデータをキャッシュに読み込むのが一般的です。 システムがデータを変更した場合、システムはキャッシュも更新できます。それが後で他のクライアントに配布されます。 さらに、システムでは、データの有効期限を設定したり、削除ポリシーを使用してキャッシュへのデータの更新をトリガーしたりすることができます。 |
コンテンツ キャッシュ | 多くの Web ページは、ヘッダー、フッター、バナーなどの静的コンテンツを使用するテンプレートから生成されます。 これらの静的項目は、頻繁には変更されません。 メモリ内キャッシュを使用すると、バックエンド データストアと比較して、静的コンテンツに迅速にアクセスできます。 このパターンでは、処理時間とサーバーの負荷が軽減されるため、Web サーバーの応答性が向上します。 負荷に対処するために必要なサーバー数を減らすことができます。 Azure Managed Redis は、このパターンを ASP.NET でサポートするために、Redis 出力キャッシュ プロバイダーを備えています。 |
セッション ストア | このパターンは通常、Web アプリケーションでユーザーの Cookie に関連付けられる、ショッピング カートなどのユーザー履歴データに使用されます。 Cookie に格納する情報量が多すぎると、Cookie のサイズが大きくなり、大きなサイズ の Cookie が要求ごとに渡されたり検証されたりするため、パフォーマンスに悪影響を及ぼす場合があります。 一般的なソリューションでは、データベース内のデータにクエリを実行するためのキーとして、Cookie を使用します。 ユーザーに情報を関連付けるために、Azure Managed Redis などのメモリ内キャッシュを使用すると、リレーショナル データベース全体を操作するよりも高速になります。 |
ベクトル類似性検索 | 一般的な AI のユース ケースは、大規模言語モデル (LLM) を使用してベクトル埋め込みを生成することです。 これらのベクトル埋め込みは、ベクトル データベースに格納してから、類似性を判断するために比較する必要があります。 Azure Managed Redis には、ベクトル埋め込みを高スループットで格納および比較する機能が組み込まれています。 |
セマンティック キャッシュ | LLM を使用すると、アプリケーションに対して (生成時間が原因で) 待機時間が長くかかり、(トークンごとの価格発生が原因で) コストがかさむことがよくあります。 キャッシュは、LLM の過去の出力を保存して、再び迅速に取得できるようにすることで、これらの問題を解決するのに役立ちます。 ただし、LLM は自然言語を使用するため、一般的なキャッシュが処理するのが難しい場合があります。 Azure Managed Redis のようなセマンティック キャッシュは、特定のクエリだけでなく、クエリのセマンティックな意味をキャッシュできるため、LLM でより自然に使用できます。 |
Deduplication (重複除去) | 多くの場合、ユーザー名が取得されたかどうかや、顧客が既にメールを送信したかどうかの判断など、システムで既にアクションが発生したかどうかを判断する必要があります。 Azure Managed Redis では、ブルーム フィルターによって重複を迅速に特定し、問題を防ぐことができます。 |
ランキング | Redis は、きちんと分類されたデータ構造を使用して、あらゆる種類のランキングを開発するためのシンプルで強力なサポートを提供します。 さらに、アクティブ geo レプリケーションを使用すると、1 つのランキングをグローバルに共有できます。 |
ジョブおよびメッセージ キュー | アプリケーションは、多くの場合、要求に関連付けられている操作の実行に時間がかかると、キューにタスクを追加します。 実行時間の長い操作は、通常は別のサーバーによって順番に処理されるように、キューに登録されます。 作業を延期するこの手法は、タスク キューと呼ばれます。 Azure Managed Redis は、アプリケーションでこのパターンを有効にするために、分散キューを提供します。 |
PowerBI/Analytics の高速化 | Redis ODBC ドライバーを使用して、REDIS for BI、レポート、分析のユース ケースを利用できます。 通常、Redis はリレーショナル データベースよりもはるかに高速であるため、この方法で Redis を使用すると、クエリの応答性が大幅に向上する可能性があります。 |
分散トランザクション | アプリケーションは、バックエンド データストアに対する一連のコマンドを単一のアトミック操作として実行することを必要とする場合があります。 すべてのコマンドが成功する必要があり、成功しなかった場合はすべて、初期の状態にロールバックされる必要があります。 Azure Managed Redis は、一連のコマンドを単一のトランザクションとして実行する方法をサポートしています。 |
Redis のバージョン
Azure Managed Redis は、Redis バージョン 7.4.x をサポートしています。 詳細については、「Azure Managed Redis インスタンスのバージョンをアップグレードする方法」を参照してください。
最適なサービス レベルを選択する
Azure Managed Redis には 4 つのレベルが用意されており、それぞれパフォーマンス特性と価格レベルが異なります。
メモリ内データには、次の 3 つのレベルがあります。
Von Bedeutung
120 GB を超えるストレージを使用するすべてのメモリ内層は、メモリ最適化 M150 以上、バランス B150 以上、コンピューティング最適化 X150 以上を含めて、パブリック プレビュー段階にあります。 これらのレベル以上はすべてパブリック プレビュー段階です。
フラッシュ最適化レベルはすべてパブリック プレビュー段階です。
- メモリ最適化 高いメモリ対 vCPU 比率 (8:1) を必要とするが最高のスループット パフォーマンスは必要としない、メモリ集中型のユース ケースに最適です。 処理能力やスループットが低く必要なシナリオでは価格が低く、開発環境やテスト環境に最適です。
- バランス (メモリとコンピューティング) バランスの取れたメモリ対 vCPU (4:1) 比率を提供するため、標準ワークロードに最適です。 このレベルでは、メモリとコンピューティング リソースの正常なバランスが提供されます。
- コンピューティング最適化 メモリ対 vCPU (2:1) の比率が低く、最大スループットを必要とするパフォーマンス集中型のワークロード向けに設計されています。 最高のパフォーマンスを必要とするアプリケーションに最適です。
1 つの層には、メモリ内とディスク上の両方のデータが格納されます。
- Flash Optimized (プレビュー) Redis クラスターで、アクセス頻度の低いデータをメモリ (RAM) から NVMe ストレージに自動的に移動できるようにします。 これによりパフォーマンスは低下しますが、大規模なデータセットを使用したキャッシュのコスト効率の高いスケーリングが可能になります。
注
フラッシュ最適化レベルがどのように設計されているかの詳細については、「Azure Managed Redis のアーキテクチャ」を参照してください。
Von Bedeutung
データ永続化 (プレビュー) 機能を使用して、メモリ内層のデータをディスクに格納することもできます。 データ永続化では、予期しない停止が発生した場合に迅速に復旧するために、データのバックアップ コピーがディスクに格納されます。 これは、一般的な操作のためにディスクにデータを格納するように設計されたフラッシュ最適化レベルとは異なります。 Flash Optimized レベルを使用して一部のデータをディスクに格納しても、データの回復性は向上しません。 フラッシュ最適化レベルでもデータ永続化を使用できます。
レベルと SKU の間でスケーリングする方法については、 Azure Managed Redis インスタンスのスケーリング (プレビュー) に関するページを参照してください。
レベルと SKU の概要
価格情報については、Azure Managed Redis の価格に関するページを参照してください。
機能の比較
次の表に、レベル別にサポートされる一部の機能を紹介します。
機能の説明 | メモリ最適化 | バランスが取れている | コンピューティング最適化 | フラッシュ最適化 |
---|---|---|---|---|
サイズ (GB) | 12 - 1920 | 0.5 - 960 | 3 - 720 | 250 - 4500 |
サービス レベル アグリーメント (SLA) | イエス | イエス | イエス | イエス |
転送中のデータの暗号化 | はい (プライベート エンドポイント) | はい (プライベート エンドポイント) | はい (プライベート エンドポイント) | はい (プライベート エンドポイント) |
レプリケーションとフェールオーバー | イエス | イエス | イエス | イエス |
ネットワークの分離 | イエス | イエス | イエス | イエス |
Microsoft Entra ID ベースの認証 | イエス | イエス | イエス | イエス |
スケーリング (プレビュー) | イエス | イエス | イエス | イエス |
データの永続化 (プレビュー) | イエス | イエス | イエス | イエス |
ゾーン冗長性 | イエス | イエス | イエス | イエス |
ジオレプリケーション | はい (アクティブ) | はい (アクティブ) | はい (アクティブ) | いいえ |
クラスター化されていないインスタンス (プレビュー) | イエス | イエス | イエス | いいえ |
接続監査ログ | はい (イベントベース) | はい (イベントベース) | はい (イベントベース) | はい (イベントベース) |
JSON データ構造 (Redis JSON) | イエス | イエス | イエス | イエス |
検索機能 (ベクトル検索を含む) | イエス | イエス | イエス | いいえ |
確率論的データ構造 (Redis Bloom) | イエス | イエス | イエス | イエス |
時系列データベース機能 (Redis TimeSeries) | イエス | イエス | イエス | イエス |
インポート/エクスポート | イエス | イエス | イエス | イエス |
Von Bedeutung
分散 B0 および B1 SKU オプションでは、アクティブ geo レプリケーションはサポートされていません。
注
サポートのスケールダウンは、状況によっては制限されます。 詳細については、「 Azure Managed Redis のスケーリングの制限事項」を参照してください。
レベル選択時のその他の考慮事項
- ネットワーク パフォーマンス: 高スループットを必要とするワークロードがある場合、ネットワーク帯域幅によってボトルネックが発生する可能性があります。 より高いパフォーマンス レベルに移行するか、サイズが大きいインスタンスに移行することで、帯域幅を増やすことができます。 キャッシュをホストする基盤の VM により、インスタンスのサイズが大きいほど帯域幅も増えます。 帯域幅の制限を大きくすると、アプリケーションでタイムアウトを引き起こすネットワークの飽和を回避できます。 帯域幅のパフォーマンスについては、「パフォーマンス テスト」を参照してください。
- クライアント接続の最大数: 各 SKU にはクライアント接続の最大数があります。 この制限は、パフォーマンス レベルが高くなり、インスタンス サイズが大きくなるほど増えます。 各 SKU の制限の詳細については、「Azure Managed Redis の価格」を参照してください。
- 高可用性: Azure Managed Redis には、複数の高可用性オプションが用意されています。 SLA は、キャッシュ エンドポイントへの接続のみをカバーします。 SLA は、データ損失からの保護には対応していません。 SLA の詳細については、「SLA」を参照してください。 高可用性を Azure Managed Redis インスタンスで無効にできます。 これにより、価格は下がりますが、データ損失とダウンタイムが発生します。 高可用性は、開発とテストのシナリオでのみ無効にすることをお勧めします。
価格に関するその他の考慮事項
Von Bedeutung
Azure Managed Redis Enterprise では、キャッシュ インスタンスごとに IP アドレスが必要です。 現在、IP アドレスの料金は Azure Managed Redis によって吸収され、顧客には渡されません。 これは将来変更される可能性があります。 詳細については、「IP アドレスの価格」を参照してください。
Von Bedeutung
アクティブ geo レプリケーションを使用すると、Azure リージョン間のデータ転送が生成されます。 これらの帯域幅の料金は現在、Azure Managed Redis によって吸収され、お客様には渡されません。 これは将来変更される可能性があります。 詳細については、「帯域幅の価格」をご覧ください。
地域別の可用性
Azure Managed Redis は、新しいリージョンに継続的に拡大しています。
アメリカ
- ブラジル南部
- ブラジル南東部
- カナダ中部
- カナダ東部
- 米国中部
- 米国東部
- 米国東部 2
- メキシコ中部
- 米国中北部
- 米国中南部
- 米国中西部
- 米国西部
- 米国西部 2
- 米国西部 3
ヨーロッパ
- フランス南部
- ドイツ北部
- ドイツ中西部
- イタリア北部
- ノルウェー東部
- ノルウェー西部
- スペイン中部
- スウェーデン中部
- スウェーデン南部
- スイス北部
- スイス西部
- 英国南部
- 英国西部
- 西ヨーロッパ
中東
- イスラエル中部
- UAEセントラル
- アラブ首長国連邦の北部地域
アフリカ
- 南アフリカ北部
- 南アフリカ西部
アジア太平洋
- 東アジア
- オーストラリア中部
- オーストラリア中部 2
- オーストラリア東部
- オーストラリア南東部
- インド中部
- インドネシア中部
- 東日本
- 西日本
- JIO インド中部
- Jio インド西部
- 韓国中部
- 韓国南部
- 東南アジア
- インド南部
- 台湾北部
- 台湾北西部
リージョンで利用できるかどうかについては、「リージョン別の利用可能な製品」をご覧ください。
Azure Cache for Redis を移行する
Azure Cache for Redis から Azure Managed Redis への移行の詳細については、「 Azure Cache for Redis から Azure Managed Redis への移行」を参照してください。