Snowsight でタスクとタスクグラフを表示する¶
タスクを使用すると、 SQL コードの実行をスケジュールできます。タスクは、特定のデータベースとスキーマに関連付けられています。Snowsight を使って、タスクやタスクグラフを表示および管理できます。Snowsight を使えば、タスクやタスクグラフの実行履歴を表示したり、失敗したタスクを再試行したりすることもできます。
このトピックの内容:
個々のタスクを表示して管理する¶
Snowsight でタスクを表示して管理するには、次を行います。
- Snowsight にサインインします。 
- ナビゲーションメニューで Catalog » Database Explorer を選択します。 
- 特定のデータベースとスキーマについては、 Tasks を選択し、管理したいタスクを選択します。 
Snowsight でタスクを表示する際には、次のことができます。
- Details セクションで、タスク ID、タスクが使用するウェアハウス、スケジュール、状態、パラメータ、および条件をレビューします。 
- Task Definition セクションで、タスクの作成に使用された SQL ステートメント、および任意のタスクのグラフ構成をレビューします。 
- タスクに対する権限を管理します。Snowsightでオブジェクトの権限を管理する をご参照ください。 
- ... アクションボタンを選択すると、タスクの編集、タスクのクローン、タスクのドロップ、または別のロールへのタスク所有権の譲渡を行うことができます。 
Snowsight でタスクを編集すると、タスクは自動的に中断され、編集が終わると再開されます。タスクの中断と再開の詳細については、 タスク実行のバージョニング をご参照ください。
タスクグラフの表示と管理¶
タスクグラフをレビューして、ルートタスク、その依存タスク、およびファイナライザータスクをタスクグラフの形式で表示します。タスクグラフの詳細については、 タスクグラフで一連のタスクを作成 をご参照ください。タスクグラフを確認すると、 Snowsight で次のことができます。
- タスク情報を表示する。 
- タスクグラフを確認する。 
- グラフでタスクを選択すると、先行タスク、タスクの実行に使用されたウェアハウス、タスクを所有するロールなどの追加の詳細が表示されます。 
ルートタスクを編集して、タスクグラフのパラメータを変更することもできます。Snowsight でタスクを編集すると、タスクは自動的に中断され、編集が終わると再開されます。タスクの中断と再開の詳細については、 タスク実行のバージョニング をご参照ください。
 
特定のデータベーススキーマのタスクグラフを表示するには、次を実行します。
- Snowsight にサインインします。 
- ナビゲーションメニューで Catalog » Database Explorer を選択します。 
- オブジェクトエクスプローラーを使用して、表示するタスクを含むデータベースとスキーマを見つけます。 
- 選択したスキーマについて、 Tasks を選択します。 
- 特定のタスクを選択します。 - タスクの詳細が表示され、追加の Graph および Run History タブが表示されます。 
- Graph タブを選択して、タスクグラフを表示します。 - タスクグラフが表示され、タスクの階層が表示されます。 
- タスクを選択して、グラフのコンテキストで詳細を表示します。 
注釈
タスク履歴データは、過去7日間にタスクが実行された場合にのみ利用できます。
タスク履歴の表示¶
Snowsight を使用すると、異なる方法でタスクの実行履歴を確認できます。
- アカウントで実行されたすべてのタスクの実行履歴を表示して、たとえば、実行に失敗した重要なタスク、長時間実行されているタスク、またはコストを増加させているタスクを特定します。 
- 特定のタスクの実行履歴を表示して、タスクに関する詳細情報を収集します。 
- タスクグラフの実行履歴を表示して、可観測性とモニターのために、また特定のタスクグラフの問題を特定するために役立てます。 
テーブル関数 TASK_HISTORY またはビュー TASK_HISTORY ビュー を使用して SQL のタスク履歴を確認することもできます。
タスク履歴を表示するために必要な権限¶
Snowsight でタスク履歴を表示するには、 TASK_HISTORY 関数を実行するのに必要な権限と同じ権限が必要です。つまり、タスクで以下のロールまたは権限のいずれかを含むロールを使用する必要があります。
ACCOUNTADMIN ロール。
タスクの OWNERSHIP 権限を持つロール (つまりタスクの所有者)。
タスクに対する MONITOR または OPERATE 権限。
MONITOR EXECUTION グローバル権限。
使用するロールは、Account Usage TASK_HISTORY ビューをクエリできる必要があります。共有SNOWFLAKEデータベースのUSAGE_VIEWERデータベースロールを使用するロールに付与できます。
たとえば、特定のタスク mytask の履歴を表示するには、次の SQL コマンドを実行することで、タスクに OWNERSHIP 権限を、共有 Snowflake データベースに USAGE_VIEWER データベースロールを付与できます。
GRANT OWNERSHIP ON TASK mytask TO ROLE myrole;
GRANT DATABASE ROLE USAGE_VIEWER TO ROLE myrole;
詳細については、以下をご参照ください。
タスクの実行履歴をレビューする¶
タスク実行履歴には、特定のタスクの各実行に関する詳細が含まれます。スケジュールの実行時間、ステータス、戻り値、タスクの所要時間、その他の情報を表示できます。
 
