動的テーブルの状態

動的テーブルは、そのライフサイクル中、複数の状態のいずれかになる可能性があります。次のテーブルでは、さまざまな動的テーブルのライフサイクルの状態について説明します。

状態

スケジューリング状態

説明

リフレッシュ状態

中断の理由コード

INITIALIZING

RUNNING

Snowflakeは動的テーブルを初期化し、最初のリフレッシュをスケジュールしています。 動的テーブルの初期化中に実行されたクエリ もご参照ください。

まだリフレッシュされていません

ACTIVE

RUNNING

動的テーブルリフレッシュは正常に実行されています。

成功しました

ACTIVE

RUNNING

最後のリフレッシュはスキップされました。今後のリフレッシュは通常のレートで行われます。リフレッシュがスキップされるのを防ぐために、ターゲットラグとウェアハウスのサイズを変更します。

SKIPPED

IMPACTED

RUNNING

リフレッシュできません。上流の動的テーブルの1つ以上がリフレッシュに失敗しました。上流の問題が修正されると、リフレッシュは自動的に再開されます。

SKIPPED

IMPACTED

SUSPENDED

上流の動的テーブルが中断しているため、スキップされました。上流の動的テーブルが再開されると、リフレッシュは自動的に再開されます。

UPSTREAM_SUSPENDED

SUSPENDED

SUSPENDED

動的テーブルが手動で中断されたため、スキップされました。動的テーブルが手動で再開されると、リフレッシュは自動的に再開されます。

USER_SUSPENDED

SUSPENDED

SUSPENDED

以前に FAILING/SUSPENDED の動的テーブルが手動で正常にリフレッシュされました。動的テーブルは手動で再開する必要があります。

SUSPENDED_DUE_TO_ERRORS

FAILING

RUNNING

前回のリフレッシュ時に、動的テーブル定義が無効になったり、インフラストラクチャの一時的な問題が発生したりしたなどのエラーが発生しました。追加のリフレッシュは、通常のリフレッシュ間隔で試みられます。

FAILED または CANCELLED

FAILING

SUSPENDED

過去5回のリフレッシュに失敗しました。動的テーブルは自動中断され、手動で再開するまでリフレッシュされません。

SUSPENDED_DUE_TO_ERRORS

動的テーブルの初期化中に実行されるクエリ

注釈

動的テーブルの初期化に対するクエリはエラーを返します。

このようなエラーを回避するには、次回の定期リフレッシュを待つか、 ALTER DYNAMIC TABLE コマンドを使用して手動リフレッシュを実行します。

中断の理由コード

コード

説明

USER_SUSPENDED

ユーザーにより、動的テーブルが中断されました。

UPSTREAM_SUSPENDED

入力の一部が中断されたために動的テーブルが中断されました。

SUSPENDED_DUE_TO_ERRORS

5回連続してエラーが発生したため、動的テーブルが中断しました。

注釈

連続で5回以上のリフレッシュエラーが発生した場合、動的テーブルは中断されます。リフレッシュエラーによって中断された動的テーブルは、ユーザーのアクションではなくシステムによって中断されるため、一般的に 自動中断 と呼ばれます。

他の動的テーブルが中断された動的テーブルに依存している場合は、それらも中断されます。SCHEDULING_STATE は動的テーブルの現在の状態を説明します。

  • 動的テーブルのスケジューリング状態を表示するには、 DYNAMIC_TABLE_GRAPH_HISTORY テーブル関数を呼び出し、 SCHEDULING_STATE 列を調べます。

注釈

リフレッシュエラーが5回続くと、動的テーブルは中断されます。リフレッシュエラーによって中断される動的テーブルは、ユーザーのアクションではなくシステムによって中断されるため、一般的に 自動中断 と呼ばれます。

中断された動的テーブルに依存する動的テーブルも中断されます。SCHEDULING_STATE は動的テーブルの現在の状態を説明します。

  • 動的テーブルのスケジューリング状態を表示するには、 DYNAMIC_TABLE_GRAPH_HISTORY テーブル関数を呼び出し、 SCHEDULING_STATE 列を調べます。