Size: a a a

2020 August 05

AM

Aлексей Mатюхин... in Airflow
Anton Afonin
В airflow.cfg где-то не прописан хост
Ну на малых данных все ок...
источник

AA

Anton Afonin in Airflow
Aлексей Mатюхин
Ну на малых данных все ок...
И лог есть?
источник

AM

Aлексей Mатюхин... in Airflow
Да, все четко.
источник

AM

Aлексей Mатюхин... in Airflow
Если 100 тыс. загружаю, все ок. А падает похоже(еще выясняю) на загрузке в постгрю командой copy
источник

AA

Anton Afonin in Airflow
Странно, потому что пути к логам генерируются на основе конфига, выглядит, как будто какой-то параметр пустой. Если лог есть - дело в чём-то другом, надо ковырять)
источник

AM

Aлексей Mатюхин... in Airflow
Хорошо, поковыряю. Спасибо!
источник

AM

Aлексей Mатюхин... in Airflow
Nikolay Shibalov
Возможно, если выгружается одним куском, без pagination, падает воркер и не сохраняет логи
Значит надо частями загружать? Делить данные на более мелкие куски как-то? Воркеру памяти не хватает может...
источник

NS

Nikolay Shibalov in Airflow
Aлексей Mатюхин
Значит надо частями загружать? Делить данные на более мелкие куски как-то? Воркеру памяти не хватает может...
Да, например в PythonOperator открывать два соединения и последовательно вычитывать данные. Только надо помнить что курсоры бывают как локальные так и удаленные (в самой бд). Например для posgtesql надо дать имя курсору (иначе он все равно будет все выгружать)
источник

AM

Aлексей Mатюхин... in Airflow
Nikolay Shibalov
Да, например в PythonOperator открывать два соединения и последовательно вычитывать данные. Только надо помнить что курсоры бывают как локальные так и удаленные (в самой бд). Например для posgtesql надо дать имя курсору (иначе он все равно будет все выгружать)
Спасибо!
источник

А

Анастасия in Airflow
Привет!
Я перехожу на airflow с pentaho di и пытаюсь понять, как здесь использовать параметры, которые можно задать извне
Если триггерить даг вручную, то можно задавать json строку для dag_run.conf
А как задавать эти же значения для постановки на расписание?
Вижу в документации, что это можно делать из шедулера, в UI ничего похожего не нашла
источник

VE

Vladimir Elfimov in Airflow
Ребят, у кого-то был опыт взлета airflow с kerberos под третьим питоном?
Судя по джире аирфлоу - официального решения еще нет, но может есть какие-то обходы?
источник

ДН

Дмитрий Негреев... in Airflow
Анастасия
Привет!
Я перехожу на airflow с pentaho di и пытаюсь понять, как здесь использовать параметры, которые можно задать извне
Если триггерить даг вручную, то можно задавать json строку для dag_run.conf
А как задавать эти же значения для постановки на расписание?
Вижу в документации, что это можно делать из шедулера, в UI ничего похожего не нашла
Можете параметры в variables хранить например, либо какой-то свой метастор запилить
источник

А

Анастасия in Airflow
Дмитрий Негреев
Можете параметры в variables хранить например, либо какой-то свой метастор запилить
Это видится не очень удобным тем, что я не могу поставить даг на расписание с дефолтными значениями и триггерить иногда со своими собственными. Например, указывать свою отдельную схему для sql
источник

SG

Sergey Gavrilov in Airflow
Анастасия
Это видится не очень удобным тем, что я не могу поставить даг на расписание с дефолтными значениями и триггерить иногда со своими собственными. Например, указывать свою отдельную схему для sql
Увы, но параметризация вызовов "на ходу" не поддерживается. Могу лишь предложить вам "порыть" в контекстных переменных таски, есть ли там отличия между вызовом по расписанию, и "от руки"
источник

RK

Roman Kazakov in Airflow
Анастасия
Это видится не очень удобным тем, что я не могу поставить даг на расписание с дефолтными значениями и триггерить иногда со своими собственными. Например, указывать свою отдельную схему для sql
А можете пример описать, что вы хотите сделать? Кстати тут есть пример как переопределить через  UI, но это всё аналогично  Variables как сказали выше https://airflow.apache.org/docs/stable/dag-run.html#using-ui
источник

А

Анастасия in Airflow
Roman Kazakov
А можете пример описать, что вы хотите сделать? Кстати тут есть пример как переопределить через  UI, но это всё аналогично  Variables как сказали выше https://airflow.apache.org/docs/stable/dag-run.html#using-ui
Это я и имела в виду. Вот так триггернуть даг я могу. Но не знаю, как указать значения по умолчанию для этих параметров. Сейчас нашла params, которые можно определить в даге, пытаюсь разобраться, будет ли оно работать
источник

P

Pavel in Airflow
Анастасия
Это я и имела в виду. Вот так триггернуть даг я могу. Но не знаю, как указать значения по умолчанию для этих параметров. Сейчас нашла params, которые можно определить в даге, пытаюсь разобраться, будет ли оно работать
источник

RK

Roman Kazakov in Airflow
Анастасия
Это я и имела в виду. Вот так триггернуть даг я могу. Но не знаю, как указать значения по умолчанию для этих параметров. Сейчас нашла params, которые можно определить в даге, пытаюсь разобраться, будет ли оно работать
Но вообще да, через параметры должно сработать, ибо есть есть метод который умеет переопределять  params таска
https://airflow.apache.org/docs/1.10.9/_modules/airflow/models/taskinstance.html - overwrite_params_with_dag_run_conf, но он будет работать, только если в конфигурации задать dag_run_conf_overrides_params

И в шаблоне таска уже обращаться к params, а не как в примере напрямую к словарю конфигурации
источник

А

Анастасия in Airflow
Roman Kazakov
Но вообще да, через параметры должно сработать, ибо есть есть метод который умеет переопределять  params таска
https://airflow.apache.org/docs/1.10.9/_modules/airflow/models/taskinstance.html - overwrite_params_with_dag_run_conf, но он будет работать, только если в конфигурации задать dag_run_conf_overrides_params

И в шаблоне таска уже обращаться к params, а не как в примере напрямую к словарю конфигурации
А мы можем при таком раскладе вынести params в отдельный ini файлик? И вообще, можем ли мы это сделать
источник

RK

Roman Kazakov in Airflow
Анастасия
А мы можем при таком раскладе вынести params в отдельный ini файлик? И вообще, можем ли мы это сделать
Да, это Python, тут можно делать что угодно. Таски формировать динамически на основе конфигурационного файла. Скрипт идет в файл и читает конфигурацию и перед тем как сформировать таск может залезть в другой файл или в variables и там уточнить какие-то параметры. Как раз Variables в основном и нужен, что бы можно было на время какой-то параметр переопределять
источник