Batch Process Chunk:
A chunk of records for processing by a parallel-enabled batch program.
Example You schedule the batch program Determine Initial Product Delivery Eligibility (which is parallel-enabled) to run every night.
The program consists of two executable processes:
- Determine Initial Product Delivery Eligibility, which identifies the records to be processed, groups them into chunks and monitors the processing of these chunks; and
- Determine Initial Product Delivery Eligibility Stream, which processes these chunks.
The scheduler starts the Determine Initial Product Delivery Eligibility process which scans the database to identify records to be processed and divides these into chunks of 100 records. For each chunk a row is created on this table storing the IDs of the records in the chunk.
In the meantime, your scheduler starts 10 instances of the Determine Initial Product Delivery Eligibility Stream process. Each of these:
- reads the Batch Chunk Key table to obtain an unprocessed chunk to work on;
- reads this table to retrieve the chunk;
- processes the 100 records held in this chunk; and
- updates this row with the successful completion of the chunk.
When all chunks have been processed, the Determine Initial Product Delivery Eligibility process reads all the rows on this table for this batch instance, writes a summary report and deletes these rows from this table.
Technical Notes The number of records in each chunk is configurable for each batch program. There may be one chunk which has fewer records than this number in the (likely) case that the total number of records is not evenly divisible by the chunk size.
|