Airflow1.10.15中BigQueryToCloudStorageOperator导出参数无法覆盖默认值
问题根因
你使用的两个配置参数名与当前依赖版本不匹配:field_delimiter、print_header是后续版本Google provider包更新后统一使用的蛇形命名参数,在apache-airflow-backport-providers-google==2021.3.3、Airflow 1.10.15的版本体系中,该Operator的导出配置参数直接沿用BQ API的驼峰命名规则,没有做蛇形到驼峰的自动映射,你传入的蛇形参数会被直接忽略,导致配置不生效。
同时你当前代码中field_delimiter设置为空值不符合BQ导出要求,BQ CSV导出不允许使用空分隔符,需要替换为实际使用的分隔符(如|、\t等)。
修正后的配置代码
export_to_gcs_op = BigQueryToCloudStorageOperator( task_id=f'bq_transfer_{TABLE}_to_gcs', source_project_dataset_table=f'{PROJECT_ID}.{DATASET}.{TABLE}', export_format='csv', fieldDelimiter='替换为实际需要的自定义分隔符', printHeader=False, destination_cloud_storage_uris=[f"gs://{GCS_BUCKET}/{TABLE}.csv"], )
内容的提问来源于stack exchange,提问作者MStikh
相关产品推荐
相关产品推荐

