On this Page

Types of Ultra Pipelines

When building an Ultra Pipeline, the Pipeline must either have:

Low-latency Feed (Request and Response) 

Pipeline: One unconnected input view and one or more unconnected output views

The most popular Ultra Pipeline design is a straightforward request-response construct that is used as a data access layer for real-time web services. This design transforms a Pipeline into a continuously running job. Documents are supplied to the Pipeline through a FeedMaster that maintains a queue of documents, which are then parsed by the Pipeline while responses are returned through the FeedMaster to the caller.

At the simplest, an Ultra Pipeline Task can comprise a Mapper Snap that maps an incoming document to a target field. You can download this sample Pipeline from which you can create an Ultra Task.

Always-On (Continuous Data Flow)

Pipeline: No unconnected input view and no unconnected output view

This design is often used in a listener-consumer construct. With zero unconnected input and output views, an Ultra Pipeline can be used to poll and consume the documents from an endpoint without requiring a document feed from the FeedMaster.

A typical JMS-based polling Ultra Pipeline can comprise of a JMS Consumer Snap and a Snap that writes data to a destination, like a File Write SnapYou can download a sample Pipeline from which you can create an Ultra Task. 


 Guidelines for Ultra Pipeline Designs

Ultra Pipelines are similar to web service requests and conform to an HTTP response architecture. Consider these guidelines when you design an Ultra Pipeline.

Naming

Avoid spaces in Pipeline names that are invoked as Tasks.

Input View Type

An unconnected input view type must be either binary or document:

In addition to the HTTP headers in the request, the following fields are added to the input document:

foo=bar&foo=baz&one=1

{
"foo" : ["bar", "baz"],
"one": ["1"]
}

Output View Type

The unlinked output view type can be binary or document as well:



Downloads


Related Content