パラメーター付きノートブックの実行¶
現在、 ARGUMENTS 文字列で渡されるパラメーターは、区切り文字として空白を使用した sys.argv リストに解析されます。
例:パラメーターでノートブックプロジェクトを実行します。¶
次の例では、 ARGUMENTS = 'env prod' を使用して2つの引数(envとprod)を渡します。
最初の要素( sys.argv[0] )はノートブックのファイル名で、その後にスペース区切りの引数が続きます。
EXECUTE NOTEBOOK PROJECT "<database_name>"."<schema_name>"."<project_name>"
MAIN_FILE = 'snow://workspace/<workspace_hash>/path/to/notebook.ipynb' -- Notebook name with full file path
COMPUTE_POOL = '<compute_pool_name>'
RUNTIME = '<runtime_version>' -- For example, V2.2-CPU-PY3.11
QUERY_WAREHOUSE = '<warehouse_name>'
ARGUMENTS = 'env prod' -- Can pass in a single string, which can be parsed in the notebook code. Point to the environment configuration.
REQUIREMENTS_FILE = 'path/to/requirements.txt';
すべての引数を表示する¶
セッションに渡されたパラメーターの完全なリストを検査するには、 sys モジュールを使用します。
import sys
print(sys.argv)
出力例:
['exampletestSCOS.ipynb', 'env', 'prod']
各引数を出力する¶
各パラメーターを個別に処理またはログに記録するには、 sys.argv リストをループ処理します。
import sys
for arg in sys.argv:
print(arg)
出力例:
exampletestSCOS.ipynb
env
prod
特定の引数にアクセスする¶
パラメーターは、リストのインデックスからアクセスされます。sys.argv[0] はノートブック名であるため、最初のユーザーパラメーターは index[1] で始まります。
import sys
# Access the first user parameter
first_param = sys.argv[1]
print(first_param)
出力例:
env
完全な構文とパラメーターの詳細については、 EXECUTE NOTEBOOK PROJECT を参照してください。