Record Distribution

Use a Record Distribution pattern to provide the means to process a local or remote file as a series of records and to apply each record to update one or more systems with transactional interfaces. The pattern bridges a non-transactional file system interface, and transactional interfaces with error handling, to ensure that data is not lost.

Diagram of record distribution achitecture

The context

This pattern and its variations can be applied in the following contexts:

The problem

This pattern bridges two styles of integration, file based and transaction based. Because the file system is not transactional, it is not possible to have a transaction that bridges the reading of all records from a file and the writing of all records to a target. It is, therefore, necessary to provide error handling that can ensure that records are not lost. Patterns in this category address the problem of not losing data when a file is processed and records are distributed. Some pattern implementations also address the problem of once only delivery.

This pattern also addresses the problem of routing different transactions within a file to the correct WebSphere MQ destination.

Selection guidance

Use this pattern when:

Do not use this pattern for:

The solution

The solution is to implement a message flow that reads a record from the file and routes it to the correct WebSphere MQ destination or to a bad message queue in a single transaction.