Amazon ElastiCache for Redis

クラウド向けに構築された Redis 互換のインメモリデータストア。ミリ秒未満のレイテンシーを実現し、リアルタイムアプリケーションを強化。

Amazon ElastiCache for Redis は、ミリ秒未満のレイテンシーを実現する非常に高速なインメモリデータストアで、インターネット規模のリアルタイムアプリケーションを強化できます。Redis 用 ElastiCache は、オープンソース Redis 上に構築されており、Redis API との互換性を備えています。また、Redis クライアントとの連携が可能で、データの保存にはオープン Redis のデータ形式を使用します。自己管理型の Redis アプリケーションは、コードを変更することなく Redis 用 ElastiCache とシームレスに連携します。ElastiCache for Redis には、スピード、シンプルさ、およびオープンソース Redis の多用途性と同時に、Amazon からの管理性、セキュリティ、スケーラビリティが備わっています。この構成により、ゲーム、アドテック、e コマース、医療、金融サービス、IoT などでの、最も要求の厳しいリアルタイムアプリケーションを強化できます。

Amazon ElastiCache for Redis の紹介(2:30)

メリット

非常に高いパフォーマンス

Amazon ElastiCache for Redis はインメモリのデータストアとして機能し、ミリ秒未満の応答時間が必要とされるような、要求の厳しいアプリケーションにも対応しています。ほとんどの操作がディスクへのラウンドトリップを必要とするディスクベースのデータベースと比較して、インメモリデータストアは、ディスクよりも桁違いに高速なインメモリでデータを管理します。その結果、読み書きの平均的なオペレーションがミリ秒未満で行われるという、非常に高速なパフォーマンスを実現でき、クラスター内で 1 秒間に数億件の操作をサポートできるようになります。ElastiCache は、最適化されたエンドツーエンドのハードウェアとソフトウェアスタックを提供し、高速パフォーマンスを実現します。 Redis 用 ElastiCache バージョン 7.1 では、Redis 用 ElastiCache バージョン 7.0 と比較して、スループットが最大 100% 向上し、P99 レイテンシーが 50% 低下しています。r7g.4 xlarge ノード以上では、ノードあたり毎秒 100 万を超える要求、またはクラスターあたり毎秒 5 億を超える要求を実現できます。

安全性

Amazon ElastiCache for Redis 6 以降の ElastiCache では、Redis コマンド用にロールベースのアクセスコントロール (RBAC) をセットアップできるユーザーやユーザーグループを、作成し管理するための機能が提供されます。セキュリティの境界を維持しながらアーキテクチャを簡素化し、また、グループの管理には、きめ細かいアクセスコントロールを活用できます。AWS Identity and Access Management (IAM) を使用して、IAM ID を使用して ElastICache for Redis に接続することができます。Redis 用 ElastiCache では Amazon VPC がサポートされており、ノード用に選択した IP 範囲にクラスターを隔離させることができます。ElastiCache チームは、オープンソースの Redis、オペレーティングシステム、およびファームウェアについて、既知のセキュリティ脆弱性を継続的にモニタリングすることで、お客様の Redis 環境の安全性を維持しています。このサービスは PCI に準拠し、HIPAA 対応であり、FedRAMP の認定も受けています。転送時と保管時の (AWS KMS に保存されているカスタマー管理 CMK も使用可能な) 暗号化に加え、個人を特定できる情報 (PII) など機密データの保全には、ノード間で安全に通信するための Redis AUTH が機能します。

ロールベースのアクセス
コントロール (RBAC) の詳細を見る »

Redis 用 ElastiCache IAM 認証の詳細を見る »
ElastiCache 向け VPC の詳細を見る »

完全マネージド型の堅牢なサービス

Redis 用 Amazon ElastiCache は完全マネージド型サービスです。ハードウェアのプロビジョニング、ソフトウェアへのパッチ適用、セットアップ、設定作業、モニタリング、障害復旧、バックアップといった管理タスクが不要になります。ElastiCache では、Redis の実行状態を維持するためにクラスターが継続的にモニタリングされるため、お客様は、より価値の高いアプリケーション開発に専念できます。お客様には、Redis の利用状況に関する詳細なモニタリングメトリクスが提供されます。このデータにより、アプリケーションの状態の傾向を追跡し、必要な場合は、クラスターの設定に調整を加えられるようになります。ElastiCache により、自動化された書き込みスロットリング、スワップメモリのインテリジェントな管理、フェイルオーバーの強化が可能になるため、オープンソース Redis の可用性と管理性を向上できます。Redis 用 Amazon ElastiCache の詳細を見る »

 

