Python-фреймворк ETL для потоковой обработки, аналитики в реальном времени, LLM-пайплайнов и RAG на базе движка на Rust.
spotify/luigi
Python-пакет для создания сложных конвейеров пакетных задач с разрешением зависимостей, управлением рабочими процессами, обработкой сбоев и веб-визуализацией.
- Звёзды
- 18,784
- Форки
- 2,474
- Открытые issues
- 192
- Последний коммит
- 8 дней назад
Что это?
Luigi — это Python-пакет для объединения множества пакетных задач в конвейеры. Вы описываете каждую задачу и её зависимости в коде на Python, а Luigi строит граф зависимостей, запускает задачи в нужном порядке и обрабатывает сбои, чтобы длительные рабочие процессы можно было возобновить без повторного выполнения уже завершённых задач.
Задачей может быть задание Hadoop или Hive, скрипт Pig, задание Spark, дамп таблицы базы данных, передача файла через scp или произвольная функция Python. Luigi включает встроенную поддержку Hadoop и HDFS, а операции файловой системы с локальными файлами атомарны, поэтому после сбоя не остаётся частично записанных результатов.
Luigi включает веб-сервер с визуализатором для поиска и фильтрации задач, а также просмотра графа зависимостей: завершённые и ожидающие задачи отображаются разными цветами. Пакет устанавливается через pip и при необходимости поддерживает конфигурацию на основе TOML.
Ключевые возможности
- 01Разрешает зависимости между задачами и запускает их в правильном порядке.
- 02Встроенная поддержка заданий Hadoop, HDFS, Hive, Pig и Spark.
- 03Атомарные операции файловой системы не оставляют частично записанных данных после сбоя.
- 04Веб-визуализатор для поиска задач и просмотра графа зависимостей.
- 05Задачи описываются на Python, поэтому зависимости можно вычислять программно.
Сценарии использования
- Оркестрация ежедневных или ежечасных конвейеров обработки данных, состоящих из заданий Hadoop, Hive или Spark.
- Объединение в цепочки экспорта данных из баз, преобразований и этапов обучения моделей машинного обучения.
- Возобновление длительных многоэтапных пакетных рабочих процессов после сбоя без повторного запуска завершённых задач.
Быстрый старт
- 1
Установить Luigi из PyPI
pip install luigi - 2
Установить Luigi с поддержкой конфигурации TOML (необязательно)
pip install luigi[toml]
Что важно знать
- Инструмент предназначен для пакетных конвейеров, поэтому не подходит для задач реального времени или потоковой обработки.
- Задачи определяются в коде Python, поэтому командам без опыта работы с Python может быть сложнее начать его использовать.
Темы
Частые вопросы
- Что такое luigi?
- Python-пакет для создания сложных конвейеров пакетных задач с разрешением зависимостей, управлением рабочими процессами, обработкой сбоев и веб-визуализацией. Luigi — это Python-пакет для объединения множества пакетных задач в конвейеры. Вы описываете каждую задачу и её зависимости в коде на Python, а Luigi строит граф зависимостей, запускает задачи в нужном порядке и обрабатывает сбои, чтобы длительные рабочие процессы можно было возобновить без повторного выполнения уже завершённых задач.
- luigi можно использовать бесплатно? Какая у него лицензия?
- luigi распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- luigi всё ещё поддерживается?
- Активно поддерживается. Последний коммит в luigi — 14 окт. 2026 г..
- Для чего можно использовать luigi?
- Оркестрация ежедневных или ежечасных конвейеров обработки данных, состоящих из заданий Hadoop, Hive или Spark. Объединение в цепочки экспорта данных из баз, преобразований и этапов обучения моделей машинного обучения. Возобновление длительных многоэтапных пакетных рабочих процессов после сбоя без повторного запуска завершённых задач.
- Как установить luigi?
- Установить Luigi из PyPI: pip install luigi Установить Luigi с поддержкой конфигурации TOML (необязательно): pip install luigi[toml]
- Где скачать luigi?
- Исходный код и инструкции по установке — на GitHub: https://github.com/spotify/luigi
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Платформа продуктовой аналитики с открытым исходным кодом: аналитика событий, записи сессий, feature flags, эксперименты, отслеживание ошибок, опросы и хранилище данных.
Open-source платформа для перемещения данных в ELT-пайплайнах: из API, баз данных и файлов в хранилища, озёра данных и AI-приложения.
Система обработки данных с более чем 200 комбинируемыми операторами для очистки, фильтрации, дедупликации и генерации текста, изображений, аудио и видео для обучения foundation-моделей.
CLI и конвейер данных для синхронизации метаданных облачной и SaaS-инфраструктуры с хранилищем данных — для SQL-запросов, инвентаризации ресурсов и анализа безопасности.
Apache NiFi автоматизирует маршрутизацию и мониторинг потоков данных между источниками и получателями через браузерный интерфейс.