Table Description
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.

Relationship Diagram
Click the diagram to manipulate and zoom. Traverse the diagram using Click-and-Drag motions.
Model Details
Location in Model: Logical View::MetaModel::Curam::Core::Reference Model::Infrastructure::Batch::BatchProcessChunk
Controlling File: core\model\Packages\Infrastructure\Batch_cat.efx
Attributes (5)
AttributeStereotypeNullableDescriptionDomain DefinitionCodetableDDL Type
batchProcessChunkIDkeynoUnique ID for this chunk of recordsBATCH_PROCESS_CHUNK_ID SVR_INT64
instanceIDkeynoUnique ID for this instance of a parallel-enabled batch programBATCH_PROCESS_INSTANCE_ID SVR_STRING<60>
detailsdetails The IDs for each record in the chunk, formatted as a tab-delimited stringBATCH_PROCESS_CHUNK_DETAILS SVR_BLOB
statusdetails The status for this chunk of records, e.g. processed or unprocessedBATCH_PROCESS_CHUNK_STATUSBatchProcessChunkStatusSVR_STRING<10>
resultSummarydetails A summary of the results of processing this chunk of recordsBATCH_PROCESS_CHUNK_RESULT_SUMMARY SVR_STRING<8000>
Foreign Keys (1)
ChildParent
BatchProcessChunk.instanceIDBatchProcess.instanceID
Indices (2)
Index NameAttributes
BPCStatusIdxinstanceID, status
InstanceIDIdxinstanceID
Operations (9)
OperationStereotypeOptionsDescriptionSQL
insertinsert Standard Operation 
readread Standard Operation 
modifyStatusAndResultnsmodify   
removeAllChunksByInstanceIDnsremove   
searchUnProcessedBatchProcessChunknsmultiPRE_DATA_ACCESS: yes
READMULTI_LIM: 0
 
 SQL
searchProcessedBatchProcessChunknsreadmultiPRE_DATA_ACCESS: yes
READMULTI_LIM: 0
  
readProcessedBatchProcessChunk  @superseded - replaced by searchProcessedBatchProcessChunk 
readUnProcessedBatchProcessChunk  @superseded - replaced by searchUnProcessedBatchProcessChunk 
readBatchProcessChunkDetailsnsread Reads column details from table BatchProcessChunk. 
Related Pages (0)