Redis 互換

Redis は、広く採用されているインメモリデータストアです。データベース、キャッシュ、メッセージブローカー、キュー、セッションストア、スコアボードなどに使用されています。Amazon ElastiCache for Redis には、オープンソース Redis のデータ形式、および、Redis API との互換性を備わっているので、Redis クライアントとの連携が可能です。コードを変更することなく、自己管理型の Redis ワークロードを ElastiCache for Redis に移行できます。オープンソース Redis の詳細を見る »

 

高い可用性と信頼性

Amazon ElastiCache for Redis は、Redis の、クラスターモードと非クラスターモードの両方に対応しています。また、プライマリノードで障害が検知されると、レプリカがプライマリに昇格され自動フェイルオーバーが実行されるので、影響を最低限に抑えながら高可用性を実現できます。複数のアベイラビリティーゾーン間でサポートされたリードレプリカを、アプリケーションが読み込めるため、ワークロードの増加によってプライマリがビジー状態になった場合にも、読み込み処理に対応できます。Redis 用 ElastiCache では、フェイルオーバーロジックが強化されており、Redis クラスターモード向けのプライマリノードの大部分が利用できなくなった場合に自動フェイルオーバーが実行されます。Redis 5.0.5 以降では、自動フェイルオーバー対応クラスターは、計画されているすべての操作のオンライン設定変更を行います。ElastiCache の自動フェイルオーバーの詳細を見る »

 

簡単なスケーリング

Amazon ElastiCache for Redis では、小規模の Redis データから始め、アプリケーションの拡大に応じて最大 310 TiB のインメモリデータを持つクラスター、またはデータ階層化されたクラスターを使用する場合は 982 TiB まで簡単にスケールすることができます。Redis Cluster 環境を、最大 500 のノードと 500 のシャードにスケールできます。オンラインで Redis クラスターのサイズを変更することで、ダウンタイムなしでスケールアウト/スケールインできるので、ニーズの変化にも対応するように設計されています。ElastiCache では、読み込みキャパシティーをスケールするために、複数のアベイラビリティーゾーン全体で最大 5 つのリードレプリカを追加できます。さらに、ElastiCache では、書き込みキャパシティーをスケールするために、複数のプライマリ間で書き込みトラフィックを分割できる Redis クラスターモードも、サポートしています。ElastiCache のスケーリングの詳細を見る »

 

仕組み

Redis の仕組み

ユースケース

Redis 用 Amazon ElastiCache では、キャッシングチャット/メッセージングゲーミングリーダーボード地理空間機械学習メディアストリーミングキューリアルタイム分析セッションストアなどのリアルタイムのトランザクション、分析処理のユースケースを入手できます。

キャッシュ

Redis 用 Amazon ElastiCache は、可用性が高く分散型で安全なインメモリキャッシュを実装することで、アクセスレイテンシーの減少、スループットの向上、リレーショナルデータベースや NoSQL データベースおよびアプリケーションの負荷軽減を実現する優れた方法です。ElastiCache では、頻繁にリクエストされるアイテムをミリ秒未満の応答時間で提供でき、バックエンドのデータベースのコストを増大させることなく、負荷の増大に対応して簡単にスケールすることができます。データベースのクエリ結果のキャッシュ、持続的セッションのキャッシュ、フルページキャッシュなどは、いずれも Redis 用 ElastiCache を使用したキャッシュの一般的な例です。Redis 用 ElastiCache を使ったキャッシングアプリケーションの構築方法を学んでください。

Redis によるキャッシュ

チャットとメッセージング

Redis 用 Amazon ElastiCache では、パターンマッチングを備えた PUB/SUB 標準がサポートされています。これにより、Redis 用 ElastiCache では高性能のチャットルーム、リアルタイムのコメントストリーム、サーバー間通信などをサポートできます。PUB/SUB を使用すれば、公開イベントに基づいてアクションをトリガーすることもできます。Redis 用 ElastiCache を使ったチャットアプリケーションの構築方法を学んでください。

Redis を使ったチャットとメッセージング

ゲームのリーダーボード

リアルタイムのゲーム向けリーダーボードは、Redis 用 Amazon ElastiCache を使用して簡単に作成できます。Redis の Sorted Set データ構造を使用すると、要素の一意性が得られると同時に、スコア順にソートされたリストを維持できます。リアルタイムのランキングリストを作成することは、ユーザーのスコアが変わるごとに更新することと同じほど簡単です。タイムスタンプをスコアとして使用すれば、Sorted Set で時系列データを扱うこともできます。

