Airflow 气流调度问题
上次我忘了包括Airflow 气流调度问题,airflow,Airflow,上次我忘了包括codesamples,重新发布 我在尝试设置气流时遇到了一些问题。我一直在尝试使用一个简单的SQL脚本来遵循一个非常基本的DAG设置。我遇到了三个问题: 我能够运行一个基本的DAG(我可以在GUI中看到DAG及其运行对数据库的影响),但似乎DAG不考虑schedule\u interval参数。我试图让DAG每小时运行一次,但无论我做了什么更改,DAG都会按照每天的计划运行,这也反映在我从GUI中看到的内容中 此外,如果将DAG作为计划运行的一部分运行,则尽管DAG能够顺利运行其
code
samples,重新发布
我在尝试设置气流时遇到了一些问题。我一直在尝试使用一个简单的SQL
脚本来遵循一个非常基本的DAG设置。我遇到了三个问题:
DAG
(我可以在GUI中看到DAG
及其运行对数据库的影响),但似乎DAG
不考虑schedule\u interval
参数。我试图让DAG
每小时运行一次,但无论我做了什么更改,DAG
都会按照每天的计划运行,这也反映在我从GUI中看到的内容中DAG
作为计划运行的一部分运行,则尽管DAG
能够顺利运行其单个任务,但我在手动执行DAG
时所做的每一次尝试都失败。我不知道为什么会这样start\u date
和schedule\u interval
时,我一直在重命名DAG\u id
,因为这似乎是一种推荐做法。这有时会触发回填的DAG
执行,但这些回填的作业也总是失败donot\u pickle=True
。我非常感谢任何人能在上述三个问题上提供任何帮助,因为到目前为止,我似乎无法理解这些问题
气流:
from airflow import DAG
from airflow.operators.dummy_operator import DummyOperator
from airflow.operators.postgres_operator import PostgresOperator
from datetime import datetime, timedelta
DEFAULT_ARGS = {
'description': 'For now, a test DAG',
'start_date': datetime(2018, 7, 19),
'schedule_interval': "@hourly",
'end_date': None,
'owner': 'airflow', #placeholder
'retries': 3,
}
dag = DAG(
dag_id='test',
default_args = DEFAULT_ARGS,
)
test_redshift_op = PostgresOperator(
task_id = 'test_redshift_op',
sql = 'test.sql',
postgres_conn_id = 'redshift',
dag = dag
)
test_redshift_op
SQL:
1) schedule\u interval
不是default\u args
的一部分。出于好奇-代码示例来自哪里<代码>计划间隔是DAG
定义的一部分:
dag = DAG(
dag_id='test',
default_args = DEFAULT_ARGS,
schedule_interval = '@hourly',
)
对于2)和3)给出了出现问题的情况,但未指定出现问题的原因。可能的副本不需要重新发布。请根据需要编辑问题。2)我每次手动执行DAG的尝试都失败了。怎么做?3)这些倒装的工作也总是失败。怎么做?请包括更多信息,如堆栈跟踪或您正在获取的特定错误,以及日志信息。@PaulCrovella我已将另一个标记为此的副本,因为这一个已进一步发展。感谢您对所有歧义的容忍。当我将参数添加到适当的对象时,上面提到的所有问题实际上都得到了解决。
dag = DAG(
dag_id='test',
default_args = DEFAULT_ARGS,
schedule_interval = '@hourly',
)