Доброго времени суток! У нас открылось совершенно новое направление обучения — [BigData][1], а это значит, что немного расширяется горизонт материалов, которыми мы будем делиться с вами. Сегодня рассмотрим Luigi, как часть того, что раскрывается на нашем курсе.
[Luigi][2] — фреймворк на языке Python для построения сложных последовательностей по выполнению зависимых задач. Довольно большая часть фреймворка направлена на преобразования данных из различных источников (MySql, Mongo, redis, hdfs) и с помощью различных инструментов (от запуска процесса до выполнения задач разных типов на кластере Hadoop). Разработан в компании Spotify и открыт в виде open source инструмента в 2012 году.
Самое главное преимущество фреймворка — возможность выстраивать последовательности зависимых задач. Фреймворк разрешает зависимости, отслеживает граф выполнения, управляет запуском задач, обрабатывает ошибки с возможностью перезапуска нужных задач, распределяет ресурсы рабочих процессов с возможностью параллельной работы независимых частей графа задач.
Для выполнения всех этих задач существуют и другие инструменты. Это [Oozie][3], [Pinball][4], [Airflow][5] (находится в статусе инкубации в Apache — проходит различные проверки, недавно вышел обзор на [хабре][6]). В данной статье рассмотрим только Luigi.
![][7]
[Читать дальше →][8]
[1]:
https://otus.ru/lessons/BigData/?utm_source=habr&utm_medium=affilate&utm_campaign=bigdata&utm_term=profi11.10
[2]:
https://github.com/spotify/luigi
[3]:
http://oozie.apache.org/
[4]:
https://github.com/pinterest/pinball
[5]:
https://github.com/apache/incubator-airflow
[6]:
https://habrahabr.ru/company/mailru/blog/339392/
[7]:
https://habrastorage.org/webt/59/de/7e/59de7ef4aa4ad086175249.jpeg
[8]:
https://habrahabr.ru/post/339904/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut