TiDBダッシュボードのSQLステートメントページ
SQL ステートメント ページには、クラスター内のすべての SQL ステートメントの実行ステータスが表示されます。このページは、合計実行時間または単一の実行時間が長い SQL ステートメントを分析するためによく使用されます。
このページでは、一貫した構造を持つ SQL クエリ (クエリ パラメータが一貫していない場合でも) は、同じ SQL ステートメントとして分類されます。たとえば、 SELECT * FROM employee WHERE id IN (1, 2, 3)
とselect * from EMPLOYEE where ID in (4, 5)
どちらも同じselect * from employee where id in (...)
SQL ステートメントとして分類されます。
ページにアクセスする
SQL ステートメントの概要ページにアクセスするには、次の 2 つの方法のいずれかを使用できます。
TiDB ダッシュボードにログインしたら、左側のナビゲーション メニューで[SQL ステートメント]をクリックします。
ブラウザでhttp://127.0.0.1:2379/dashboard/#/statementアクセスします。3
127.0.0.1:2379
実際の PD インスタンスのアドレスとポートに置き換えます。
SQL ステートメントの概要ページに表示されるすべてのデータは、TiDB ステートメントの概要テーブルからのものです。テーブルの詳細については、 TiDB ステートメント サマリー テーブル参照してください。
注記:
SQL ステートメントの概要ページの「平均待ち時間」列では、青いバーは平均実行時間を示します。SQL ステートメントの青いバーに黄色の線が表示されている場合、黄色の線の左側と右側はそれぞれ、最近のデータ収集サイクル中の SQL ステートメントの最小実行時間と最大実行時間を表します。
フィルターを変更する
SQL ステートメントの概要ページの上部で、表示する SQL 実行の時間範囲を変更できます。また、SQL ステートメントが実行されるデータベース別、または SQL タイプ別にリストをフィルターすることもできます。次の画像は、最近のデータ収集サイクル (デフォルトでは最近の 30 分間) におけるすべての SQL 実行を示しています。
より多くの列を表示
ページの「列」をクリックすると、さらに列を表示できます。マウスを列名の右側にある(i)アイコンに移動すると、その列の説明が表示されます。
カラムで並べ替え
デフォルトでは、リストは合計レイテンシの高から低の順に並べ替えられます。並べ替えの基準を変更したり、並べ替え順序を切り替えるには、別の列見出しをクリックします。
設定を変更する
リスト ページで、右上にある[設定]ボタンをクリックして、SQL ステートメント機能の設定を変更します。
[設定]ボタンをクリックすると、次の設定ダイアログボックスが表示されます。
設定ページでは、SQL ステートメント機能を無効または有効にすることができます。SQL ステートメント機能を有効にすると、次の設定を変更できます。
- 収集間隔: 各 SQL ステートメント分析の期間の長さ。デフォルトでは 30 分です。SQL ステートメント機能は、一定期間内のすべての SQL ステートメントを要約してカウントします。期間が長すぎると、要約の粒度が粗くなり、問題の特定には適しません。期間が短すぎると、統計の粒度が細かくなり、問題の特定には適しますが、同じデータ保持期間内でレコード数が増え、メモリ使用量が増えます。したがって、実際の状況に基づいてこの値を調整し、問題を特定するときにこの値を適切に下げる必要があります。
- データ保持期間: 概要情報の保持期間。デフォルトでは 1 日です。この期間より長く保持されたデータは、システム テーブルから削除されます。
詳細はステートメントサマリーテーブルの構成参照。
注記:
ステートメント システム テーブルはメモリにのみ保存されるため、SQL ステートメント機能が無効になると、システム テーブル内のデータはクリアされます。
Collect interval
とretain duration
の値はメモリ使用量に影響するため、実際の状況に応じてこれらの値を調整することをお勧めしますretain duration
の値は大きすぎないようにしてください。
その他
tidb_stmt_summary_max_stmt_count
ステートメント サマリー テーブルに保存できる SQL ステートメントの数を制限します。制限を超えると、TiDB は最近使用されていない SQL ステートメントをクリアします。これらのクリアされた SQL ステートメントは、 DIGEST
がNULL
に設定された行として表されます。TiDB ダッシュボードの SQL ステートメント ページでは、これらの行の情報はOthers
として表示されます。
次のステップ
SQL ステートメントの実行詳細を表示する方法の詳細については、 TiDBダッシュボードのステートメント実行の詳細参照してください。