各インスタンスについて、以下を表示できます。
- スケジュールされた実行時間:スケジュールされたタスクが実行された時間。 
- ステータス:タスク実行の直近のステータス。 
- 継続時間:タスクの実行時間(秒)。 
実行履歴を表示するには、
- Snowsight にサインインします。 
- ナビゲーションメニューで Catalog » Database Explorer を選択します。 
- 右側のペインで、オブジェクトエクスプローラーを使用して、データベースとスキーマに移動します。 
- 選択したスキーマについて、 Tasks を選択して展開します。 
- タスクを選択します。Task Details、 Graph、および Run History サブタブを含むタスク情報が表示されます。 
- Run History タブを選択します。 
注釈
タスク履歴データは、過去7日間にタスクが実行された場合にのみ利用できます。
アカウントレベルのタスク履歴をレビューする¶
タスク実行のアカウントレベルの履歴を確認して、失敗したタスク、実行時間の長いタスク、および特定の1つのタスクだけではなく、アカウント全体のその他のモニターとデバッグのケースを特定します。
タスクのアカウントレベルの履歴を表示するには、次を実行します。
- Snowsight にサインインします。 
- ナビゲーションメニューで Transformation » Tasks を選択します。 
- 個別のタスク実行を表示するには、フィルターから View » Task Runs を選択します。 
タスク実行の履歴を選択した後、ページをフィルターして関連情報を表示できます。
- Date Range フィルターを選択して、前日から過去12か月までのタスク履歴、またはカスタム範囲を表示します。 
- Task status フィルターを選択して、 Succeeded、 Failed、 Cancelled、または Skipped などのステータス1つ以上のタスク履歴を表示します。 
- タスクの名前でフィルターして、特定のタスクのステータスまたは期間のパターンを経時的に表示します。 
- タスクを含むデータベースまたはスキーマの名前でフィルターします。 
たとえば、実行時間の長いタスクを識別するには、 Status フィルターを選択して成功したタスクのみを表示し、 Duration フィールドを降順で並べ替えます。高度なデバッグを行うには、 Open in worksheets ボタンを使用して、フィルター済みおよび並べ替え済みのテーブルをワークシートで開くことができます。次に、 LIMIT / FETCH および GROUP BY 引数を使用して SQL ステートメントを変更し、実行時間の長い上位25個のタスクを持つデータベースとスキーマを特定できます。
特定のタスクを選択して、詳細をドリルダウンすることもできます。
タスクグラフ履歴表示¶
タスク履歴ページの表示¶
Task History ページでタスクグラフの実行履歴を確認し、失敗したタスク、長時間実行中のタスク、その他のモニタリングやデバッグのケースを識別します。タスクグラフの履歴を表示します。
注釈
Task History ページでは、特定のロール権限に基づくタスクグラフの実行を表示できます。
タスクグラフの実行を表示するには、以下の手順を実行します。
- Snowsight にサインインします。 
- ナビゲーションメニューで Monitoring » Task History を選択します。   
Task Graphs タブでは、以下のことができます。
- Previous Runs カウンターにカーソルを合わせると、時系列で最新のランのステータスが表示されます。 
- Duration Trend グラフは、最小-最大範囲内の中央線を強調表示することで、(選択された日付範囲に基 づいて)時間の経過とともにタスクの実行時間を視覚化します。これにより、タスク時間が安定しているのか、変動しているのか、トレンドがあるのかを素早く評価し、個々の異常値を特定することができます。 
- グラフの手動実行、ルートタスクの編集(スケジュールやパラメーターの変更など)、グラフの中断/再開には、省略記号メニューを使用します。 
ページをフィルターして関連情報を表示することができます。大容量アカウントのロード時間を短縮するために、データベースとスキーマでフィルターをかけることをお勧めします。
- 過去7日間のタスク履歴を表示するには、 Date Range フィルターを選択します(デフォルト設定)。1日に変更できます。日付範囲フィルターは、前回のランカウンターとランタイム期間のトレンドにのみ適用されることに注意してください。 
- Last Run Status フィルターを選択すると、 Succeeded、 Failed、 Canceled、 Skipped など、直近の実行における1つまたは複数のステータスのタスクグラフが表示されます。このフィルターはタスクグラフの最新の完了した実行にのみ適用されます。 
- タスクを含むデータベースまたはスキーマの名前でフィルターをかけます。 
- 検索フィールドを使ってルートタスク名でフィルターをかけます。 
また、特定のタスクグラフを選択して、ドリルダウンして詳細を確認することもできます。
タスクグラフを選択すると、常に最新の実行の詳細が表示されます。以前のランの詳細を見たい場合は、特定のグラフランページで Open previous runs を選択します。
タスクオブジェクトページからのタスクグラフへのアクセス¶
このプレビューでは、タスクがタスクグラフの一部である場合、特定のラン履歴ページから Task Graph ページにアクセスすることもできます。
- Snowsight にサインインします。 
- Data » Databases を選択します。 
- 右側のペインで、オブジェクトエクスプローラーを使用して、データベースとスキーマに移動します。 
- 選択したスキーマについて、 Tasks を選択して展開します。 
- タスクを選択します。Task Details、 Graph、および Run History サブタブを含むタスク情報が表示されます。 
- Run History タブを選択します。 
- タスクがタスクグラフに関連付けられている場合、 Task の隣に Task Graph タブがあります。 - タスクグラフの詳細を表示するには、 Task Graph を選択します。   
考慮事項と制約¶
- この関数でタスクグラフを表示するには、以下の権限の少なくとも1つを持つロールが必要です。 - タスクに対する OWNERSHIP 権限(つまりタスク所有者)。 
- タスクに対する MONITOR または OPERATE 権限。 
- MONITOR EXECUTION グローバル権限。 
- ACCOUNTADMIN ロール。 
 - ロールにはタスクを格納するデータベースとスキーマの USAGE 権限も必要です。そうでない場合、出力の DATABASE_NAME と SCHEMA_NAME の値は NULL になります。 
