TiDBダッシュボードインスタンスプロファイリング-継続的なプロファイリング
TiDB 5.3.0で導入された継続的プロファイリングは、システムコールレベルでリソースのオーバーヘッドを監視する方法です。継続的プロファイリングのサポートにより、TiDBは、データベースのソースコードを直接調べるのと同じくらい明確なパフォーマンスの洞察を提供し、研究開発および運用および保守担当者がフレームグラフを使用してパフォーマンスの問題の根本原因を特定するのに役立ちます。
0.5%未満のパフォーマンス低下で、この機能はデータベース内部操作の継続的なスナップショット(CTスキャンと同様)を取得し、データベースを「ブラックボックス」からより観察しやすい「ホワイトボックス」に変えます。この機能は、ワンクリックで有効にすると自動的に実行され、保存期間内に生成されたストレージ結果を保持します。保存期間を超えた保管結果は、保管スペースを解放するためにリサイクルされます。
制限
連続プロファイリング機能を有効にする前に、次の制限に注意してください。
x86アーキテクチャでは、この機能はTiDB、PD、TiKV、およびTiFlashをサポートします。この機能はARMアーキテクチャと完全には互換性がなく、このアーキテクチャでは有効にできません。
この機能は、v1.9.0以降のTiUPまたはv1.3.0以降のTiDB Operatorを使用してデプロイまたはアップグレードされたクラスターで使用できます。この機能は、バイナリパッケージを使用して展開またはアップグレードされたクラスターでは使用できません。
コンテンツのプロファイリング
継続的プロファイリングを使用すると、TiDB、PD、TiKV、およびTiFlashインスタンスの継続的なパフォーマンスデータを収集し、ノードを再起動せずに昼夜を問わず監視できます。収集されたデータは、フレームグラフや有向非巡回グラフなどの形式で表示できます。表示されるデータは、パフォーマンスプロファイリング期間中にインスタンスで実行される内部操作と対応する比率を視覚的に示します。このようなデータを使用すると、これらのインスタンスのCPUリソース消費量をすばやく知ることができます。
現在、ContinuousProfilingは次のパフォーマンスデータを表示できます。
- TiDB / PD:CPUプロファイル、ヒープ、ミューテックス、ゴルーチン(debug = 2)
- TiKV / TiFlash:CPUプロファイル
継続的なプロファイリングを有効にする
このセクションでは、TiUPおよびTiDB Operatorをそれぞれ使用してデプロイされたTiDBクラスターで継続的プロファイリングを有効にする方法について説明します。
TiUPを使用してデプロイされたクラスター
TiUPを使用してデプロイされたクラスターで継続的プロファイリングを有効にするには、次の手順を実行します。
TiDBダッシュボードで、[高度なデバッグ]>[インスタンスのプロファイリング]>[継続的なプロファイリング]をクリックします。
表示されたウィンドウで、[設定を**開く]**をクリックします。右側の[設定]領域で、[機能を有効にする]をオンに切り替え、必要に応じて保持期間のデフォルト値を変更します。
この機能を有効にするには、[**保存]**をクリックします。
TiDB Operatorを使用してデプロイされたクラスター
継続的なプロファイリングを有効にするを参照してください。
ページにアクセスする
次のいずれかの方法を使用して、継続的なプロファイリングページにアクセスできます。
TiDBダッシュボードにログインした後、左側のナビゲーションバーで[高度なデバッグ]>[インスタンスのプロファイリング]>[継続的なプロファイリング]をクリックします。
ブラウザからhttp://127.0.0.1:2379/dashboard/#/continuous_profilingにアクセスします。
127.0.0.1:2379
を実際のPDインスタンスのアドレスとポートに置き換えます。
プロファイリング履歴を表示する
継続的なプロファイリングを開始した後、インスタンスプロファイリングページでプロファイリング結果を表示できます。
パフォーマンスプロファイリングはバックグラウンドで実行されます。現在のページを更新または終了しても、実行中のパフォーマンスプロファイリングタスクは終了しません。
プロファイリング結果をダウンロード
プロファイリング結果ページで、右上隅にある[プロファイリング結果のダウンロード]をクリックして、すべてのプロファイリング結果をダウンロードできます。
テーブル内の個々のインスタンスをクリックして、そのプロファイリング結果(フレームチャート、有向非巡回グラフ、テキストなど)を表示することもできます。または、...にカーソルを合わせて生データをダウンロードすることもできます。
継続的なプロファイリングを無効にする
TiDBダッシュボードで、左側のナビゲーションバーの[ Advanced Debugging ]> [ Profiling Instances ]>[ ContinuousProfiling ]をクリックします。 [設定]をクリックします。
ポップアップウィンドウで、[機能を有効にする]の下のボタンをオフにします。
[連続プロファイリング機能を無効にする]ダイアログボックスで、[無効にする]をクリックします。
[**保存]**をクリックします。
ポップアップウィンドウで、[無効にする]をクリックします。