DataLoader/MX Reference Manual (G06.24+)
DataLoader/MX Examples
DataLoader/MX Reference Manual—525872-002
6-9
Multiple Source Parallel Maintenance
•
-I directs processes to get their input from $RECEIVE, unblocking to 200-byte
records. You did not specify a block size, so the DataLoader/MX process blocks as
many records as fit into a 32,000-byte message.
•
-X directs each DataLoader/MX process to call user exit CONVERTIT to do the
data conversion.
•
-O directs processes to use $RECEIVE as their output file. Processes then take
the converted records (in this case, 215 bytes long), block them into 32,000-byte
blocks (148 of them or 31,820 bytes), put them into a output buffer pool, and wait
for another process to read them:
4$ run -name=/G/dbl1 dbl1 -E=err1 \
"-I=\$RECEIVE(recform=fb<recsize=200>)" -X=c -O=\$RECEIVE &
5$ run -name=/G/dbl2 dbl1 -E=err2 \
"-I=\$RECEIVE(recform=fb<recsize=200>)" -X=c -O=\$RECEIVE &
6$ run -name=/G/dbl3 dbl1 -E=err3 \
"-I=\$RECEIVE(recform=fb<recsize=200>)" -X=c -O=\$RECEIVE &
...
7$ run -name=/G/dbln dbl1 -E=errn \
"-I=\$RECEIVE(recform=fb<recsize=200>)" -X=c -O=\$RECEIVE &
Command lines 8 through 11 start the import processes that read the converted and
blocked records and do a PARTONLY load so that each record goes into an
appropriate partition.
8$ import cat.sch.mytab -ip \$dbl1 -u mytab.fmt &
9$ import cat.sch.mytab -ip \$dbl2 -u mytab.fmt &
10$ import cat.sch.mytab -ip \$dbl3 -u mytab.fmt &
...
11$ import cat.sch.mytab -ip \$dbln -u mytab.fmt
Multiple Source Parallel Maintenance
This highly parallel load scenario with write operations uses only two simple exits: one
to build the key from a raw record (the BUILDKEY exit in the initial DataLoader/MX
process) and one to convert a raw record to a suitable format (the CONVERT exit in
downstream DataLoader/MX processes).
Figure 6-4 shows multiple input streams. Suppose that you are inserting or updating
the database as appropriate.
Note that Figure 6-4 is exactly like Figure 6-2 except that there is more than one input
stream, and you must have one initial DataLoader/MX process for each stream. You
could use the DataLoader/MX statistics report to adjust the number of downstream
DataLoader/MX processes and modify the input stream to start them.