失敗したタスクの再試行¶
Snowsight では、以前のタスク実行の試行回数、再試行の失敗およびキャンセルされたタスクのグラフを見ることができます。失敗したタスクやキャンセルされたタスクを再試行するには、タスクに対する OPERATE 権限が必要です。以前のタスク実行の試行を表示するには、 タスク履歴を表示する のと同じ権限も必要です。
これは特に、データワークフローやパイプラインがプロセス全体を再起動することなく正常に完了し、時間とリソースを節約するのに役立ちます。
Snowflakeは、自動再試行と手動再試行の両方のメカニズムをサポートしています。
- 自動再試行:失敗したタスクは、ルートタスクレベルでセットされた定義済みのパラメーターに基づいて、失敗直後に自動的に再試行されます。 
- 手動再試行:自動再試行で問題が解決しない場合、失敗またはキャンセルされたタスクは、最新のグラフ実行から14日以内であれば手動で再試行できます。 
新規実行の代わりにリトライを使用することは、すでに成功したタスクやスキップしたタスクを再実行することなく、途中で失敗したグラフを完成させるのに特に役立ちます。これにより、失敗したタスクだけが再試行され、冗長性が最小限に抑えられます。
注釈
- グラフを再試行できるのは、前回の実行以降に再作成や変更が行われていない場合のみです。 
- 失敗したタスクやキャンセルされたタスクを再試行するには、そのタスクに OWNERSHIP または OPERATE 権限が必要です。以前のタスク実行の試行を表示するには、 タスク履歴を表示する のと同じ権限も必要です。 
失敗したタスクやキャンセルされたタスクを手動で再試行するには、以下の手順を実行します。タスクグラフの表示 プレビュー機能が有効な場合のみ、以下の手順が機能します。
- Snowsight にサインインします。 
- ナビゲーションメニューで Catalog » Database Explorer を選択します。 
- 右側のペインで、オブジェクトエクスプローラーを使用して、データベースとスキーマに移動します。 
- 選択したスキーマについて、 Tasks を選択して展開します。 
- タスクを選択します。Task Details、 Graph、および Run History サブタブを含むタスク情報が表示されます。 
- Run History タブを選択します。 
- Run History ページで、 Task Graph を選択します。 
- タスクグラフの実行詳細ページで、失敗またはキャンセルされたタスクグラフを開きます。 
- 失敗したタスクを手動で再試行するには、 Retry を選択します。 - 再試行は、グラフ内の失敗したタスクとキャンセルされたタスクのみを開始し、すでに成功したタスクは再実行しません。 ![特定のタスクグラフ実行の詳細ページで、[再試行] を選択して、失敗したすべてのタスクグラフ実行を手動で再試行することができます。](../_images/ui-retry-failed-tasks.png)  
- ページを更新するには、更新ボタンを選択します。失敗した試行は、アカウントレベルのタスクグラフの実行詳細に表示されます。 アカウントレベルのタスク実行履歴とタスクグラフの実行履歴は、45分の遅延で最新の試行のステータスを表示します。   
- 失敗した試行は、オブジェクトレベルのタスク履歴にも表示されます。タスクの実行履歴を表示する手順 に従ってください。最新の実行の試行が表示されます。タスクを実行しようとするすべての試行は、同じ実行 ID になります。 
過去に失敗またはキャンセルされた試行は、実行ステータスの横に表示されます。タスクを選択して、各試行のスケジュールされたタイムスタンプ、ステータス、エラーメッセージを見ることができます。
注釈
以下のいずれかに該当する場合、 Retry アクションは無効になります。
- 再試行がすでに進行中である。 
- 選択された実行は最新の実行ではない。 
- タスクグラフが実行後に修正された。 
- 実行が14日より長い。 
グラフ内のタスクが失敗またはキャンセルされなかった場合、 Retry アクションは利用できません。

