Parallel Processing Jobs with Asynchronous RFC
For some SAP reports, the nights are just getting too short. Especially for customers with large volumes of data, some reports that generally run in the background processing system (such as material planning runs) have run times longer than the "night-time" that is available, especially if dialog users are spread across several time zones.
SAP offers a solution to the "short nights" problem: parallel-processed background jobs. Long-running reports can now implement parallel processing, which lets them parcel out the work to be done to availablework processes and then collect and synchronize the results.
In parallel processing, a job step is started as usual in a background processing work process. A program that runs in a job step can be programmed to use a special variant of asynchronous RFC to have portions of the data to be processed run in parallel in other work processes. You can recognize such a program by its use of the CALL FUNCTION STARTING NEW TASK DESTINATION IN GROUP instruction to start the function modules that process the data. For information on programming, seeImplementing Parallel Processing.
While the job itself runs in a background process, the parallel processing tasks that it starts run in dialog work processes. Such dialog work processes may be located on any SAP server.
Parallel processing has been implemented in some SAP applications that have long-running reports. Check the application documentation for information on such reports. The parallel processing interface is also available directly to customers.
Automatic Protection Against Resource Overuse
The asynchronous remote function call (RFC) system contains built-in safeguards against the possibility that a parallel processing job may take too many resources and affect the overall performance of your system.
A parallel-processed job is allowed to use the dialog work processes of a server only if:
Performance testing at SAP suggests that the built-in safeguards allow significantly faster execution of background jobs without unduly affecting system performance as a whole. However, if parallel-processed jobs might compete for the same resources or might share the SAP System with time-critical applications or a full complement of interactive users, you should use RFC groups to control which resources a parallel-processed job uses.
Managing Resources with RFC Groups
By default, the group of servers eligible to be used for parallel processing is all qualifying servers in your SAP System (CALL FUNCTION STARTING NEW TASK with the argument DESTINATION IN GROUP DEFAULT). However, you can use the "group" specification in a parallel-processing program to control precisely which resources can be used by a parallel processing job.
Parallel processing jobs cannot currently be specially marked in the tools for monitoring background processing. This monitoring capability will be added in a future release.
Defining RFC Groups for Parallel-Processed Jobs