Pipe and Filter
DataData processing in pipeline with chained filters
Principles
Independent filtersPipes connect filtersData flows in one directionFilters are reusable
When to use
ETL, stream processing, compilers, image processing
When not to use
Interactive processing, when state is important
Pros and Cons
Ventajas
- + Reusable filters
- + Easy to add/remove steps
- + Parallel processing possible
- + Isolated filter testing
Desventajas
- - Transformation overhead
- - Complex pipeline debugging
- - Shared state is difficult