- カテゴリ:
システム関数 (システム情報)
SYSTEM$LOCATE_DBT_ARCHIVE¶
指定されたdbtプロジェクトのzipされたdbt実行アーティファクトを取得できる URL を返します。
この関数を DBT_PROJECT_EXECUTION_HISTORY 関数と組み合わせて使用し、プログラムでdbtのアーティファクトとログにアクセスします。
構文¶
SYSTEM$LOCATE_DBT_ARCHIVE ( '<query_id>' )
引数¶
query_idファイルを検索するdbtプロジェクト実行のクエリ ID。
戻り値¶
この関数は指定されたdbtプロジェクトの結果の圧縮されたコンテンツを取得できる URL を返します。
詳細と例については、プログラムでdbtのアーティファクトとログにアクセスする をご参照ください。
アクセス制御の要件¶
この関数には、以下の権限があるワークスペースおよびdbtプロジェクトからの実行のみが含まれます。
ワークスペースに対する OWNERSHIP または USAGE 権限
dbtプロジェクトに対する OWNERSHIP、USAGE または MONITOR 権限
スキーマ内のオブジェクトに対して操作を実行するには、親データベースとスキーマに対する USAGE 権限が必要です。スキーマに対する 任意の権限を付与されたロールは、そのロールがスキーマを解決できることに注意してください。たとえば、スキーマに対するCREATE権限を付与されたロールは、そのスキーマにオブジェクトを作成できますが、そのスキーマに対するUSAGE*も*付与されている必要はありません。
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
使用上の注意¶
このシステム関数はdbtプロジェクトオブジェクトでのみ動作します。ワークスペースでは利用できません。
CREATEDBTPROJECT または ALTERDBTPROJECT ... ADDVERSION で生成されたクエリ IDs はこのシステム関数ではサポートされていません。
ファイルコンテンツの直接クエリ(例: クエリの例)はサポートされていません。
query_idが NULL またはdbt実行中でない場合は、エラーが発生します。dbtプロジェクトの結果は、最大14日間利用可能です。
実行がタイムアウトしたり、キャンセルされたり、アップロード前に失敗した場合は、ファイルを使用できない可能性があります。このような場合、実行はdbt履歴に
UNHANDLED ERRORのように表示されます。ログファイルは実行が完了した後にのみ利用可能になるため、この関数を使用して進行中の実行のログを取得することはできません。
例¶
次の例は、指定された実行のzip化されたアーティファクト snow://`URL(例: :code:`dbt_artifacts.zip)を返します。
この URL を GET で使用すると、ZIP ファイルをダウンロードできます(または COPYFILES を使用して、自分のステージに移動します)ZIP の代わりにフォルダーパスの場合、 SYSTEM$LOCATE_DBT_ARTIFACTS を使用します。
SELECT SYSTEM$LOCATE_DBT_ARCHIVE($latest_query_id);
詳細については、 プログラムでdbtのアーティファクトとログにアクセスする をご参照ください。