Oracle 气流预言操作员
我对Oracle 气流预言操作员,oracle,airflow,operator-keyword,Oracle,Airflow,Operator Keyword,我对Airflow非常陌生,我正在尝试使用Oracle操作符执行我的第一个DAG。然而,我得到的错误如下 “无效语法”以及“异常:找不到dag_id。dag不存在或无法分析” 我已经把我的dag放在了example_dag存在的同一个位置(/usr/lib/python2.7/site packages/aiffair/example_dags/my_dag.py),但不知为什么它没有显示在UI中,所以我尝试通过给出下面的命令来执行 airflow run example_sql_dag tas
Airflow
非常陌生,我正在尝试使用Oracle
操作符执行我的第一个DAG
。然而,我得到的错误如下
“无效语法”以及“异常:找不到dag_id。dag不存在或无法分析”
我已经把我的dag
放在了example_dag存在的同一个位置(/usr/lib/python2.7/site packages/aiffair/example_dags/my_dag.py)
,但不知为什么它没有显示在UI中,所以我尝试通过给出下面的命令来执行
airflow run example_sql_dag task_sql 2020-1-17
以下是我的oracle dag的代码:
from datetime import datetime,timedelta
import airflow
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from airflow.operators.oracle_operator import OracleOperator
default_args = {
'owner': 'Airflow',
'depends_on_past': False,
'start_date': airflow.utils.dates.days_ago(2),
'start_date': datetime(2020,01,17),
'email': ['airflow@example.com'],
'email_on_failure': False,
'email_on_retry': False,
'retries': 0,
'retry_delay': timedelta(minutes=5)
}
with DAG('example_sql_dag',
default_args=default_args,
catchup=False,
schedule_interval='*/10 * * * *'
) as dag:
opr_sql = OracleOperator(task_id='task_sql',
oracle_conn_id='Oracle_schema'
sql= 'insert into table1 (a,b,c)values (1,2,3)',
autocommit ='True')
编辑:我试图直接执行Python文件,方法是转到保存该文件的位置,并执行以下操作:./my_dag.py
但还是没有运气。这一次我得到了命令未找到错误。可能脚本有问题。在DAG定义中的oracle\u conn\u id
和sql
参数之间缺少“,”。
尝试:
opr_sql = OracleOperator(
task_id='task_sql',
oracle_conn_id='Oracle_schema',
sql= 'insert into table1 (a,b,c) values (1,2,3)',
autocommit ='True')