📣
TiDB Cloud Essential はパブリックプレビュー中です。このページは自動翻訳されたものです。原文はこちらからご覧ください。

TiCDC 監視メトリクスの詳細

TiCDCの現在の状況の概要は、主要な指標が表示されるTiCDCダッシュボードから確認できます。このドキュメントでは、これらの主要な指標について詳しく説明します。

このドキュメントのメトリックの説明は、デフォルト設定を使用して MySQL にデータを複製する次のレプリケーション タスクの例に基づいています。

cdc cli changefeed create --server=http://10.0.10.25:8300 --sink-uri="mysql://root:123456@127.0.0.1:3306/" --changefeed-id="simple-replication-task"

新しいアーキテクチャにおける TiCDC のメトリクス

TiCDC の新しいアーキテクチャの監視ダッシュボードTiCDC-New-Arch はまだTiUPで管理されていません。Grafana で関連する監視データを表示するには、TiCDC 監視メトリクスファイルを手動でインポートする必要があります。

  1. 新しいアーキテクチャの TiCDC の監視メトリック ファイルをダウンロードします。

    wget https://raw.githubusercontent.com/pingcap/ticdc/refs/heads/release-8.5/metrics/grafana/ticdc_new_arch.json
  2. ダウンロードしたメトリック ファイルを Grafana にインポートします。

    Import Metrics File

TiCDC の新しいアーキテクチャの監視ダッシュボードには、主に次のセクションが含まれます。

  • まとめ : TiCDCクラスターの概要情報
  • サーバ : TiDBクラスタ内のTiKVノードとTiCDCノードの概要情報
  • 丸太引き : TiCDC Log Pullerモジュールの詳細情報
  • イベントストア : TiCDCイベントストアモジュールの詳細情報
  • シンク : TiCDCシンクモジュールの詳細情報

まとめ

以下は概要パネルの例です。

Summary

概要パネルの各メトリックの説明は次のとおりです。

  • チェンジフィードチェックポイントラグ: 下流と上流の間のレプリケーションタスクのラグ
  • Changefeed ResolvedTs Lag: TiCDCノードの内部処理の進行と上流データベース間の遅延
  • アップストリーム書き込みバイト/秒:アップストリームデータベースの書き込みスループット
  • TiCDC入力バイト/秒: TiCDCがアップストリームから1秒あたりに受信するデータ量
  • シンクイベント行数/秒: TiCDCが1秒あたりにダウンストリームに書き込む行数
  • シンク書き込みバイト/秒: TiCDCが1秒あたりにダウンストリームに書き込むデータの量
  • チェンジフィードのステータス: 各チェンジフィードのステータス
  • テーブルディスパッチャ数: 各チェンジフィードに対応するディスパッチャの数
  • メモリクォータ: イベントコレクタのメモリクォータと使用量。使用量が多すぎるとスロットリングが発生する可能性があります。

サーバ

以下はサーバーパネルの例です。

Server

サーバーパネルの各メトリックの説明は次のとおりです。

  • 稼働時間: TiKVノードとTiCDCノードが稼働している時間
  • Goroutine 数: TiCDC ノード上の Goroutine の数
  • オープンFD数: TiCDCノードによって開かれたファイルハンドルの数
  • CPU使用率: TiCDCノードのCPU使用率
  • メモリ使用量: TiCDCノードのメモリ使用量
  • 所有権履歴: TiCDC クラスター内の所有者ノードの履歴記録
  • PDLeader履歴:上流TiDBクラスタ内のPDLeaderノードの履歴記録

丸太引き

以下は、Log Pullerパネルの例です。

Log Puller

Log Pullerパネルの各メトリックの説明は次のとおりです。

  • 入力イベント数/秒: TiCDCが1秒あたりに受信するイベント数
  • 未解決のリージョン要求数: TiCDC が送信したがまだ完了していないリージョン増分スキャン要求の数
  • リージョン要求終了スキャン所要時間:リージョン増分スキャンにかかる時間
  • 登録済みリージョン数: 登録済みリージョンの総数
  • メモリクォータ: Log Puller のメモリクォータと使用量。過剰な使用はスロットリングを引き起こす可能性があります。
  • 解決済みTsバッチサイズ(リージョン): 1つの解決済みTsイベントに含まれるリージョンの数

イベントストア

以下は、イベント ストアパネルの例です。

Event Store

