Amazon Keyspaces auto スケーリングでスループット容量を自動的に管理します - Amazon Keyspaces (Apache Cassandra 向け)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Keyspaces auto スケーリングでスループット容量を自動的に管理します

多くのデータベースワークロードは本質的に循環的なものであり、そうでない場合は前もって予測することは困難です。例えば、日中の時間帯に大部分のユーザーがアクティブなソーシャルネットワーキングアプリがあるとします。データベースは日中のアクティビティを処理できる必要がありますが、夜間のスループットに同じレベルは必要ありません。

別の例としては、急速に導入された新しいモバイルゲームアプリが挙げられます。ゲームの人気があまりに高まると、利用可能なデータベースリソースを超過し、パフォーマンスが低下して顧客が不満を感じるようになります。この種のワークロードでは多くの場合、手動介入によってデータベースリソースを使用レベルに応じて上下させる必要があります。

Amazon Keyspaces (Apache Cassandra 向け) は、実際のアプリケーショントラフィックに応じてスループットキャパシティを自動的に調整するので、可変ワークロードに対するスループットキャパシティの効率的なプロビジョニングに役立ちます。Amazon Keyspaces では、Applicatino Auto Scaling サービスを使用して、ユーザーに代わってテーブルの読み取りキャパシティと書き込みキャパシティの増減を行います。アプリケーションオートスケーリングの詳細については、「Application Auto Scaling User Guide」(アプリケーションオートスケーリングユーザーガイド) を参照してください。

注記

Amazon Keyspaces のオートスケーリングの簡単な使用方法については「コンソールによる Amazon Keyspaces オートスケーリングポリシーの管理」を参照してください。Cassandra クエリ言語 (CQL) を使用して Amazon Keyspaces のスケーリングポリシーを管理するには、を参照してください。Cassandra クエリ言語 (CQL) による Amazon Keyspaces Auto Scaling の管理CLI を使用して Amazon Keyspaces のスケーリングポリシーを管理する方法については、を参照してくださいCLI を使用した Amazon Keyspaces スケーリングポリシーの管理

Amazon Keyspaces オートスケーリングの仕組み

次の図は、Amazon Keyspaces オートスケーリングによるテーブルのスループットキャパシティ管理の管理方法について、高レベルの概要を示しています。

ユーザーが Amazon Keyspaces テーブルに変更を加えたときに関係するさまざまなサービスを示す図。サービスには Amazon CloudWatch、Amazon SNS、Application Auto Scaling があり、ALTER TABLE ステートメントを発行して、ユーザーの読み取りまたは書き込み使用量に基づいて容量を変更します。

テーブルのオートスケーリングを有効にするには、スケーリングポリシーを作成します。スケーリングポリシーは、テーブルの読み込みキャパシティと書き込みキャパシティ (またはそのいずれか) およびプロビジョンドキャパシティユニット設定をスケーリングするかどうかを指定するものです。

スケーリングポリシーによりターゲット使用率も定義されます。ターゲット使用率は、プロビジョンドキャパシティユニットに対する消費キャパシティユニットの割合をパーセンテージで示したものです。オートスケーリングでは、ターゲット追跡アルゴリズムを使用して、実際のワークロードに応じてテーブルのプロビジョンドスループットを上下に調整します。これにより実際のキャパシティ使用率が、ターゲット使用率またはその付近で維持されます。

読み取りおよび書き込みキャパシティに対して、オートスケーリングのターゲット使用率の値を 20%~90% の範囲で設定できます。ターゲット使用率のデフォルト値は 70% です。トラフィックが急速に変化し、キャパシティのスケールアップをすばやく開始したい場合は、ターゲット使用率の値を低く設定できます。アプリケーショントラフィックの変化が遅く、スループットのコストを削減したい場合は、ターゲット使用率の値を高く設定することもできます。

スケーリングポリシーの詳細については、『アプリケーション Auto Scaling ユーザーガイド』の「Application Auto Scaling のターゲット追跡Application Auto Scaling ポリシー」を参照してください。

スケーリングポリシーを作成すると、Amazon Keyspaces がユーザーに代わって 2 組の Amazon CloudWatch アラームを作成します。各ペアは、プロビジョンドスループット設定と消費スループット設定の上下の境界を示します。 CloudWatch これらのアラームは、テーブルの実際の使用率が一定期間にわたって目標使用率から逸脱したときにトリガーされます。Amazon について詳しくは CloudWatch、Amazon CloudWatch ユーザーガイドをご覧ください

