WebSphere Extended Deployment Compute Grid, Version 6.1
             Operating Systems: AIX, HP-UX, Linux, Solaris, Windows, z/OS


System Programming Interfaces (SPI) and properties

A System Programming Interface (SPI) is a pluggable extension to the execution environment. Compute Grid SPIs are configured through a properties file that identifies the installed SPIs and their implementation class names.

SPI properties

Table 1. Attributes of a property file
Property file Attribute
Name xd.spi.properties
Location <WAS install directory>/properties
Format <SPI name>=<SPI implementation class>
All SPIs are instantiated in a WebSphere Application Server as singleton objects.

Parameterizer SPI

The purpose of the parameterizer SPI is to divide the top-level job into multiple sub-jobs. The parameterizer SPI determines the number of sub-jobs to create, and the input properties passed to each sub-job. Typically, the input properties contain information for which data chunks process a particular sub-job. Implementation of the parameterizer SPI is mandatory.

Synchronization SPI

The synchronization SPI gives you control during the various life-cycle stages of the logical transaction. For example, the Begin, beforeCompletion, afterCompletion, and so on. You can use these control points to rollback the logical transaction if necessary.

SubJobCollector SPI

The SubJobCollector SPI collects information related to a sub-job execution. In a typical implementation, progress information about a sub-job is stored as an externalizable object within the sub-job context. When the batch container invokes the collector SPI, the information previously stored within the sub-job context is returned.

SubJobAnalyzer SPI

The SubJobAnalyzer SPI is used to analyze information collected previously by using the SubJobCollector SPI. In a typical implementation, the SubJobAnalyzer SPI is used to aggregate information obtained from all sub-jobs to determine the consolidated return code for the top-level job. The SubJobAnalyzer SPI is called during checkpoint processing and on job completion.

Context objects

The Compute Grid runtime provides context objects that offer a common work area among SPIs and batch application programming model artifacts. A context object allows user code to save and retrieve a Java Object and share it within the context’s scope. The Compute Grid runtime ensures proper cleanup of context objects and end of scope. There are two context object types:
  • ParallelJobManagerContext: Exists in the scope of a parallel job. The Parameters, SubJobAnalyzer, and Synchronization SPIs all have access to this context for a given parallel job instance.
  • SubJobContext: Exists in the scope of a sub-job. The SubJobCollector, and batch application programming model artifacts, BatchDataStream, BatchJobStepInterface, CheckpointPolicyAlgorithm, and ResultsAlgorithm all have access to this context for a given sub-job instance.



Related concepts
Other considerations when running the parallel job manager
Related tasks
Sample application for the parallel job manager
Installing and configuring the parallel job manager (PJM)
Related reference
rcgpjmdisaster.html
rcginstallpjm.html
Related information
The parallel job manager (PJM)
Reference topic    

Terms of Use | Feedback

Last updated: Oct 30, 2009 6:22:31 PM EDT
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r1/index.jsp?topic=/com.ibm.websphere.gridmgr.doc/info/reference/rcgpjmspi.html