カテゴリ:

システム関数 (システム情報)

SYSTEM$GET_TASK_GRAPH_CONFIG

タスクグラフ 構成から情報を返します。

タスクグラフに構成値を保存する方法については、CREATETASK... CONFIG をご参照ください。

構文

SYSTEM$GET_TASK_GRAPH_CONFIG( [<configuration_path>] )
Copy

引数

configuration_path

Optional path of the configuration value to return.

Uses the same syntax as Snowflake queries for semi-structured data. See GET_PATH for more information.

次の例では、構成を定義してから、SYSTEM$GET_TASK_GRAPH_CONFIG 関数を使用して構成から値を取得するタスクを作成します。

CREATE OR REPLACE TASK root_task_with_config
  WAREHOUSE = mywarehouse
  SCHEDULE = '10 m'
  CONFIG = $${"output_dir": "/temp/test_directory/", "learning_rate": 0.1}$$
  AS
  BEGIN
    LET OUTPUT_DIR STRING := SYSTEM$GET_TASK_GRAPH_CONFIG('output_dir')::string;
    LET LEARNING_RATE DECIMAL := SYSTEM$GET_TASK_GRAPH_CONFIG('learning_rate')::DECIMAL;
    ...
  END;
Copy

例:タスクグラフ内の別のタスクに構成情報を渡す

タスクグラフ内の他のタスクが読み取ることができる JSON オブジェクトを使用して構成情報を渡すことができます。

構文 CREATE/ALTERTASK… CONFIG を使用してルートタスクの構成情報を設定、設定解除、または変更します。次に、SYSTEM$GET_TASK_GRAPH_CONFIG 関数を使用してそれを取得します。

次の例は、JSON オブジェクトを使用して構成情報を渡し、テーブルに保存する方法を示しています。

CREATE OR REPLACE TASK my_task_root
  SCHEDULE = '1 MINUTE'
  USER_TASK_TIMEOUT_MS = 60000
  CONFIG = $${"environment":"production", "dir":"/my_prod_directory/"}$$
  AS SELECT 1;

CREATE OR REPLACE TASK my_child_task
  USER_TASK_TIMEOUT_MS = 600000
  AFTER my_task_root
  AS
    BEGIN
      LET value := (SELECT SYSTEM$GET_TASK_GRAPH_CONFIG('dir'));
      CREATE TABLE IF NOT EXISTS my_table(name VARCHAR, value VARCHAR);
      INSERT INTO my_table VALUES('my_task_root dir',:value);
    END;
Copy