データベースのパフォーマンスを分析

準備された読み取り/書き込みキャパシティーユニット

プロビジョニングされたスループットによって、アプリケーションで実行可能な同時データベース操作数が決まります。低く設定しすぎると、スロットルエラーが発生し、高く設定しすぎると、未使用のスループットに対してもAWSに料金を支払うことになります。データベースのパフォーマンスを継続的に監視することで、スループット設定をいつスケールアップ/スケールダウンするかについて十分な情報に基づいた決定を下すことができます。

消費された読み取り/書き込みキャパシティーユニット

消費された読み取り/書き込みキャパシティーユニットを継続的に監視することで、要求レート、アプリケーションのスループットパターン、テーブルのアクティビティに関する情報が得られます。アラートメカニズムを設定し、消費された要求がプロビジョニングされた値を超える前に通知を受け取ります。

正常な要求レイテンシ

DynamoDBの観点から、データベース要求が処理されるのにかかる時間を確認できます。プロビジョニングされたスループットに近すぎる状態で動作している場合は、平均レイテンシが増加し始めます。Site24x7を使用すると、各DB操作(Get Item、Put Item、Scan、Query)に対して、要求レイテンシに関するデータポイントを取得できます。定期的に監視して、レイテンシが長いデータベースアクションを特定します。

要求スロットルをトラブルシューティング

スロットルされた要求

アプリケーションが大量のデータベース要求を実行し始めると、テーブルやセカンダリインデックスに設定されているプロビジョニングされたスループットが使い果たされます。これが起こると、その後のすべてのDB操作が拒否され、スロットルエラーが返されます。Site24x7では、単一データベースアクションとバッチアクションの両方に対して、スロットルされた読み取り要求指標でデータポイントを取得できます。

スロットルされた読み取り/書き込みイベント

セカンダリインデックスの数によっては、単一のDBアクションに複数の読み取り/書き込みイベントを関連付けることができます。しきい値を設定し、スロットルイベントが生成されたときに通知を受け取ります。スロットルされた要求を読み取り/書き込みスロットルイベントと関連付けて、どのイベントが要求をスロットルしているかを理解します。

DBのエラーと例外を処理

ユーザーエラーとシステムエラー

DynamoDBテーブルが、送信されたアクションまたはDB要求を処理できない場合は、HTTPステータスエラーコードが返されます。パラメーターの欠落、プロビジョニングされたスループットの例外などの一般的な問題により、ユーザーエラーが発生する可能性があります。
未知の例外または内部サーバーエラーが発生すると、システムエラーが発生します。ダッシュボードには、一定期間中に発生したエラーの集計が表示されます。

実行されたDB操作についての洞察を取得

失敗した要求を条件チェック

条件付き書き込みが続行できなかった回数を追跡します。条件付きチェックは論理演算子であり、書き込み要求とともに使用されます。これらのチェックは、2つ以上のクライアントが同じ項目に対して書き込みアクションを実行するときに、データベースの並行性を維持するのに役立ちます。失敗の増加は、送信された要求に問題があることを示します。

返された項目数

任意の時間枠で、スキャンまたはクエリ操作によって返された項目の数を監視します。この指標によって、実行されたスキャン操作とクエリ操作の数と頻度に関するアイデアが得られます。また、頻繁なスキャン操作が、プロビジョニングされた読み取りキャパシティーユニットに影響を与えているかどうかを判断できます。