メインコンテンツまでスキップ

Trend Analysis

Trend Analysis画面では、SingleStoreクラスターのOS CPU使用率、スレッド数、クエリ処理量、アラーム発生件数を時間帯別の推移チャートで確認し、特定時点の実行中クエリと期間別イベント・アラーム履歴をタブ形式で照会できます。

左側メニューで Database > SingleStore > Trend Analysis を選択してください。

Trend Analysis 全体画面

画面はトレンドチャート領域と下部の詳細データタブ領域、二つの領域で構成されます。

トレンドチャートでパフォーマンス指標の推移を確認する​

画面上部のフィルターバーで照会条件を設定した後、[Search] をクリックするとトレンドチャートが更新されます。

  • Period: 分析する期間と時間範囲を設定します。
  • Group: 照会対象のインスタンスグループを選択します。
  • Instance: 分析対象のSingleStoreクラスターを選択します。

トレンドチャートは選択した期間中の以下の四つの指標を個別チャートで表示します。

チャート単位説明
OS CPU Utilization%クラスターノードのOS CPU使用率の推移です。
Threads Runningcount同時に実行中のスレッド数の推移です。
Successful Queriescount正常に完了したクエリ数の推移です。
Alarmcount発生したアラーム件数の推移です。急増区間はしきい値違反イベントが集中した時間帯です。

チャートの凡例(Legend)は Aggregator と LEAF ノードを区別して表示します。凡例の項目をクリックすると該当ノードの線の表示をオン/オフできます。凡例右側の 4個 / 8個 / 16個 ボタンで1行に表示する項目数を調整します。[Reset] をクリックすると凡例フィルターとチャートのズーム状態が初期化されます。

参考

Alarmチャートで急増区間が見られたら、下部の Alert タブで該当時間帯のアラームルールと違反値を確認して原因を絞り込んでいくことができます。

下部タブでクエリとイベント履歴を照会する​

トレンドチャートの下には Active Query、Top SQL、Event History、Alert 四つのタブがあります。タブごとに照会方式が異なります。

  • Active Query / Top SQL タブは別途の時間ナビゲーションを使用します。
  • Event History / Alert タブは上部フィルターバーの Period 期間全体を基準にデータを表示します。

Active Queryタブで時点別の実行クエリを確認する​

Active Queryタブはクラスターで実行されていたクエリの時点スナップショットを表示します。タブ上部の時間ナビゲーションで日付と時間バケット(5分単位)を選択すると、該当時点の実行クエリ一覧が表示されます。

主要なカラムは以下の通りです。

  • Query Text: 実行中のSQL文です。セルをクリックするとSQL Full Textポップアップが開きます。
  • Process ID: クエリのプロセス識別番号です。
  • Time (sec): クエリが実行中の経過時間(秒)です。値が非常に大きい場合、長期実行クエリが蓄積されているサインです。
  • Status: クエリの現在の状態です。executing 状態が長時間続くクエリはブロッキングまたはリソース競合が疑われます。
  • User: クエリを実行したデータベースユーザーです。
  • Database Name: クエリが実行されたデータベース名です。
  • Resource Pool: クエリに割り当てられたリソースプールです。
  • Submitted: クエリが送信された時刻です。

Top SQLタブでクエリパフォーマンスを分析する​

Top SQLタブ

Top SQLタブは照会期間中に実行されたクエリを集計パターン単位(Aggregator Activity Name)でまとめ、CPU時間、経過時間、ディスクI/Oなどのパフォーマンス指標を集計して表示します。

  • Query Text: 実行されたSQL文のサンプルです。セルをクリックするとSQL Full Textポップアップが開きます。
  • Aggregator Activity Name: 同一のクエリ構造を識別する集計名称です。セルをクリックすると右側に詳細パネルが開きます。
  • Database Name: クエリが実行されたデータベース名です。
  • Activity Type: クエリの活動タイプです(Query、Database、System)。
  • 以降のカラムは CPU Time (ms)、CPU Wait Time (ms)、Elapsed Time (ms)、Lock Row Time (ms)、Disk Time (ms)、Network Time (ms)、Memory (bytes)、Execution Count などの段階別パフォーマンス指標です。

一覧右上の Sum / Avg トグルで数値カラムの集計方式を合計と平均の間で切り替えることができます。全体のリソース消費量を把握する場合は Sum、1回の実行当たりのパフォーマンスを比較する場合は Avg を使用してください。

Event Historyタブでクラスターイベントを確認する​

Event Historyタブは照会期間中にSingleStoreクラスターで発生した内部イベントを表示します。Node ID、Host、Port、Event Time、Severity、Event Type、Details カラムで構成されます。クラスター再起動・レプリケーションエラー・ノード障害などのシステムレベルのイベントをトレンドチャートの異常区間と照合して原因特定に活用してください。

Alertタブでアラーム履歴を確認する​

Alertタブは照会期間中に発生したアラーム履歴を Time、Alert Type、Rule Name、Level、Value カラムで表示します。Level カラムの Critical 項目は即時注意が必要なしきい値違反を示します。

詳細パネルでSQLを詳細分析する​

Top SQLタブで Aggregator Activity Name セルをクリックすると、画面右側に詳細パネルが開きます。

Top SQL詳細パネル - Node Stat

詳細パネルの上部には選択したSQLの集計名称と [Slide History] ボタン、閉じるアイコンが表示されます。[Slide History] をクリックすると以前に照会した項目の一覧を確認して再訪することができます。パネルの情報領域には照会期間(Date)と Aggregator Activity Name が表示されます。

Node Statタブ​

デフォルトで選択されるタブで、該当SQLが実行されたノード別のクエリ統計をグリッドで表示します。

  • Host: クエリが実行されたノードのホストアドレスです。
  • Port: ノードのポート番号です。
  • Type: ノードタイプです。MA(Master Aggregator)はクエリを受信・配分するノードであり、LEAFは実際にデータを処理するノードです。
  • Node ID: クラスター内のノード識別番号です。
  • Query Text: 該当ノードで実行されたSQL文です。
  • Activity Name: ノードでの活動名称です。

MAノードとLEAFノードを比較することで、分散処理過程で特定のノードに負荷が集中しているかどうかを把握できます。

Full Textタブ​

Top SQL詳細パネル - Full Text

選択したSQLの全文をシンタックスハイライトで表示します。[Formatting] ボタンをクリックするとSQLがインデント・整列され、右側のコピーアイコンで全文をクリップボードにコピーできます。

Trendタブ​

選択したSQLの時間帯別推移を Elapsed Time、Disk I/O、Network I/O、Executions 指標チャートで表示します。AggregatorとLEAFノードを区別して表示し、特定のノードグループで指標が急上昇した時点を把握するのに有用です。

Historyタブ​

選択したSQLの過去の実行履歴を時系列で表示します。パフォーマンス低下が特定の時点から始まったのか、定期的に繰り返されるパターンなのかを確認してください。

Planタブ​

選択したSQLのクエリ実行計画を表示します。

参考

Planタブで実行計画を確認するには、SingleStoreの enable_disk_plan_explain 設定が有効化されている必要があります。設定が無効化されている場合、データは表示されません。