2017-07-25 5 views
0

私はthis questionのように設定されたタスクを持っています。それは、依存関係のように見えるUIに基づいてまだすべてのタスクをエアフローと並行して実行できません

は、明確に定義されている:

enter image description here

次のように私は、個々のタスクをテストした:airflow test capone_dash_preproc AAAG5608078M2 2017-07-25を。これは素晴らしい、そのユーザーに対応するターゲットデータベースのエントリを更新します。しかし、私が完全なタスクを実行しようとすると、ハングアップしているようです。 python3 dash_dag.pyは、基本的にWebサーバー上に以下の端末出力をもたらし、無限に繰り返されます。すべてのCPUは静かなので、起こって多くの計算がありますようにそれはいないようです:

/usr/local/lib/python3.6/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.cache is deprecated, use flask_cache instead. 
    .format(x=modname), ExtDeprecationWarning 
[2017-07-25 16:48:23,266] [58627] {models.py:167} INFO - Filling up the DagBag from /Users/aaronpolhamus/airflow/dags 
[2017-07-25 16:48:25 -0500] [58487] [INFO] Handling signal: ttou 
[2017-07-25 16:49:13 -0500] [58557] [INFO] Worker exiting (pid: 58557) 
[2017-07-25 16:49:44 -0500] [58487] [INFO] Handling signal: ttin 
[2017-07-25 16:49:44 -0500] [58642] [INFO] Booting worker with pid: 58642 
/usr/local/lib/python3.6/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.cache is deprecated, use flask_cache instead. 
    .format(x=modname), ExtDeprecationWarning 
[2017-07-25 16:49:44,607] [58642] {models.py:167} INFO - Filling up the DagBag from /Users/aaronpolhamus/airflow/dags 
[2017-07-25 16:49:46 -0500] [58487] [INFO] Handling signal: ttou 
[2017-07-25 16:50:21 -0500] [58568] [INFO] Worker exiting (pid: 58568) 
[2017-07-25 16:50:51 -0500] [58487] [INFO] Handling signal: ttin 
[2017-07-25 16:50:51 -0500] [58661] [INFO] Booting worker with pid: 58661 
/usr/local/lib/python3.6/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.cache is deprecated, use flask_cache instead. 
    .format(x=modname), ExtDeprecationWarning 
[2017-07-25 16:50:52,324] [58661] {models.py:167} INFO - Filling up the DagBag from /Users/aaronpolhamus/airflow/dags 
[2017-07-25 16:50:54 -0500] [58487] [INFO] Handling signal: ttou 
[2017-07-25 16:51:20 -0500] [58596] [INFO] Worker exiting (pid: 58596) 
[2017-07-25 16:51:50 -0500] [58487] [INFO] Handling signal: ttin 
[2017-07-25 16:51:50 -0500] [58677] [INFO] Booting worker with pid: 58677 
... 

私の混乱は、個々のテストはうまく実行してデータベースにデータを入力するという事実から生じます。それはハングして失敗する全体の実行です。何でもここに明白?

+1

あるあなたはまだ、@Chengzhiこんにちはcapone_dash_preproc -s YYYYMMDD -e YYYYMMDD' – Chengzhi

+0

気流埋め戻し 'のようなものを試してみました。なぜそれが問題を解決する可能性がありますか?私はまだ実行しようとしていない日付のためにこれを行う必要がありますか? – Aaron

+0

ねえ、@アーロン、スケジューラに依存しないので、すべてのタスクを実行できるかどうかテストできます。実行したタスクをクリアしてからバックフィルすることもできます。 – Chengzhi

答えて

1

複数のコンポーネントの気流が存在します。スケジューラー、Webサーバー、ワーカー(水平スケーリングの場合)が最も重要です。 Airflowにタスクを実行させるには、スケジューラが常に実行されている必要があります。 Webサーバーは、スケジューラーがやっていることと、Rest APIの上に素敵なUIを提供するためだけにあります。すべてのコンポーネントがバッキングデータベースを使用します。

スケジューラの出力が表示されるはずですが、Webサーバーの出力が表示されています。あなたが投稿したスクリーンショットとDAGを実行する方法から、私の前提はあなたがそれを開始しなかったことです。

コマンドラインでairflow schedulerを発行してスケジューラを起動すると、おそらくDAGが起動します。

*バックフィルは例外

+0

は理にかなっています。私はこの提案を数時間後に試し、あなたの答えを選ぶために戻ってきます。乾杯! – Aaron

+0

それは、ありがとうございました。簡単な質問(私がドキュメントから得ることができると知っている):一度に並行して実行されるタスクの数を制御するにはどうすればよいですか?私はこれをやったときに私のコンピュータをほとんど爆破した、笑 – Aaron

関連する問題