Redis によるゲームのリーダーボード

地理空間

Redis 用 Amazon ElastiCache には、専用のインメモリデータ構造と演算子が用意されているため、大規模なリアルタイムの地理空間データを迅速に管理できます。Redis 用 ElastiCache を使用して、運転時間、運転距離、重要地点 (POI) などの位置情報に基づく機能をアプリケーションに追加できます。Redis 用 ElastiCache を使った地理空間アプリケーションの構築方法を学んでください。

Redis での地理空間

Machine Learning

Redis 用 Amazon ElastiCache は高速のインメモリデータストアであるため、機械学習モデルを迅速に構築、デプロイできます。Redis 用 ElastiCache を、ゲームや金融サービスでの詐欺検出、ad-tech でのリアルタイムのビッド、デートと相乗りでのマッチメーキングなどのユースケースを用いて、ライブのデータを処理し、数十ミリ秒で決定してください。Coffee Meets Bagel の ElastiCache を用いたリアルタイムの機械学習に基づいたデートのお勧め について学んでください。

Redis での Machine Learning

メディアストリーミング

Amazon ElastiCache for Redis は高速のインメモリデータストアで、ライブストリーミングのユースケースで力を発揮します。Redis 用 ElastiCache を使用すると、ユーザープロファイルと表示履歴のメタデータ、数百万人のユーザーの認証情報やトークン、CDN で同時に数百万人のモバイルユーザーとデスクトップユーザーに動画をストリーミング配信するためのマニフェストファイルを保存できます。

Redis でのメディアストリーミング

キュー

Redis 用 Amazon ElastiCache はデータリスティング構造を提供しますので、軽量で持続性のあるキューを容易に実装できます。List ではブロッキング機能に加えてアトミック操作が提供されているため、信頼性の高いメッセージブローカーや循環リストを必要とするさまざまなアプリケーションに適しています。

Redis でのキュー

リアルタイム分析

Amazon ElastiCache for Redis を、Apache Kafka、Amazon Kinesis などのストリーミングソリューション用のインメモリデータストアとして使用すると、リアルタイムのデータの取り込み、処理、分析を、ミリ秒未満のレイテンシーで行うことができます。ElastiCache は、ソーシャルメディア、広告のターゲティング、パーソナライズ、IoT、および時系列のデータ分析といった、リアルタイム分析のユースケースに理想的な選択肢です。

Redis によるリアルタイム分析

セッションストア

Redis 用 Amazon ElastiCache は、ユーザー認証トークン、セッションステートなどのセッション情報を管理するためのセッションストアとして大変適しています。セッションキーに適切な TTL を設定して ElastiCache for Redis を高速キー値ストアとして使用することで、セッション情報を管理します。ゲーム、e コマースウェブサイト、ソーシャルメディアプラットフォームといったオンラインアプリケーションでは、一般的にセッション管理が必要になります。Redis 用 ElastiCache をセッションストアとして使用する方法について学んでください。

セッションストアとしての Redis

お客様

Tinder の Amazon ElastiCache による成功事例

Tinder は、ElastiCache によってアプリを拡張し、毎日 20 億回のアクションのサービスを提供しています。 

詳細はこちら »

ワシントンポストの Amazon ElastiCache による成功事例

ワシントンポストは、Amazon ElastiCache を使用して、高速のコンテンツ管理プラットフォームを構築しました。

詳細はこちら »

coffee meets bagel

Coffee Meets Bagel では、Redis 用 Amazon ElastiCache for Redis を使用して推奨モデルを強化しています。

詳細はこちら »

Beat の Amazon ElastiCache による成功事例

Beatでは、ElastiCache によって、規模の拡大が可能になるとともに、コンピューティングコストを 90% 削減しています。

詳細はこちら »

Dream11 の Amazon ElastiCache による成功事例

Dream11 では、1 秒あたり150 万件のリクエストに対応するために、自社のプラットフォームをスケールインおよびスケールアウトしています。

詳細はこちら »

Redis 用 Amazon ElastiCache を使用しているその他のお客様の成功事例はこちら »

Redis 用 Amazon ElastiCache の使用を開始する

Step 1 - Sign up for an Amazon Web Services account

サインアップ

ElastiCache 無料利用枠を利用します。
Redis 用 Amazon ElastiCache の詳細を見る

シンプルなチュートリアルで学ぶ

Redis クラスターの作成法を学ぶ。
Redis 用 ElastiCache の使用開始

構築を開始する

ユーザーガイドでのヘルプで構築を開始する。