Size: a a a

2021 March 03

VS

Vladislav 👻 Shishkov... in Airflow
так в чем проблема то?
источник

VS

Vladislav 👻 Shishkov... in Airflow
или вопрос меппинга только касался?
источник

VS

Vladislav 👻 Shishkov... in Airflow
Держи, может поможет:

#airflow_webserver_rbac_config:
#  AUTH_TYPE: "AUTH_LDAP"
#  AUTH_ROLE_ADMIN: "Admin"
#  AUTH_ROLE_PUBLIC: "Public"
#  AUTH_USER_REGISTRATION: True
#  AUTH_USER_REGISTRATION_ROLE: "Viewer"
#  AUTH_LDAP_SERVER: "{{ airflow_ldap_uri }}"
#  AUTH_LDAP_BIND_USER: "{{ airflow_ldap_bind_user }}"
#  AUTH_LDAP_BIND_PASSWORD: "{{ airflow_ldap_bind_password_rbac }}"
#  AUTH_LDAP_SEARCH: "{{ airflow_ldap_basedn }}"
#  AUTH_LDAP_SEARCH_FILTER: "({{ airflow_ldap_user_filter }})"
#  AUTH_LDAP_UID_FIELD: "{{ airflow_ldap_user_name_attr }}"
источник

VS

Vladislav 👻 Shishkov... in Airflow
ну и да, если есть в пароле процент, то его не надо экранировать еще одним процентом теперь
источник

VS

Vladislav 👻 Shishkov... in Airflow
и еще, непомню при каких условиях, но возможно понадобиться руками поправить себе права в базе
источник

ВГ

Владислав Галашов... in Airflow
Добрый день.
Подскажите , кто знает, как лучше:

1)Я хочу каждые 15 минут загружать свежие данные из одной таблицы в другую
Я задаю интервалы для выгрузки (select * from test where timestamp between x and y), где x будет previous_execution_date, то есть дата и время запуска прошлого даг рана. А y будет x + 15 минут
Вопрос: в документации я нашел пример макросов {{ds}} и т.д., но эти макросы содержат только дату, не время (часы, минуты, секунды). Есть способ с помощью макроса сослатся на дату и время предыдущего даг рана?

2) Я хочу сделать так, чтобы этот процесс выгрузки был максимально надежным. То есть, если что-то упадет и данные за очередной интервал не загрузятся, то в следующий период они , как только все восстановятся, они загрузятся. Я прочитал про catchup с помощью которого, это можно реализовать. В качестве примра, есть реализация с помощью макросов. Если не выполнится даг ран за 2021-01-01 , то при возможности, этот даг ран исполнится. Внутри у него макрос со временем (чтобы учитывалось не локальное время, а то, которое должно было быть на момент 2021-01-01), опять же вопрос: А этот макрос можно настроить с датой и временем исполнения? Он сможет брать только вот этот 15 - минутный интервал?

И вообще, как по вашему опыту надежнее всего реализовать этот процесс? Опять же видел макрос previous_success_ds (что -то вроде этого), чтобы в качестве одного из концов времене для выгрузки брать именно последнее успешное время?
источник

А

Адиль in Airflow
Владислав Галашов
Добрый день.
Подскажите , кто знает, как лучше:

1)Я хочу каждые 15 минут загружать свежие данные из одной таблицы в другую
Я задаю интервалы для выгрузки (select * from test where timestamp between x and y), где x будет previous_execution_date, то есть дата и время запуска прошлого даг рана. А y будет x + 15 минут
Вопрос: в документации я нашел пример макросов {{ds}} и т.д., но эти макросы содержат только дату, не время (часы, минуты, секунды). Есть способ с помощью макроса сослатся на дату и время предыдущего даг рана?

2) Я хочу сделать так, чтобы этот процесс выгрузки был максимально надежным. То есть, если что-то упадет и данные за очередной интервал не загрузятся, то в следующий период они , как только все восстановятся, они загрузятся. Я прочитал про catchup с помощью которого, это можно реализовать. В качестве примра, есть реализация с помощью макросов. Если не выполнится даг ран за 2021-01-01 , то при возможности, этот даг ран исполнится. Внутри у него макрос со временем (чтобы учитывалось не локальное время, а то, которое должно было быть на момент 2021-01-01), опять же вопрос: А этот макрос можно настроить с датой и временем исполнения? Он сможет брать только вот этот 15 - минутный интервал?

