データロードのトラブルシューティング
このガイドは、DBA や運用エンジニアが外部の監視システムに頼らずに SQL インターフェースを通じてデータロードジョブのステータスを監視するのを支援するために設計されています。また、ロード操作中のパフォーマンスボトルネックの特定や異常のトラブルシューティングに関するガイダンスも提供します。
用語
Load Job: Routine Load Job や Pipe Job のような継続的なデータロードプロセス。
Load Task: 通常、単一のロードトランザクションに対応する一度きりのデータロードプロセス。例として、Broker Load、Stream Load、Spark Load、および INSERT INTO があります。Routine Load ジョブと Pipe ジョブは、データ取り込みを行うためにタスクを継続的に生成します。
ロードジョブの観察
ロードジョブを観察する方法は2つあります:
- SQL ステートメント SHOW ROUTINE LOAD および SHOW PIPES を使用する。
- システムビュー information_schema.routine_load_jobs および information_schema.pipes を使用する。
ロードタスクの観察
ロードタスクも2つの方法で監視できます:
- SQL ステートメント SHOW LOAD および SHOW ROUTINE LOAD TASK を使用する。
- システムビュー information_schema.loads および statistics.loads_history を使用する。
SQL ステートメント
SHOW ステートメントは、現在のデータベースの進行中および最近完了したロードタスクを表示し、タスクのステータスを迅速に把 握できます。取得される情報は、statistics.loads_history システムビューのサブセットです。
SHOW LOAD ステートメントは Broker Load、Insert Into、Spark Load タスクの情報を返し、SHOW ROUTINE LOAD TASK ステートメントは Routine Load タスクの情報を返します。
システムビュー
information_schema.loads
information_schema.loads システムビューは、最近のロードタスクに関する情報を保存し、アクティブなものと最近完了したものを含みます。StarRocks は定期的にデータを statistics.loads_history システムテーブルに同期し、永続的に保存します。
information_schema.loads は以下のフィールドを提供します:
| フィールド | 説明 |
|---|---|
| ID | グローバルに一意の識別子。 |
| LABEL | ロードジョブのラベル。 |
| PROFILE_ID | ANALYZE PROFILE を通じて分析できるプロファイルの ID。 |
| DB_NAME | 対象テーブルが属するデータベース。 |
| TABLE_NAME | 対象テーブル。 |
| USER | ロードジョブを開始したユーザー。 |
| WAREHOUSE | ロードジョブが属するウェアハウス。 |
| STATE |