イベント ストアパネルの各メトリックの説明は次のとおりです。

  • 解決されたTsラグ: イベントストアの処理の進行と上流データベース間のラグ
  • レジスタディスパッチャStartTsラグ:ディスパッチャ登録StartTsと現在の時刻のラグ
  • サブスクリプション解決Tsラグ: サブスクリプション処理の進行と上流データベース間のラグ
  • サブスクリプションデータGCラグ: サブスクリプションデータGCの進行状況と現在の時刻の間のラグ
  • 入力イベント数/秒: イベントストアが1秒あたりに処理するイベントの数
  • 入力バイト/秒: イベントストアが1秒あたりに処理するデータ量
  • 書き込みリクエスト数/秒: イベントストアが1秒あたりに実行する書き込みリクエストの数
  • 書き込みワーカービジー率: イベントストア書き込みスレッドの合計実行時間に対するI/O時間の比率
  • 圧縮行数/秒: イベント ストアで 1 秒あたりに圧縮された行数 (行サイズがしきい値を超えた場合にのみトリガーされます)
  • 書き込み時間: イベントストアの書き込み操作にかかる時間
  • 書き込みバッチサイズ: 1回の書き込み操作のバッチサイズ
  • 書き込みバッチイベント数: 1回の書き込みバッチに含まれる行変更イベントの数
  • ディスク上のデータサイズ: イベントストアがディスク上で占める合計データサイズ
  • メモリ内のデータサイズ: イベントストアがメモリ内で占める合計データサイズ
  • スキャン要求数/秒: イベントストアが1秒あたりに実行するスキャン要求の数
  • スキャンバイト数/秒: イベントストアが1秒あたりにスキャンするデータの量

シンク

以下はシンクパネルの例です。

Sink

シンクパネルの各メトリックの説明は次のとおりです。

  • 出力行バッチ数: シンクモジュールによって書き込まれたDMLバッチあたりの平均行数
  • 出力行数(1秒あたり): 1秒あたりに下流に書き込まれるDML行数
  • 出力DDL実行時間: 現在のノードの変更フィードのDDLイベントの実行に費やされた時間
  • シンクエラー数 / 分: シンクモジュールによって1分あたりに報告されたエラーの数
  • 出力DDL数/分: 現在のノードの変更フィードに対して1分あたりに実行されたDDLの数

クラシックアーキテクチャにおける TiCDC のメトリクス

TiUPを使用して TiDB クラスターをデプロイすると、TiDB と同時にデプロイされる TiCDC のサブダッシュボードが Grafana の古典アーキテクチャに表示されます。

各パネルの説明は次のとおりです。

  • サーバ : TiDBクラスタ内のTiKVノードとTiCDCノードの概要情報
  • チェンジフィード : TiCDCレプリケーションタスクの詳細情報
  • イベント : TiCDCクラスタ内のデータフローに関する詳細情報
  • TiKV : TiCDCに関連するTiKV情報

サーバ

以下はサーバーパネルの例です。

TiCDC Dashboard - Server metrics

サーバーパネルの各メトリックの説明は次のとおりです。

  • 稼働時間: TiKVノードとTiCDCノードが稼働している時間
  • ゴルーチン数: TiCDCノードのゴルーチンの数
  • オープンFD数: TiCDCノードによって開かれたファイルハンドルの数
  • 所有権: TiCDC クラスター内のノードの現在のステータス
  • 所有権の履歴: TiCDCクラスターの所有権の履歴
  • CPU使用率: TiCDCノードのCPU使用率
  • メモリ使用量: TiCDCノードのメモリ使用量

チェンジフィード

以下はChangefeedパネルの例です。

TiCDC Dashboard - Changefeed metrics 1

  • チェンジフィードテーブル数: 各 TiCDC ノードがレプリケーションタスクで複製する必要があるテーブルの数
  • プロセッサ解決ts: TiCDCクラスタで解決されたタイムスタンプ
  • テーブル解決ts: レプリケーションタスク内の各テーブルのレプリケーションの進行状況
  • チェンジフィードチェックポイント:下流へのデータ複製の進行状況。通常、緑色のバーは黄色の線とつながっています。
  • PD etcdリクエスト数/秒: TiCDCノードがPDに送信するリクエスト数(1秒あたり)
  • 終了エラー数/分: 1分あたりにレプリケーションタスクを中断するエラーの数
  • チェンジフィードチェックポイントラグ:上流と下流間のデータ複製の進行ラグ(単位は秒)
  • プロセッサ解決tsラグ:上流ノードとTiCDCノード間のデータ複製の進行ラグ(単位は秒)

TiCDC Dashboard - Changefeed metrics 2

  • シンク書き込み時間: TiCDCがトランザクションの変更をダウンストリームに書き込むのに費やした時間のヒストグラム
  • シンク書き込み期間パーセンタイル: TiCDC が 1 秒以内にトランザクションの変更をダウンストリームに書き込むのに費やした時間 (P95、P99、および P999)
  • フラッシュシンク期間: TiCDC が非同期的にデータを下流にフラッシュするのにかかった時間のヒストグラム
  • フラッシュシンク期間パーセンタイル: TiCDC が 1 秒以内にデータを非同期にダウンストリームにフラッシュするのにかかる時間 (P95、P99、および P999)