И вообще, как по вашему опыту надежнее всего реализовать этот процесс? Опять же видел макрос previous_success_ds (что -то вроде этого), чтобы в качестве одного из концов времене для выгрузки брать именно последнее успешное время?
Привет. Можно попробовать {{ dag_run.start_date }}
источник

А

Адиль in Airflow
Хотя пардон, тебе ведь нужна дата и время предыдущего даг рана.
источник

А

Адиль in Airflow
Имхо, можно попробовать записывать последнее время обновления в xcom. А при старте нового даграна брать инфу по ключу и снова обновлять при успехе (на +15 минут)
источник

ВГ

Владислав Галашов... in Airflow
Адиль
Имхо, можно попробовать записывать последнее время обновления в xcom. А при старте нового даграна брать инфу по ключу и снова обновлять при успехе (на +15 минут)
Вот, на xcom тоже как вариант смотрел, проработаю
источник

А

Адиль in Airflow
Ну кажется так будет лучше чем полагаться на предыдущую дату запуска дага
источник

im

igor musinov in Airflow
Владислав Галашов
Добрый день.
Подскажите , кто знает, как лучше:

1)Я хочу каждые 15 минут загружать свежие данные из одной таблицы в другую
Я задаю интервалы для выгрузки (select * from test where timestamp between x and y), где x будет previous_execution_date, то есть дата и время запуска прошлого даг рана. А y будет x + 15 минут
Вопрос: в документации я нашел пример макросов {{ds}} и т.д., но эти макросы содержат только дату, не время (часы, минуты, секунды). Есть способ с помощью макроса сослатся на дату и время предыдущего даг рана?

2) Я хочу сделать так, чтобы этот процесс выгрузки был максимально надежным. То есть, если что-то упадет и данные за очередной интервал не загрузятся, то в следующий период они , как только все восстановятся, они загрузятся. Я прочитал про catchup с помощью которого, это можно реализовать. В качестве примра, есть реализация с помощью макросов. Если не выполнится даг ран за 2021-01-01 , то при возможности, этот даг ран исполнится. Внутри у него макрос со временем (чтобы учитывалось не локальное время, а то, которое должно было быть на момент 2021-01-01), опять же вопрос: А этот макрос можно настроить с датой и временем исполнения? Он сможет брать только вот этот 15 - минутный интервал?

И вообще, как по вашему опыту надежнее всего реализовать этот процесс? Опять же видел макрос previous_success_ds (что -то вроде этого), чтобы в качестве одного из концов времене для выгрузки брать именно последнее успешное время?
А как вариант вычислять через python sensor diff в максимальных значениях колонки по которой делаешь between и кидать его в xcom ?
источник

im

igor musinov in Airflow
Можно будет даже перезапускать пайплайн после python sensor узла, xcom будет тот же
источник

ВГ

Владислав Галашов... in Airflow
igor musinov
А как вариант вычислять через python sensor diff в максимальных значениях колонки по которой делаешь between и кидать его в xcom ?
Ага, ятеоретически понял, но не смог найти примера sensor diff именно, есть под рукой?
источник

im

igor musinov in Airflow
Владислав Галашов
Ага, ятеоретически понял, но не смог найти примера sensor diff именно, есть под рукой?
Есть просто  python sensor.
Diff можно написать . По сути это функция которая берет два select max и кидает в xcom если один больше другого
источник
2021 March 04

JF

Justice For All in Airflow
А что, для того чтобы иметь возможность ssh connection создать, нужно какой-то плагин ставить или что? По-умолчанию в веб интерфейсе нет ни SFTP ни SSH
источник

ST

Serg T in Airflow
Justice For All
А что, для того чтобы иметь возможность ssh connection создать, нужно какой-то плагин ставить или что? По-умолчанию в веб интерфейсе нет ни SFTP ни SSH
полагаю, pip install apache-airflow[ssh]
источник

JF

Justice For All in Airflow
Serg T
полагаю, pip install apache-airflow[ssh]
Спасибо. А не подскажете как можно "всех посмотреть"? Т.е. что еще там есть из apahce-airflow[.....]
источник

ST

Serg T in Airflow
Justice For All
Спасибо. А не подскажете как можно "всех посмотреть"? Т.е. что еще там есть из apahce-airflow[.....]
Гуглится по airflow Providers packages reference
первая статья, не могу сюда ссылки вставлять 🙁
источник

JF

Justice For All in Airflow
Serg T
Гуглится по airflow Providers packages reference
первая статья, не могу сюда ссылки вставлять 🙁
apache-airflow-providers-ssh - это тоже самое что и apache-airflow[ssh] ?
источник