O documento apresenta o módulo Pypette, que torna a construção de pipelines de processamento de dados simples em Python. Pypette permite controlar o fluxo de dados entre tarefas ("jobs") usando uma interface simples. O documento inclui uma introdução ao conceito de pipelines, uma descrição das funcionalidades do Pypette e uma demonstração de seu uso para definir e executar um pipeline.
4. Pipelines:
Definição:
In computing, a pipeline is a set of
data processing elements
connected in series, where the
output of one element is the input
of the next one.
[Wikipedia]
(CC) J. Albert Bowden II - https://flic.kr/p/ALM2RE
5. csurfer/pypette:
pypette: (to be read as pipette) is
a module which makes building
pipelines ridiculously simple,
allowing users to control the flow
with minimal instructions.
Features:
● Simple interface.
● Visualize pipeline structure in terminal
github.com/csurfer/pypette
6. Demo:
● Instalação: pip install pypette
● Estruturas:
○ Job - Unidade básica de execução (método python ou callable);
■ Job(my_python_func)
○ BashJob - Unidade básica de execução (comando do shell);
■ BashJob(['ls', '-l'])
○ Pipe - Especifica o fluxo em que devem ser executados os jobs (só tem 4 métodos):
■ Criar um Pipe: p = Pipe('TestPipe')
■ Adicionar Jobs no Pipe: p.add_jobs([j1, j2])
■ Executar: p.run()
■ Visualizar o pipeline: p.graph()
7. Conclusões:
● Vantagens:
○ Fácil de entender;
○ Fácil de usar;
○ Fácil de depurar;
○ Fácil de estudar como está construído;
○ Suporta Python 2.7, 3.4, 3.5, 3.6;
○ Coverage: 100%
● Desvantagens:
○ Projeto novo;
○ Pouca documentação e exemplos.
8. Agradecimentos
● A toda comunidade Python
● A quem me convenceu para vir para o Brasil e ser parte desta comunidade
pip install ❤