TiDB Cloud の組み込みメトリクス
TiDB Cloudは、TiDBリソースの標準メトリック一式を収集し、メトリックページに表示します。これらのメトリックを確認することで、パフォーマンスの問題を容易に特定し、現在のデータベース展開が要件を満たしているかどうかを判断できます。
指標ページをビュー
メトリクスページでメトリクスを表示するには、以下の手順に従ってください。
私のTiDBページで、対象リソースの名前をクリックすると、その概要ページに移動します。
ヒント:
複数の組織に所属している場合は、左上隅のコンボボックスを使用して、まず目的の組織に切り替えてください。
左側のナビゲーションペインで、 [監視] > [メトリクス]をクリックします。
指標保持ポリシー
TiDB Cloudでは、メトリクスデータは7日間保持されます。
TiDB Cloud Dedicatedクラスターのメトリクス
以下のセクションでは、TiDB Cloud Dedicatedクラスターのメトリクスページに表示されるメトリクスについて説明します。
概要
| メトリック名 | ラベル | 説明 |
|---|
| SQLタイプ別のデータベース時間 | データベース時刻、{SQLタイプ} | データベース時間:1秒あたりのデータベース処理時間の合計。 {SQL type}: SQL ステートメントが 1 秒あたりに消費するデータベース時間。これは、 SELECT 、 INSERT 、 UPDATEなどの SQL タイプごとに収集されます。 |
| 1秒あたりのクエリ数 | {SQL型} | すべての TiDB ノードで 1 秒あたりに実行される SQL ステートメントの数。これは、 SELECT 、 INSERT 、 UPDATEなどの SQL タイプごとに収集されます。 |
| クエリ実行時間 | 平均-{SQLタイプ}、99-{SQLタイプ} | クライアントから TiDB にリクエストが送信されてから、TiDB がリクエストを実行して結果をクライアントに返すまでの時間。一般的に、クライアントのリクエストは SQL ステートメントの形式で送信されますが、この時間にはCOM_PING 、 COM_SLEEP 、 COM_STMT_FETCH 、 COM_SEND_LONG_DATAなどのコマンドの実行時間が含まれる場合があります。TiDB はマルチクエリをサポートしており、クライアントはselect 1; select 1; select 1;のように複数の SQL ステートメントを一度に送信できます。この場合、このクエリの合計実行時間には、すべての SQL ステートメントの実行時間が含まれます。 |
| 失敗したクエリ | すべて、{エラータイプ} @ {インスタンス} | 各TiDBノードにおける1分あたりのSQLステートメント実行エラー数に基づいた、エラーの種類(構文エラーや主キーの競合など)に関する統計情報です。エラーが発生したモジュールとエラーコードが含まれています。 |
| 1秒あたりのコマンド数 | クエリ、ステートメント実行、およびステートメント準備 | コマンドの種類に基づいて、すべての TiDB ノードが 1 秒あたりに処理するコマンドの数。 |
| プランキャッシュOPSを使用したクエリ | ヒット、ミス | hit: すべてのTiDBノードにおいて、1秒あたりにプランキャッシュを使用するクエリの数。 miss: すべての TiDB ノードにおいて、1 秒あたりにプラン キャッシュに見つからないクエリの数。 |
| トランザクション/秒 | {タイプ}-{トランザクションモデル} | 1秒あたりに実行されるトランザクション数。 |
| トランザクション期間 | 平均-{トランザクションモデル}、99-{トランザクションモデル} | 取引の平均期間、または99パーセンタイル値。 |
| 接続数 | すべて、アクティブな接続 | All: すべてのTiDBノードへの接続数。 アクティブな接続数:すべてのTiDBノードへのアクティブな接続数。 |
| 切断回数 | {インスタンス}-{結果} | 各TiDBノードから切断されたクライアントの数。 |
高度な
| メトリック名 | ラベル | 説明 |
|---|
| 平均アイドル接続時間 | 取引内平均、取引外平均 | 接続アイドル時間とは、接続がアイドル状態であった時間を示します。 avg-in-txn: 接続がトランザクション内にある場合の平均接続アイドル時間。 avg-not-in-txn: 接続がトランザクション内にない場合の平均接続アイドル時間。 |
| トークンの有効期間を取得する | 平均、99 | SQL文のトークンを取得するのに要する平均時間、または99パーセンタイル値。 |
| 解析時間 | 平均、99 | SQL文の解析に要する平均時間、または99パーセンタイル値。 |
| コンパイル時間 | 平均、99 | 解析されたSQL抽象構文木(AST)を実行計画にコンパイルする際に要する平均時間、または99パーセンタイル値。 |
| 実行時間 | 平均、99 | SQLステートメントの実行プランの実行に要する平均時間、または99パーセンタイル値。 |
| TiDB KVリクエストの平均所要時間 | {リクエストタイプ} | Get 、 Prewriteなどのリクエストタイプに基づいて、すべてCommitでKVリクエストを実行するのに要する平均時間。 |
| TiKV gRPCの平均持続時間 | {リクエストタイプ} | kv_get 、 kv_prewrite kv_commitでgRPCリクエストを実行するのに要した平均時間。 |
| 平均 / P99 PD TSO 待ち時間/RPC 所要時間 | 待機時間平均/99、RPC平均/99 | 待機時間:すべてのTiDBノードにおいてPDがTSOを返すまでの待機時間の平均値、または99パーセンタイル値。 RPC: PDにTSOリクエストを送信してから、すべてのTiDBノードでTSOを受信するまでの平均時間、または99パーセンタイル値。 |
| 平均 / P99 ストレージ非同期書き込み時間 | 平均、99 | 非同期書き込みで消費される平均時間、または99パーセンタイル値。平均storage非同期書き込み時間 = 平均ストレージ時間 + 平均適用時間。 |
| 平均 / P99 店舗での保管期間 | 平均、99 | 非同期書き込み時のストレージループで消費される平均時間、または99パーセンタイル値。 |
| 平均 / P99 適用期間 | 平均、99 | 非同期書き込み中にループを適用する際に要する平均時間、または99パーセンタイル値。 |
| 平均 / P99 追記ログの所要時間 | 平均、99 | Raftがログを追加する際に要する平均時間、または99パーセンタイル値。 |
| 平均 / P99 コミットログ期間 | 平均、99 | Raftがログをコミットするのに要する平均時間、または99パーセンタイル値。 |
| 平均 / P99 適用ログ期間 | 平均、99 | Raftがログを適用するために要する平均時間、または99パーセンタイル値。 |
| 影響を受ける行 | {SQL型} | SQLタイプ別の1秒あたりの処理行数。 |
| Leader数 | {実例} | TiKVノードによってホストされているRaftリーダーリージョンの数。 |
| リージョン数 | {実例} | TiKVノードによって管理されるデータ領域の総数。 |
サーバ
| メトリック名 | ラベル | 説明 |
|---|
| TiDBの稼働時間 | ノード | 各TiDBノードの前回再起動以降の実行時間。 |
| TiDBのCPU使用率 | ノード、制限 | 各TiDBノードのCPU使用率統計情報または上限値。 |
| TiDBのメモリ使用量 | ノード、制限 | 各TiDBノードのメモリ使用量統計または上限値。 |
| TiKVの稼働状況 | ノード | 各TiKVノードの前回再起動以降の実行時間。 |
| TiKVのCPU使用率 | ノード、制限 | 各TiKVノードのCPU使用率統計または上限値。 |
| TiKVのメモリ使用量 | ノード、制限 | 各TiKVノードのメモリ使用量統計または上限値。 |
| TiKV IO bps | ノード書き込み、ノード読み取り | 各TiKVノードにおける、1秒あたりの読み取りおよび書き込みの総入出力バイト数。 |
| TiKVストレージの使用状況 | ノード、制限 | 各TiKVノードのstorage使用量統計または上限値。storage使用量には、storageエンジン内の論理データサイズ、WALファイル、および一時ファイルが含まれます。 |
| TiFlashの稼働時間 | ノード | 各TiFlashノードの前回再起動以降の実行時間。 |
| TiFlashのCPU使用率 | ノード、制限 | 各TiFlashノードのCPU使用率統計または上限値。 |
| TiFlashメモリの使用状況 | ノード、制限 | 各TiFlashノードのメモリ使用量統計または上限値。 |
| TiFlash IO MBps | ノード書き込み、ノード読み取り | 各TiFlashノードにおける読み書きの合計バイト数。 |
| TiFlashストレージの使用状況 | ノード、制限 | 各TiFlashノードのstorage使用量統計または上限値。storage使用量には、storageエンジン内の論理データサイズ、WALファイル、および一時ファイルが含まれます。 |
| TiProxyのCPU使用率 | ノード | 各TiProxyノードのCPU使用率統計情報。上限は100%です。 |
| TiProxy接続 | ノード | 各TiProxyノード上の接続数。 |
| TiProxyのスループット | ノード | 各TiProxyノードで1秒あたりに転送されるバイト数。 |
| TiProxyセッション移行の理由 | 理由 | 1分ごとに発生するセッション移行の数と、その理由。 |
TiDB Cloud StarterおよびTiDB Cloud Essentialインスタンスのメトリクス
メトリクスページには、TiDB Cloud StarterとTiDB Cloud Essentialインスタンスのメトリクスを表示する2つのタブがあります。
- クラスタステータス:クラスタレベルの主要なメトリックを表示します。
- データベースステータス:データベースレベルの主要なメトリックを表示します。
クラスタの状態
以下の表は、 [クラスタステータス]タブに表示されるクラスタレベルの主要メトリックを示しています。
| メトリック名 | ラベル | 説明 |
|---|
| ユニットをリクエストする | RU/秒 | リクエストユニット(RU)は、 TiDB Cloud Starterインスタンスにおけるクエリまたはトランザクションのリソース消費量を追跡するために使用される測定単位です。ユーザークエリに加えて、バックグラウンドアクティビティもRUを消費するため、QPSが0の場合でも、1秒あたりのRU使用量はゼロにならない場合があります。 |
| 容量対使用量(RU/秒) | プロビジョニング済み容量(RCU)、消費RU/秒 | TiDB Cloud Essentialインスタンスにおける、1秒あたりのリクエスト容量ユニット(RCU)と消費リクエストユニット(RU)。 |
| 使用済みストレージサイズ | 行ベースstorage、列ベースstorage | 行ベースstorageと列ベースstorageのサイズ。このメトリックは、各storageタイプが50 MiB以上の場合にのみ表示されます。 |
| 1秒あたりのクエリ数 | すべて、{SQLタイプ} | 1 秒あたりに実行される SQL ステートメントの数。これは、 SELECT 、 INSERT 、 UPDATEなどの SQL タイプごとに収集されます。 |
| クエリ実行時間 | 平均値、P99、P99-{SQLタイプ} | クライアントからTiDB Cloud StarterまたはTiDB Cloud Essentialインスタンスにリクエストが送信されてから、インスタンスがリクエストを実行して結果をクライアントに返すまでの時間。 |
| クエリが失敗しました | 全て | 1秒あたりのSQL文実行エラー数。 |
| トランザクション/秒 | 全て | 1秒あたりに実行されるトランザクションの数。 |
| トランザクション期間 | 平均、P99 | トランザクションの実行時間。 |
| ロック待機 | P95、P99 | トランザクションが悲観的ロックの取得を待機する時間。値が高いほど、同じ行またはキーに対する競合が発生していることを示します。 |
| トータルコネクション | 全て | TiDB Cloud StarterまたはTiDB Cloud Essentialインスタンスへの接続数。 |
| アイドル接続時間 | P99、P99(取引内)、P99(取引外) | トランザクションが開いている間、接続がアイドル状態になっている時間。この時間が長い場合は、通常、アプリケーションロジックの処理速度が遅いか、トランザクションの実行時間が長いことを示しています。 |
データベースの状態
以下の表は、[データベースの状態]タブにあるデータベースレベルの主要なメトリックを示しています。
| メトリック名 | ラベル | 説明 |
|---|
| QPS/DB | すべて、{データベース名} | 各データベースで1秒あたりに実行されるSQLステートメントの数。これは、 SELECT 、 INSERT 、 UPDATEなどのSQLタイプごとに収集されます。 |
| データベースあたりの平均クエリ実行時間 | すべて、{データベース名} | クライアントからデータベースへのリクエストを受信してから、データベースがリクエストを実行し、結果をクライアントに返すまでの時間。 |
| データベースごとのクエリ失敗 | すべて、{データベース名} | 各データベースにおける、1秒あたりのSQLステートメント実行エラー数に基づいたエラータイプの統計情報。 |
FAQ
1. なぜこのページの一部のペインが空になっているのですか?
ペインにメトリクスが表示されない場合、考えられる理由は以下のとおりです。
- 対応するTiDB Cloudリソースのワークロードは、このメトリックをトリガーしません。たとえば、失敗したクエリがない場合、失敗したクエリのメトリックは常に空になります。
- お使いのTiDB CloudリソースのTiDBバージョンが低いです。これらのメトリクスを表示するには、最新バージョンのTiDBにアップグレードする必要があります。
これらの理由がすべて除外される場合は、トラブルシューティングのためにPingCAPサポートチームに連絡できます。
2. まれなケースで、指標が不連続になるのはなぜでしょうか?
まれなケースでは、メトリクスシステムが高負荷状態になった場合など、メトリクスが失われる可能性があります。
この問題が発生した場合は、 PingCAPサポートに連絡してトラブルシューティングを依頼してください。