問題タブ [airflow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 毎日特定の時間に実行するように Airflow dag を構成するにはどうすればよいですか?
何が起こっても、毎日指定された時間に実行するように Airflow ダグを構成する方法、まさに cron のようなもの。
TimeSensor を使用して同様の動作が得られることはわかっていますが、この場合はセンサー タスクに依存し、dag の実行時間と競合する可能性があります。
例: センサー アプローチでは、0 時 15 分に実行するセンサーがありますが、dag が後で実行されるとタスクが遅延するため、センサー アプローチであっても、Dag が適切な時間に実行されるようにする必要があります。
では、指定された時間に Dag が実行されるようにするにはどうすればよいでしょうか?
python - Airflow cron 式が DAG を適切にスケジュールしていない
cron のセットアップ中に他の機能を使用できるように、Airflow を cron として使用することを検討しています。
のように cron を設定して、その機能をテストしていました
"2,3,5,8, * * * *"
。特定の日付が毎時 2、3、5、8 分にスケジュールされることを期待していました。ただし、実際には 2 分のダグは 3 番目に実行され、3 番目は 5 番目に実行され、5 番目は 8 番目に実行されます。そして8日目は全く実行されません。次の1時間の2分に8番目に実行されると思います。
エアフローの cron 式の何らかのバグまたは処理されていないケースのように見えます。
airflow - 正しく動作する方法 airflow schedule_interval
Cron の代わりに Airflow を使用してみます。しかし、schedule_interval は期待どおりに機能しません。
以下のようなPythonコードを書きました。
私の理解では、Airflow は「2016/03/30 8:15:00」に実行されるべきでしたが、その時点では機能しませんでした。
「'schedule_interval': timedelta(minutes = 5)」のように変更すると、正しく動作したと思います。
「notice_slack.sh」は、自分のチャンネルに slack api を呼び出すためのものです。
この cron 設定のように、毎日特定の時間にいくつかのスクリプトを実行したいと考えています。
Scheduling & Triggersというドキュメントを読んだことがありますが、cron とは少し異なります。
そこで、「start_date」と「schedule_interval」の設定で並べてみます。
誰が私が何をすべきか知っていますか?
気流バージョン
INFO - エグゼキュータ LocalExecutor の使用
v1.7.0
amazon-linux-ami/2015.09-リリースノート
celery - Airflow: CeleryExecutor を使用する場合と MesosExecutor を使用する場合
私は Airflow にかなり慣れていないので、(aws の) 環境でどのようにセットアップすればよいかを理解しようとしています。
Airflow が redis ブローカーで Celery を使用しているのを読みました。メソスとどう違うの?Celery を使用したことはありませんが、開発マシンに celery-redis をセットアップしようとしたところ、簡単に動作しました。ただし、新しいコンポーネントを追加するということは、監視を追加することを意味します。
クラスター管理に既に mesos を使用しているため、セロリを選択せずに代わりに MesosExecutor を使用した場合、何が欠けているのかを考えようとしています。
airflow - CeleryExecutor と連携するように Airflow を構成する
次のように CeleryExecutor を使用するように Airbnb AirFlow を構成しようとしています。
executer
airflow.cfg の を からSequentialExecutor
に変更しましたCeleryExecutor
。
しかし、次のエラーが表示されます。
sql_alchemy_conn
は次のように構成されていることに注意してください。
Airflow の GIT を見てみました ( https://github.com/airbnb/airflow/blob/master/airflow/configuration.py )
次のコードがこの例外をスローすることがわかりました。
このvalidate
メソッドから、 に を含めることはsql_alchemy_conn
できないようsqlite
です。
CeleryExecutor
sqllite なしでを構成する方法を知っていますか? 必要に応じて、CeleryExecuter を操作するために rabitMQ をダウンロードしたことに注意してください。