首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用S3ToRedshiftOperator截断红移表时出错

使用S3ToRedshiftOperator截断红移表时出错
EN

Stack Overflow用户
提问于 2022-01-05 20:28:18
回答 1查看 369关注 0票数 1

在将CSV文件加载到Redshift表之前,我希望截断我的Redshift表。

错误: airflow.exceptions.AirflowException:无效参数被传递给S3ToRedshiftOperator (task_id: dag_run_s3_to_redshift)。无效的参数是:**kwargs:{‘方法’:‘替换’}

代码下面的

代码语言:javascript
复制
task_fail_s3_to_redshift =  S3ToRedshiftOperator(
        s3_bucket=S3_BUCKET,
        s3_key="{{ti.xcom_pull(task_ids='export_db',key='FILE_PATH_1')}}",
        schema="dw_stage",
        table="task_fail",
        copy_options=['csv',"IGNOREHEADER 1"],
        redshift_conn_id='redshift',
        method='REPLACE',
        task_id='task_fail_s3_to_redshift',
    ) 

 start >> task_fail_s3_to_redshift >> end 
EN

Stack Overflow用户

回答已采纳

发布于 2022-01-05 20:40:18

method参数是在按下中添加的,如下所示:

代码语言:javascript
复制
apache-airflow-providers-amazon >= 2.4.0

您所遇到的错误意味着您使用的是较早版本的amazon提供者,这就是为什么它对您无效的原因。

你的选择是:

1.升级提供程序

代码语言:javascript
复制
pip install apache-airflow-providers-amazon --upgrade

2.如果升级不是选项,则使用不推荐的truncate_table参数:

代码语言:javascript
复制
task_fail_s3_to_redshift =  S3ToRedshiftOperator(
        s3_bucket=S3_BUCKET,
        s3_key="{{ti.xcom_pull(task_ids='export_db',key='FILE_PATH_1')}}",
        schema="dw_stage",
        table="task_fail",
        copy_options=['csv',"IGNOREHEADER 1"],
        redshift_conn_id='redshift',
        truncate_table=True,
        task_id='task_fail_s3_to_redshift',
    ) 

因为你想要截断选项-它会给你同样的功能。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70599221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档