Each data flow in the solution is implemented as an IBM Tivoli Directory Integrator AssemblyLine, also abbreviated as 'AL' in this and other literature.
ALs are ordered lists of components forming a single, continuous path from input sources to targets. Built-in behavior provided by the kernel ties the components together and passes data carried in the Work Entry from one to the next.
Connectors are linked together to form an AssemblyLine. Each connector has a data source, the Connector Interface (CI). The kernel links together the components and provides automated patterns of behaviors with control points for customization1.
In addition to the Work Entry flowing from component to component down the AssemblyLine, there is an additional Java "bucket" nestled in each of the Connector Interfaces. Each local Entry object is used to cache data during read and write operations performed by that CI, and is called its Conn Entry.
Data flowing between the various Conn Entries and the AL's Work Entry are Attribute Maps. Each one represents a set of rules for data movement and transformation on its way either in or out of the AssemblyLine. Those that lift data from a Conn Entry into the Work Entry are named Input Maps since they determine what data is brought into the AssemblyLine. Data moving in the other direction - from the Work Entry to the Conn Entry - is called an Output Map.
Since there is only one Work Entry at any time, we can deduce that AssemblyLines process one item at a time: for example, one database row, directory entry, MQ message, and so forth. This is another important aspect of IBM Tivoli Directory Integrator, and although an AssemblyLine can cycle hundreds or even thousands of Entries per second2, it's an important consideration when designing the solution. It is of course possible to spread work across multiple AssemblyLines, and we will find this and other techniques for optimizing AssemblyLine performance in other Tivoli Directory Integrator literature.
Parent topic: Simplify and solve
1 As Every AssemblyLine component reflects the kernel/component architecture of Tivoli Directory Integrator. If we decide to make our own component, it is only its interface that we have to implement. The AssemblyLine "wrapper" and its wealth of built-in functionality are available automatically, courtesy of the Tivoli Directory Integrator kernel.
2 Performance will depend on the design and complexity of the AssemblyLine and the configuration of the machine running the Server.