Framework ETL em Python para processamento de streams, análises em tempo real, pipelines com LLM e RAG, com tecnologia de um mecanismo em Rust.
spotify/luigi
Pacote Python para criar pipelines complexos de jobs em lote, com resolução de dependências, gerenciamento de workflows, tratamento de falhas e visualizador web.
- Estrelas
- 18,784
- Forks
- 2,474
- Issues abertas
- 192
- Último commit
- há 8 dias
O que é?
Luigi é um pacote Python para encadear várias tarefas em lote em pipelines. Você define cada tarefa e suas dependências em código Python, e o Luigi resolve o grafo de dependências, executa as tarefas na ordem correta e trata falhas para que workflows longos possam ser retomados sem refazer o trabalho concluído.
Uma tarefa pode ser um job Hadoop ou Hive, um script Pig, um job Spark, um dump de tabela de banco de dados, uma transferência de arquivos com scp ou uma função Python qualquer. O Luigi vem com suporte integrado a Hadoop e HDFS, e suas operações de sistema de arquivos em arquivos locais são atômicas, evitando que uma execução com falha deixe resultados parciais.
O Luigi inclui um servidor web com um visualizador para pesquisar e filtrar tarefas e consultar o grafo de dependências, no qual tarefas concluídas e pendentes são exibidas em cores diferentes. A instalação é feita com pip, e há suporte opcional a configurações baseadas em TOML.
Recursos principais
- 01Resolve as dependências entre tarefas e as executa na ordem correta.
- 02Suporte integrado a jobs Hadoop, HDFS, Hive, Pig e Spark.
- 03Operações atômicas no sistema de arquivos, para que execuções com falha não deixem dados parciais.
- 04Visualizador web para pesquisar tarefas e consultar o grafo de dependências.
- 05As tarefas são definidas em Python, permitindo calcular dependências programaticamente.
Casos de uso
- Orquestrar pipelines de dados diários ou horários compostos por jobs Hadoop, Hive ou Spark.
- Encadear exportações de banco de dados, transformações e etapas de treinamento de machine learning.
- Retomar workflows longos de processamento em lote após uma falha, sem executar novamente as tarefas concluídas.
Início rápido
- 1
Instalar Luigi pelo PyPI
pip install luigi - 2
Instalar Luigi com suporte à configuração TOML (opcional)
pip install luigi[toml]
Antes de usar
- Foi desenvolvido para pipelines em lote, portanto não é adequado para cargas de trabalho em tempo real ou de streaming.
- As tarefas são definidas em código Python, então equipes sem experiência com Python podem ter mais dificuldade para adotá-lo.
Tópicos
Perguntas frequentes
- O que é luigi?
- Pacote Python para criar pipelines complexos de jobs em lote, com resolução de dependências, gerenciamento de workflows, tratamento de falhas e visualizador web. Luigi é um pacote Python para encadear várias tarefas em lote em pipelines. Você define cada tarefa e suas dependências em código Python, e o Luigi resolve o grafo de dependências, executa as tarefas na ordem correta e trata falhas para que workflows longos possam ser retomados sem refazer o trabalho concluído.
- luigi é gratuito? Qual é a licença?
- luigi é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- luigi ainda é mantido?
- Manutenção ativa. O último commit de luigi foi em 14 de out. de 2026.
- Para que posso usar luigi?
- Orquestrar pipelines de dados diários ou horários compostos por jobs Hadoop, Hive ou Spark. Encadear exportações de banco de dados, transformações e etapas de treinamento de machine learning. Retomar workflows longos de processamento em lote após uma falha, sem executar novamente as tarefas concluídas.
- Como instalar luigi?
- Instalar Luigi pelo PyPI: pip install luigi Instalar Luigi com suporte à configuração TOML (opcional): pip install luigi[toml]
- Onde consigo luigi?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/spotify/luigi
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Plataforma open source de analytics de produto que reúne análise de eventos, gravação de sessões, feature flags, experimentos, monitoramento de erros, pesquisas e data warehouse.
Plataforma open source de movimentação de dados para pipelines ELT, que leva dados de APIs, bancos de dados e arquivos para data warehouses, data lakes e aplicações de IA.
Sistema de processamento de dados com mais de 200 operadores combináveis para limpar, filtrar, deduplicar e sintetizar dados de texto, imagem, áudio e vídeo para o treinamento de modelos fundacionais.
CLI e pipeline de dados que sincronizam metadados de infraestrutura em nuvem e SaaS com um data warehouse para consultas SQL, inventário de ativos e análise de segurança.
Apache NiFi automatiza, roteia e monitora fluxos de dados entre origens e destinos, com gerenciamento pela interface do navegador.