CloudWatch アラームの 1 つがトリガーされると、Amazon Simple Notification Service (Amazon SNS) から通知が送信されます (有効になっている場合)。次に、 CloudWatch アラームはApplication Auto Scaling を呼び出して、スケーリングポリシーを評価します。これにより、Amazon Keyspaces に Alter Table リクエストが発行されて、テーブルのプロビジョンドキャパシティが必要に応じて調整されます。Amazon SNS 通知の詳細については、「Setting up Amazon SNS notifications」(Amazon SNS 通知の設定) を参照してください。

Amazon Keyspaces は Alter Table リクエストを処理してテーブルのプロビジョンドスループット性能を動的に増減し、ターゲット使用率に近づけます。

注記

Amazon Keyspaces auto Scaling は、実際のワークロードが数分間持続的に上昇 (または低下) している場合にのみ、プロビジョニングされたスループット設定を変更します。 ターゲットトラッキングアルゴリズムはターゲット使用率を選択した値の付近に長期に渡って維持しようとします。アクティビティの急激かつ短時間の上昇は、テーブルに組み込まれたバーストキャパシティで対応されます。

マルチリージョンテーブルでのauto スケーリングの仕組み

プロビジョニングされたキャパシティーモードのマルチリージョンテーブルのすべてのテーブルレプリカに常に十分な読み取りおよび書き込みキャパシティーを確保するために、Amazon Keyspaces auto Scaling を設定することをお勧めします。 AWS リージョン

マルチリージョンテーブルを auto Scaling のプロビジョンドモードで使用する場合、1 つのテーブルレプリカのauto スケーリングを無効にすることはできません。ただし、テーブルの読み取りauto スケーリング設定はリージョンごとに調整できます。たとえば、テーブルがレプリケートされるリージョンごとに異なる読み込み容量と読み込みauto スケーリング設定を指定できます。

指定したリージョンのテーブルレプリカに設定した読み取りauto スケーリング設定は、テーブルの一般的なauto スケーリング設定を上書きします。ただし、すべてのリージョンで書き込みをレプリケートするのに十分な容量が確保されるように、書き込み容量はすべてのテーブルレプリカ間で同期されたままである必要があります。

Amazon Keyspaces auto Scaling は、 AWS リージョン そのリージョンでの使用状況に基づいて、それぞれのテーブルのプロビジョニングされた容量を個別に更新します。その結果、auto Scaling がアクティブな場合、マルチリージョンテーブルの各リージョンでプロビジョニングされる容量が異なる場合があります。

Amazon Keyspaces コンソール、API、または CQL を使用して、マルチリージョンテーブルとそのレプリカのauto スケーリング設定を構成できます。 AWS CLIマルチリージョンテーブルの auto Scaling 設定を作成および更新する方法の詳細については、を参照してくださいマルチリージョンレプリケーションの使用方法

注記

マルチリージョンテーブルにauto スケーリングを使用する場合は、必ず Amazon Keyspaces API オペレーションを使用してauto スケーリング設定を行う必要があります。Application Auto Scaling API オペレーションを直接使用して自動スケーリング設定を構成する場合、マルチリージョンテーブルを指定することはできません。 AWS リージョン これにより、サポートされていない構成になることがあります。

使用に関する注意事項

Amazon Keyspaces オートスケーリングの使用を開始する前に、以下を確認する必要があります。

  • Amazon Keyspaces オートスケーリングでは、スケーリングポリシーに従って、読み込みキャパシティや書き込みキャパシティを必要に応じて増加させることができます。Amazon Keyspaces (Apache Cassandra 向け) のクォータ で説明されているように、すべての Amazon Keyspaces クォータは有効です。

  • Amazon Keyspaces オートスケーリングにより、プロビジョンドスループット設定を手動で変更できなくなることはありません。このような手動調整は、 CloudWatch スケーリングポリシーに添付されている既存のアラームには影響しません。

  • コンソールを使用してプロビジョンドスループット性能でテーブルを作成する場合、Amazon Keyspaces オートスケーリングはデフォルトで有効になります。オートスケーリングの設定はいつでも変更できます。詳細については、「コンソールによる Amazon Keyspaces オートスケーリングポリシーの管理」を参照してください。

  • AWS CloudFormation スケーリングポリシーの作成に使用する場合は、 AWS CloudFormation スタックがスタックテンプレートと同期するようにスケーリングポリシーを管理する必要があります。Amazon Keyspaces からスケーリングポリシーを変更すると、 AWS CloudFormation スタックがリセットされるとスタックテンプレートの元の値で上書きされます。

  • Amazon Keyspaces CloudTrail の自動スケーリングをモニタリングする場合、設定検証プロセスの一環としてApplication Auto Scalingが行った呼び出しに対してアラートが表示されることがあります。検証チェックのための application-autoscaling.amazonaws.com が含まれている invokedBy フィールドを使用すれば、これらのアラートを除外できます。