TDSQL-C for MySQLは、複数の監視指標を設定しており、お客様がデータベース内のパラレルクエリ関連操作をリアルタイムで監視できるように支援します。本稿では、パラレルクエリ関連の監視指標をご紹介します。
前提条件
データベースバージョン:TDSQL-C for MySQL 8.0 カーネルバージョン 3.1.8 以上。
パラレルクエリ関連のモニタリング指標
|
| txsql_parallel_threads_currently_used | | | |
| txsql_parallel_stmt_error | | | |
| txsql_parallel_stmt_executed | | | |
| txsql_parallel_stmt_fallback | | パラレルクエリからシリアルクエリへのロールバックが発生した文の数。 | |
監視項目の実践チュートリアル
以下に、特殊なシナリオの問題の一部と、対応する監視項目および解決方法を列挙します。
例1:
現在のパラレルクエリスレッド数が常に txsql_max_parallel_worker_threads で設定された値と等しい。
解決方法:
この例はスレッド数が常にフル稼働状態であることを示しています。CPU使用率が高負荷に達していない場合、パラメータ txsql_max_parallel_worker_threads の値を増やすことをおすすめします。
例2:
パラレルクエリのエラー数が増加しています。
解決方法:
監視項目のCPU使用率とメモリ使用率を確認してください。負荷が明らかに高くなっている場合、txsql_parallel_degreeの値をCPUコア数の1/4に下げることをおすすめします。
例3:
ロールバックされたシリアルクエリの数が増加しています。
解決方法:
これは現在実行中のSQL文がパラレルクエリの実行条件を満たしていないことを示しています。スレッドリソースの総数 txsql_max_parallel_worker_threads を増やすか、単一文が申請可能なパラレルクエリプラン環境の最大メモリ制限 txsql_optimizer_context_max_mem_size を増やすことをおすすめします。これによりSQL文がパラレルクエリを利用できるようになります。