メインコンテンツへスキップ
ClickHouse Cloud でのクエリこのシステムテーブルのデータは、ClickHouse Cloud の各ノードにローカルに保持されています。したがって、すべてのデータを完全に把握するには、clusterAllReplicas 関数を使用する必要があります。詳細については、こちらを参照してください。

説明

最近の非同期ジョブ (例: テーブルのロード) に関する情報とステータスが含まれます。このテーブルには、各ジョブにつき1行が格納されます。このテーブルの情報を可視化するツールとして utils/async_loader_graph があります。

カラム

  • job (String) — ジョブ名 (一意でない場合があります) 。
  • job_id (UInt64) — ジョブの一意の ID。
  • dependencies (Array(UInt64)) — このジョブの前に完了している必要があるジョブの ID の一覧。
  • dependencies_left (UInt64) — まだ完了していない依存関係の現在の数。
  • status (Enum8(‘PENDING’ = 0, ‘OK’ = 1, ‘FAILED’ = 2, ‘CANCELED’ = 3)) — ジョブの現在のロード状態。PENDING: ロードジョブはまだ開始されていません。OK: ロードジョブは実行され、正常に完了しました。FAILED: ロードジョブは実行されましたが、失敗しました。CANCELED: ロードジョブは、削除または依存関係の失敗により実行されません。
  • is_executing (UInt8) — このジョブは現在ワーカーによって実行中です。
  • is_blocked (UInt8) — このジョブは依存関係の完了を待機しています。
  • is_ready (UInt8) — このジョブは実行可能な状態で、ワーカーを待っています。
  • elapsed (Float64) — 実行開始からの経過 Seconds。ジョブがまだ開始されていない場合は 0 です。ジョブが終了している場合は総実行時間です。
  • pool_id (UInt64) — 現在このジョブに割り当てられているプールの ID。
  • pool (String) — pool_id プールの名前。
  • priority (Int64) — pool_id プールの優先度。
  • execution_pool_id (UInt64) — ジョブが実行されるプールの ID。実行開始前は、最初に割り当てられたプールの ID と同じです。
  • execution_pool (String) — execution_pool_id プールの名前。
  • execution_priority (Int64) — execution_pool_id プールの優先度。
  • ready_seqno (Nullable(UInt64)) — 実行可能なジョブでは NULL になりません。ワーカーは自身のプールの ready queue から次に実行するジョブを取得します。実行可能なジョブが複数ある場合は、ready_seqno の値が最も小さいジョブが選択されます。
  • waiters (UInt64) — このジョブを待機しているスレッド数。
  • exception (Nullable(String)) — 失敗またはキャンセルされたジョブでは NULL になりません。クエリ実行中に発生したエラーメッセージ、またはこのジョブのキャンセルにつながったエラーを、依存関係の失敗チェーンに含まれるジョブ名とともに保持します。
  • schedule_time (DateTime64(6)) — ジョブが作成され、実行するようスケジュールされた時刻 (通常はすべての依存関係とともに) 。
  • enqueue_time (Nullable(DateTime64(6))) — ジョブが実行可能になり、そのプールの ready queue にエンキューされた時刻。ジョブがまだ実行可能になっていない場合は NULL です。
  • start_time (Nullable(DateTime64(6))) — ワーカーが ready queue からジョブをデキューし、実行を開始した時刻。ジョブがまだ開始されていない場合は NULL です。
  • finish_time (Nullable(DateTime64(6))) — ジョブの実行が完了した時刻。ジョブがまだ完了していない場合は NULL です。
保留中のジョブは、次のいずれかの状態になることがあります。
  • is_executing (UInt8) - ジョブは現在、ワーカーによって実行中です。
  • is_blocked (UInt8) - ジョブは依存関係の完了を待機しています。
  • is_ready (UInt8) - ジョブは実行可能な状態で、ワーカーによる実行待ちです。
  • elapsed (Float64) - 実行開始からの経過時間 (Seconds) です。ジョブが開始されていない場合は 0 です。ジョブが完了している場合は総実行時間です。
すべてのジョブには関連付けられたプールがあり、そのジョブはこのプールで開始されます。各プールには固定の優先度と、変更可能なワーカー数の上限があります。優先度の高い (priority の値が低い) ジョブほど先に実行されます。少なくとも 1 つの高優先度のジョブが実行可能状態にあるか実行中である限り、より低い優先度のジョブは開始されません。ジョブの優先度は優先化によって引き上げることができますが、引き下げることはできません。たとえば、受信したクエリがこのテーブルを必要とする場合、そのテーブルのロードや起動のためのジョブは優先化されます。ジョブの実行中に優先化することも可能ですが、ジョブが execution_pool から新たに割り当てられた pool に移されることはありません。優先度の逆転を避けるため、新しいジョブを作成する際には pool が使用されます。すでに開始されたジョブは、より高い優先度のジョブによってプリエンプトされることはなく、開始後は常に完了まで実行されます。
  • pool_id (UInt64) - 現在ジョブに割り当てられているプールの ID。
  • pool (String) - pool_id のプール名。
  • priority (Int64) - pool_id のプールの優先度。
  • execution_pool_id (UInt64) - ジョブが実行されるプールの ID。実行開始前に最初に割り当てられたプールと同じです。
  • execution_pool (String) - execution_pool_id のプール名。
  • execution_priority (Int64) - execution_pool_id のプールの優先度。
  • ready_seqno (Nullable(UInt64)) - 実行可能状態のジョブでは null ではありません。ワーカーは、自身のプールの ready queue から次に実行するジョブを取り出します。実行可能状態のジョブが複数ある場合は、ready_seqno の値が最も小さいジョブが選ばれます。
  • waiters (UInt64) - このジョブを待機しているスレッド数。
  • exception (Nullable(String)) - 失敗したジョブおよびキャンセルされたジョブでは null ではありません。クエリ実行中に発生したエラーメッセージ、またはこのジョブのキャンセルにつながったエラーを、ジョブ名の依存関係失敗チェーンとともに保持します。
ジョブのライフタイム中の各時点:
  • schedule_time (DateTime64) - ジョブが作成され、実行するようスケジュールされた時刻 (通常はそのすべての依存関係とともに) 。
  • enqueue_time (Nullable(DateTime64)) - ジョブが実行可能状態になり、そのプールの ready queue にエンキューされた時刻。ジョブがまだ実行可能状態でない場合は Null です。
  • start_time (Nullable(DateTime64)) - ワーカーが ready queue からジョブをデキューし、実行を開始した時刻。ジョブがまだ開始されていない場合は Null です。
  • finish_time (Nullable(DateTime64)) - ジョブの実行が完了した時刻。ジョブがまだ完了していない場合は Null です。

SELECT *
FROM system.asynchronous_loader
LIMIT 1
FORMAT Vertical
最終更新日 2026年6月10日