Dataloader/MP Reference Manual
Table Of Contents
- What’s New in This Manual
- About This Manual
- 1 Introduction to DataLoader/MP
- 2 DataLoader/MP Components
- 3 Running DataLoader/MP
- 4 Specifying File-Related Options for DataLoader/MP
- 5 Creating a Customized Version of DataLoader/MP
- User Exits
- User Exit Descriptions
- BUILDKEY
- CHECKARG
- CONVERTIT
- DELETEIT
- DONEWITHTRANSACTION
- EXITSDESCRIPTION
- GETNEXTRECORD
- INITIALIZE1
- INITIALIZE2
- INSERTIT
- INSTRUCTIONS
- MISC1, MISC2, MISC3, and MISC4
- NEWTRANSACTION
- NEXTINDIRECTFILE
- SKIPPING
- STATISTICSTIME
- TERMINATING
- T0330U00_DEFAULTEXITS_C
- T0330U00-DEFAULTEXITS-COBOL
- T7900D41_DEFAULTEXITS_C
- T7900V00-DEFAULTEXITS-COBOL
- UPDATEIT
- Default User Exits
- DataLoader/MP Library
- The MAKE Routine for NM DataLoader/MP
- The MAKE Routine for Nonnative Mode DataLoader/MP
- 6 DataLoader/MP Examples
- 7 Recovery Strategies
- A Error and Warning Messages
- B Processing Flowcharts
- C C-Only Error Functions
- Index

Running DataLoader/MP
DataLoader/MP Reference Manual—424148-003
3-12
Parallelism
Parallelism
A powerful mechanism for loading or maintaining large amounts of data in a timely
fashion is parallelism. DataLoader/MP has been designed to allow the creation of
parallel loading and maintenance scenarios, taking full advantage of the parallel
capabilities of the underlying system.
There are two primary considerations in a parallel load or maintenance scenario:
creating parallelism and taking advantage of parallelism.
Creating Parallelism
If the input is a single stream, such as a set of tapes that cannot be processed
separately or a single LAN transfer that cannot be changed into multiple simultaneous
transfers, you must break the single input stream into multiple streams that can be
processed in parallel. DataLoader/MP enables you to do this by having a single
DataLoader/MP process read the input and distribute it to other processes (usually
other DataLoader/MP processes) in an efficient manner.
If it does not matter which process receives a given input record, you can run an initial
DataLoader/MP process with its output $RECEIVE and specify this DataLoader/MP
process as the input for the multiple downstream processes. This approach provides a
self-balancing and easily tunable way to create this type of parallelism.
If each input record must go to a specific downstream process, you can specify the
KEYRANGE interpretation for the initial DataLoader/MP process output file.
Sometimes the load or maintenance strategy does not involve doing complete
processing of the input at the time it is read (perhaps the data will be stored in
intermediate files for recovery or batch control purposes). If you want to break the input
into a number of files based only on the record count, you can use an INDIRECT file as
the -O= file with the MAX modifier on each of the file names in the INDIRECT file. This
makes DataLoader/MP divide the input into multiple output files (usually on multiple
disks on multiple processors), setting the stage for complete parallelism at the next
stage of processing.
>DATALOAD -t=100<restartfile=xyz>
Directs DataLoader/MP to set the
number of records per TMF transaction
to 100 and to create a restart file named
xyz
>DATALOAD -t=100 -t=200
Produces an error because the TMF
parameter is given twice
>DATALOAD -I=batch1 -C=1000 &
-F=100
Directs DataLoader/MP to skip the first
100 records, then process 1000 records
>DATALOAD /OUT $d.#lst1/ &
-I=batch1 -C=1000 -F=100 -O=
Directs DataLoader/MP to skip the first
100 records, then process 1000 records,
and to send output to printer $d.#lst1