正如您在代码示例中看到的那样,我正在尝试通过 Airflow DAG 任务将 session_parameters 传递给我的 Snowflake 连接,但该参数没有被拾取,有什么解决方案吗?
task = SnowflakeOperator(
task_id='Task',
sql="CREATE OR REPLACE TABLE MY_DB.MY_SCHEMA.MY_TABLE (test VARCHAR)",
session_parameters={
"QUERY_TAG": "my_tag"
},
snowflake_conn_id="snowflake_connection",
warehouse="MY_WH",
dag=dag,
)
答案 0 :(得分:2)
您可能使用的是过时版本的雪花运算符。 在 PR
中添加了对session_parameters
的支持
对于 Airflow<2.0.0
,您需要:
pip install apache-airflow-backport-providers-snowflake>='2020.11.23'
对于 Airflow>=2.0.0
,您需要:
pip install apache-airflow-providers-snowflake
然后您可以将您的代码用作:
from airflow.providers.snowflake.operators.snowflake import SnowflakeOperator
task = SnowflakeOperator(
task_id='Task',
sql="CREATE OR REPLACE TABLE MY_DB.MY_SCHEMA.MY_TABLE (test VARCHAR)",
session_parameters={
"QUERY_TAG": "my_tag"
},
snowflake_conn_id="snowflake_connection",
warehouse="MY_WH",
dag=dag,
)