Pragmatic Enterprise Architecture (2014) Strategies to Transform Information Systems in the Era of Big Data
1This is an architectural style that divides a larger processing task into a sequence of smaller, independent processing steps, referred to as “filters,” which are connected by channels, referred to as “pipes.” Each filter exposes a very simple interface receiving inbound messages from an inbound pipe, then processes the data, and then generates a message on an outbound pipe. The pipe connects one filter to the next, until the processing is complete.
There are a number of architectural subpatterns based on pipeline patterns, such as the aggregator subpattern, which is a special filter that receives a stream of messages and correlates the ones that are related, aggregates information from them, and generates an outbound message with the aggregated information. In contrast, a splitter subpattern is a special filter that separates messages into subsets that can be routed to distinct outbound pipes.
1 For a more complete list of messaging patterns and subpatterns of architectural subtypes, refer to Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions by Gregor Hohpe and Bobby Woolf, 2004, published by Addison-Wesley, ISBN: 0-321-20068-3.