Size: a a a

2021 March 15

JF

Justice For All in Airflow
Max Efremov
Т.е. сам аирфлоу например не задизайнен, чтобы передавать данные между своими тасками, только метаинформацию.
Может подскажете правильный инструмент для следующей задачи:

1. Достаются из БД записи (которые подошли под определенный фильтр);
2. На их основе генерируются по шаблону командные строки для запуска на удаленной машине (запуск хоть через какого-то агента, хоть просто по SSH) - это и есть наши таски/джобы;
3. Далее эти таски запускаются на уделенной машине, но с ограничением на кол-во параллельно запущенных тасков. Т.е. если например в пункте №2 сформировалось 100 команд на запуск, а ограничение на параллельность - 5 тасков, то соответственно запускаются первые 5, потом например 2-ой отработал - значит можно запускать 6-ой и так далее, пока все 100 не выполнятся;
4. Далее - переходим к пункту №1, опять делается выборка из базы и всё по кругу.

В основном записи из базы будут выбираться каждый раз одни и те же, просто их нужно постоянно по кругу запускать на удаленной машине. Но иногда будут добавляться и новые, либо удалятся старые. Удаленных машин может быть несколько.

Ну и конечно желательно чтобы были уведомления о свалившихся тасках, или долго работающих тасках. Плюс визуальный мониторинг что где запущенно.
источник

N

Nikolai in Airflow
Justice For All
Может подскажете правильный инструмент для следующей задачи:

1. Достаются из БД записи (которые подошли под определенный фильтр);
2. На их основе генерируются по шаблону командные строки для запуска на удаленной машине (запуск хоть через какого-то агента, хоть просто по SSH) - это и есть наши таски/джобы;
3. Далее эти таски запускаются на уделенной машине, но с ограничением на кол-во параллельно запущенных тасков. Т.е. если например в пункте №2 сформировалось 100 команд на запуск, а ограничение на параллельность - 5 тасков, то соответственно запускаются первые 5, потом например 2-ой отработал - значит можно запускать 6-ой и так далее, пока все 100 не выполнятся;
4. Далее - переходим к пункту №1, опять делается выборка из базы и всё по кругу.

В основном записи из базы будут выбираться каждый раз одни и те же, просто их нужно постоянно по кругу запускать на удаленной машине. Но иногда будут добавляться и новые, либо удалятся старые. Удаленных машин может быть несколько.

Ну и конечно желательно чтобы были уведомления о свалившихся тасках, или долго работающих тасках. Плюс визуальный мониторинг что где запущенно.
так вам нужно, чтобы после 100-й задачи сразу же стартовала 1я?
источник

JF

Justice For All in Airflow
Nikolai
так вам нужно, чтобы после 100-й задачи сразу же стартовала 1я?
Так точно
источник

N

Nikolai in Airflow
тогда это точно не про airflow) nifi попробуйте
источник

JF

Justice For All in Airflow
Ну и чтоб конечно можно было этот "порочный круг" приостановить. А потом опять запустить. Ну и логи какие-то иметь
источник

N

Nikolai in Airflow
в nifi можете весь этот процесс описать через gui без строчки кода плюс логи и потоки, все там есть
источник

N

Nikolai in Airflow
только он jvm тянет за собой ну и ресурсов ест соответственно
источник

N

Nikolai in Airflow
хотя есть некоторые workaround конечно
источник

S

Shadilan R16 MU Rost... in Airflow
Nikolai
в nifi можете весь этот процесс описать через gui без строчки кода плюс логи и потоки, все там есть
Больше NIFI богу NiFi ну я как обычно отрекламлюсь. Если надумаете nifi то милости просим в @nifiusers
источник

S

Shadilan R16 MU Rost... in Airflow
Justice For All
Ну и чтоб конечно можно было этот "порочный круг" приостановить. А потом опять запустить. Ну и логи какие-то иметь
Блин не туда ответил.
источник

JF

Justice For All in Airflow
Nikolai
в nifi можете весь этот процесс описать через gui без строчки кода плюс логи и потоки, все там есть
Вот я изначально и надеялся, что должны же уже существовать какие-то готовые шедулеры/оркестраторы/воркфлоу-автоматоры, чтобы не писать это всё самому с нуля руками. Спасибо, посмотрю nifi. Он к классу воркфлоу аутомейшин инструментов принадлежит?
источник

JF

Justice For All in Airflow
Shadilan R16 MU Rostov
Больше NIFI богу NiFi ну я как обычно отрекламлюсь. Если надумаете nifi то милости просим в @nifiusers
Благодарю, присоединился
источник
2021 March 16

A

A.K in Airflow
Адиль
воркфлоу укладки как раз можно реализовать через airflow
Можете пожалуйста по подробнее рассказать, как можно автоматизировать workflow процесс - собрание отчетов из разных дочерних компаний в Excel.
источник

A

A.K in Airflow
Очень много Excel файлов, из них нужно вытащить нужные показатели и их добавить в нашу базу данных чтобы визуализировать
источник

A

A.K in Airflow
это делается в airflow ?
источник

Н

Николай in Airflow
A.K
это делается в airflow ?
в том числе - можно и  в ней. Только собирать эксели это тупиковый путь - их будут постоянно «улучшать», а вам нужно будет под каждый чих переписывать даги
источник

A

A.K in Airflow
какие идеи есть ? как можно это автоматизировать
источник

A

A.K in Airflow
Николай
в том числе - можно и  в ней. Только собирать эксели это тупиковый путь - их будут постоянно «улучшать», а вам нужно будет под каждый чих переписывать даги
я в airflow новичок, не совсем понимаю что она делает, но сказали что автоматизирует процесс загрузки файлов в базу данных
источник

A

A.K in Airflow
Roman Lukianov
Графана для ваших целей не лучший выбор. Есть бесплатный metabase, jasper и др.
преимущество графаны в том, что там есть разные роли, есть админ который видит все информации, и пользователь которому можно ограничить другие соурсы
источник

ДН

Дмитрий Негреев... in Airflow
A.K
я в airflow новичок, не совсем понимаю что она делает, но сказали что автоматизирует процесс загрузки файлов в базу данных
если у вас данных не очень много - можете оператор написать который будет ваш excel в базу грузить (или найти готовый, если таким кто-то занимался)
источник