Airflow Operators. Операторы в Airflow
ฝัง
- เผยแพร่เมื่อ 26 มิ.ย. 2024
- Рассказываю про примеры использования PythonOperator, BashOperator и PostgresOperator
Другие видео уроки по Airflow и не только plastic-caption-0a9.notion.si...
Тг канал t.me/datamisha
* Параметр dag в операторы передавать не нужно
Привет, Михаил! Спасибо за видео!
Чуть не понял одного: есть операторы для Airflow, которые умеют в SQL. Но я думал, что все операции мы выполняем уже внутри таска, например, Load, где мы пишем логику:
1) Получаем данные из предыдущего таска (например, таска Transform)
2) Предположим, мы хотим, чтобы при повторном запуске записи за предыдущий день затирались, вместо которых загружались новые (типичная инкрементная загрузка). Получается, что в таске Load прописывается "DELETE FROM schm.table where dt = :date_to_delete" и там же прописывается with engine.connect() as conn: и так далее, которое по пути удаляет записи и загружает командой df.to_sql(.. .. .. ..).
Я к тому, что для чего в этом случае нужны именно что отдельные sql-таски, если база является, по сути, просто конечной точкой?
И хотелось бы видео про способы передачи данных между тасками. Хуки, файлы и так далее.
Спасибо! :)
Привет!
По поводу передачи файлов: по xcom есть видео на бусти boosty.to/nodata_misha/posts/a56f75f2-02e4-4eac-a6d5-a8c67f59aaee но возможно что-то и на ютуб выпущу
Не много не понял по вашему комментарию, но если я правильно понял, то можно например сделать так:
В первой таске Получаем данные и передаем их во вторую таску, которая может как раз является Postgres оператором, в который мы просто передаем 2 sql кода (удаляем вчерашние, загружаем сегодняшние), можно наверное даже в одном передать