【发布时间】:2021-03-17 05:58:01
【问题描述】:
我的目标是在 GCS 中存储 sql 代码,并使用 Bigquery Operator 传递给我的日常 ETL 流程的“sql”参数。
我的错误是
Exception: BigQuery job failed. Final error was: {'reason': 'invalidQuery', 'location': 'query', 'message': 'Syntax error: Expected end of input but got "/" at [1:1]'}
我目前遇到的问题是sql代码,很简单
Select *
FROM
table
将换行符 /n 作为 sql 文件的一部分读取,因此它作为无效查询失败。当我在python中读取sql文件时,读取如下
'SELECT * \nFROM \n `table` as test\n'
我的任务如下
t1 = BigQueryOperator(
task_id='bigquery_test',
sql= '/home/airflow/.../filename.sql ',
destination_dataset_table = destination_table,
write_disposition='WRITE_TRUNCATE',
use_legacy_sql=False,
dag=dag,
)
我假设这与 sql 参数在气流中的设置方式有关,但我无法完全理解解决此问题所需要做的事情。
非常感谢任何帮助。
【问题讨论】:
标签: python google-bigquery airflow