重要
このページは英語版のページを機械翻訳しています。原文はこちらからご覧ください。

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

ノート:

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

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

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

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

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

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

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

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

  • CPU:TiDB、TiKV、TiFlash、およびPDインスタンスの各内部機能のCPUオーバーヘッド

  • ヒープ:TiDBおよびPDインスタンスの各内部関数のメモリ消費量

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

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

ページにアクセスする

次のいずれかの方法を使用して、[ContinuousProfiling]ページにアクセスできます。

  • TiDBダッシュボードにログインした後、左側のナビゲーションバーで[ Advanced Debugging ]> [ Profiling Instances ]>[ ContinuousProfiling ]をクリックします。

    Access page

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

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

ノート:

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

TiDB v6.1.0以降、継続的プロファイリングはデフォルトで有効になっています。有効にすると、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)機能であり、実稼働環境で使用できます。