TiCDC Dashboard - Changefeed metrics 3

  • MySQLシンク競合検出期間: MySQLシンク競合の検出に費やされた時間のヒストグラム
  • MySQLシンク競合検出期間パーセンタイル: 1秒以内にMySQLシンク競合を検出するのに費やされた時間(P95、P99、P999)
  • MySQLシンクワーカーの負荷: TiCDCノードのMySQLシンクワーカーのワークロード

TiCDC Dashboard - Changefeed metrics 4

  • Changefeed キャッチアップ ETA: レプリケーションタスクが上流のクラスタデータに追いつくのに必要な推定時間です。上流の書き込み速度が TiCDC のレプリケーション速度よりも速い場合、この指標は非常に大きくなる可能性があります。TiCDC のレプリケーション速度は多くの要因に左右されるため、この指標は参考値であり、実際のレプリケーション時間とは異なる可能性があります。

イベント

以下はイベントパネルの例です。

TiCDC Dashboard - Events metrics 2 TiCDC Dashboard - Events metrics 2 TiCDC Dashboard - Events metrics 2

イベントパネルの各メトリックの説明は次のとおりです。

  • イベントフィード数: TiCDCノードのイベントフィードRPCリクエストの数
  • イベントサイズのパーセンタイル: TiCDCがTiKVから1秒以内に受信するイベントサイズ(P95、P99、P999)
  • イベントフィードエラー/分: TiCDCノードのイベントフィードRPCリクエストによって1分あたりに報告されたエラーの数
  • KVクライアント受信イベント数/秒: TiCDCノードのKVクライアントモジュールがTiKVから1秒あたりに受信するイベント数
  • プラー受信イベント数/秒: TiCDCノードのプラーモジュールがKVクライアントから1秒あたりに受信するイベント数
  • プラー出力イベント数/秒: TiCDCノードのプラーモジュールがソーターモジュールに送信するイベント数/秒
  • シンクフラッシュ行数/秒: TiCDCノードが1秒あたりにダウンストリームに書き込むイベント数
  • プラーバッファサイズ: TiCDCノードがプラーモジュールにキャッシュするイベントの数
  • エントリソーターバッファサイズ: TiCDCノードがソーターモジュールにキャッシュするイベントの数
  • プロセッサ/マウントバッファサイズ: TiCDCノードがプロセッサモジュールとマウントモジュールにキャッシュするイベントの数
  • シンク行バッファサイズ: TiCDCノードがシンクモジュールにキャッシュするイベントの数
  • エントリソーターのソート期間: TiCDCノードがイベントをソートするのにかかった時間のヒストグラム
  • エントリーソーターのソート所要時間パーセンタイル: TiCDCのソートイベントが1秒間に要した時間(P95、P99、P999)
  • エントリソーターのマージ期間: TiCDCノードがソートされたイベントをマージするのにかかった時間のヒストグラム
  • エントリソーターのマージ所要時間パーセンタイル: TiCDCがソートされたイベントを1秒以内にマージするのにかかる時間(P95、P99、P999)
  • マウンターのアンマーシャリング期間: TiCDCノードがイベントをアンマーシャリングするのにかかった時間のヒストグラム
  • マウンターのアンマーシャリング期間のパーセンタイル: TiCDC アンマーシャリング イベントが 1 秒間に要した時間 (P95、P99、および P999)
  • KVクライアントディスパッチイベント数/秒: KVクライアントモジュールがTiCDCノード間でディスパッチするイベント数
  • KVクライアントのバッチ解決サイズ: TiKVがTiCDCに送信する解決済みタイムスタンプメッセージのバッチサイズ

ティクブ

以下はTiKVパネルの例です。

TiCDC Dashboard - TiKV metrics 1 TiCDC Dashboard - TiKV metrics 2

TiKVパネルの各メトリックの説明は次のとおりです。

  • CDCエンドポイントCPU: TiKVノード上のCDCエンドポイントスレッドのCPU使用率
  • CDCワーカーCPU: TiKVノード上のCDCワーカースレッドのCPU使用率
  • 最小解決タイムスタンプ: TiKVノード上の最小解決タイムスタンプ
  • 最小解決リージョン: TiKVノード上の最小解決タイムスタンプのリージョンID
  • 解決されたTSラグ期間パーセンタイル: TiKVノード上の最小解決タイムスタンプと現在の時刻の間のラグ
  • 初期スキャン期間: TiKVノードがTiCDCノードに接続する際の増分スキャンに費やされた時間のヒストグラム
  • 初期スキャン所要時間パーセンタイル: 1秒以内にTiKVノードの増分スキャンに費やされた時間(P95、P99、P999)
  • ブロックキャッシュなしのメモリ: RocksDBブロックキャッシュを除いたTiKVノードのメモリ使用量
  • メモリ内のCDC保留バイト数: TiKVノード上のCDCモジュールのメモリ使用量
  • キャプチャされた領域の数: TiKVノード上のイベントキャプチャ領域の数

このページは役に立ちましたか?