TiDB ダッシュボード インスタンス プロファイリング - 継続的なプロファイリング

注記:

この機能はデータベースの専門家向けに設計されています。専門家でないユーザーは、PingCAP テクニカル サポートの指導の下でこの機能を使用することをお勧めします。

継続的プロファイリングにより、各 TiDB、TiKV、PD インスタンスからパフォーマンス データを継続的に収集できます。収集されたパフォーマンス データは、FlameGraph または DAG として視覚化できます。

これらのパフォーマンス データを使用すると、専門家はインスタンスの CPU やメモリなどのリソース消費の詳細を分析して、CPU オーバーヘッドの高さ、メモリ使用量の高さ、プロセスの停止など、高度なパフォーマンスの問題をいつでも正確に特定できます。問題を再現できない場合でも、専門家はその時点で収集されたパフォーマンス履歴データを表示して、問題を深く掘り下げることができます。このようにして、MTTR を効果的に削減できます。

手動プロファイリングと比較

継続的プロファイリングは手動プロファイリングの拡張機能です。どちらも各インスタンスのさまざまな種類のパフォーマンス データを収集および分析するために使用できます。それらの違いは次のとおりです。

  • 手動プロファイリングでは、プロファイリングを開始した瞬間に短期間 (たとえば、30 秒) のみパフォーマンス データが収集されますが、継続的プロファイリングは有効になっている場合に継続的にデータを収集します。
  • 手動プロファイリングは現在発生している問題を分析するためにのみ使用できますが、継続的プロファイリングは現在の問題と履歴の問題の両方を分析するために使用できます。
  • 手動プロファイリングでは特定のインスタンスの特定のパフォーマンス データを収集できますが、継続的プロファイリングではすべてのインスタンスのすべてのパフォーマンス データを収集します。
  • 継続的なプロファイリングではより多くのパフォーマンス データが保存されるため、より多くのディスク領域を占有します。

サポートされているパフォーマンスデータ

手動プロファイリングのすべてのパフォーマンス データが収集されます。

  • CPU: TiDB、TiKV、 TiFlash、PDインスタンスの各内部関数のCPUオーバーヘッド

  • ヒープ: TiDB、TiKV、PDインスタンス上の各内部関数のメモリ消費量

  • ミューテックス: TiDBおよびPDインスタンス上のミューテックスの競合状態

  • Goroutine: TiDB および PD インスタンス上のすべての Goroutine の実行状態と呼び出しスタック

ページにアクセスする

次のいずれかの方法で継続プロファイリング ページにアクセスできます。

  • TiDB ダッシュボードにログインしたら、左側のナビゲーション メニューで[高度なデバッグ] > [インスタンスのプロファイリング] > [継続的なプロファイリング]をクリックします。

    Access page

  • ブラウザでhttp://127.0.0.1:2379/dashboard/#/continuous_profilingアクセスします。3 127.0.0.1:2379実際の PD インスタンスのアドレスとポートに置き換えます。

継続的なプロファイリングを有効にする

注記:

継続的プロファイリングを使用するには、クラスターを最新バージョンのTiUP (v1.9.0 以上) またはTiDB Operator (v1.3.0 以上) でデプロイまたはアップグレードする必要があります。クラスターを以前のバージョンのTiUPまたはTiDB Operator を使用してアップグレードした場合は、手順FAQ参照してください。

継続的プロファイリングを有効にすると、Web ページを常にアクティブにしなくても、バックグラウンドでパフォーマンス データを継続的に収集できます。収集されたデータは一定期間保持され、期限切れのデータは自動的にクリアされます。

この機能を有効にするには:

  1. 継続的プロファイリングページご覧ください。
  2. 「設定を開く」をクリックします。右側の設定領域で、 「機能の有効化」をオンにし、必要に応じて「保持期間」のデフォルト値を変更します。
  3. 「保存」をクリックします。

Enable feature

現在のパフォーマンスデータをビュー

継続的なプロファイリングが有効になっているクラスターでは、手動プロファイリングを開始できません。現時点でのパフォーマンス データを表示するには、最新のプロファイリング結果をクリックするだけです。

過去のパフォーマンスデータをビュー

リスト ページでは、この機能を有効にしてから収集されたすべてのパフォーマンス データを確認できます。

History results

パフォーマンスデータをダウンロード

プロファイリング結果ページで、右上隅の「プロファイリング結果のダウンロード」をクリックすると、すべてのプロファイリング結果をダウンロードできます。

Download profiling result

表内の個々のインスタンスをクリックして、そのプロファイリング結果を表示することもできます。または、... にマウスを移動して生データをダウンロードすることもできます。

View profiling result

継続的なプロファイリングを無効にする

  1. 継続的プロファイリングページご覧ください。
  2. 右上隅の歯車アイコンをクリックして設定ページを開きます。 [機能の有効化]をオフにします。
  3. 「保存」をクリックします。
  4. ポップアップされたダイアログボックスで、 [無効にする]をクリックします。

Disable feature

よくある質問

1. 継続的なプロファイリングを有効にできず、UI に「必要なコンポーネントNgMonitoring が開始されていません」と表示されます

TiDBダッシュボードに関するFAQ参照。

2. 継続的プロファイリングを有効にするとパフォーマンスに影響はありますか?

当社のベンチマークによると、この機能を有効にした場合の平均パフォーマンスへの影響は 1% 未満です。

3. この機能のステータスはどうなっていますか?

これは現在、一般提供 (GA) された機能であり、本番環境で使用できます。

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