Get started with the batch environment
The major components of the batch environment include the job scheduler, the interfaces to the job scheduler, the job database, and grid endpoints.
The following diagram shows the major components. We can use the command-line interface, the EJB interface, the web services interface, and the job management console to communicate with the job scheduler. The job scheduler has a job database containing all the jobs. The job scheduler in the diagram communicates with two node endpoints. An application server that is doing transactional work runs on another node, but does not communicate with the job scheduler. This application server is not part of the batch environment.
Figure 1. Batch components
The job management console provides a GUI (GUI) with which we can perform job management functions. Most of the function from other interfaces is also available from the job management console.
With the command-line interface, we can submit and control the batch jobs in the system. The enterprise bean and web services interfaces provide similar function to both Java EE and non-Java EE programs through programmatic interfaces. The console provides a GUI (GUI) with which we can configure the job scheduler, and view the location of endpoint servers.
Batch administrators and submitters can use the job management console to view, manage and perform job-related actions that include submitting a job, viewing of jobs, canceling or suspending a job, and resuming a suspended job.
The job scheduler accepts and schedules the execution of batch jobs. It manages the job database, assigns job IDs, and selects where jobs run.
The grid endpoints are application servers that are augmented to provide the runtime environments needed by batch applications.
- The grid endpoints support batch applications that are compute-intensive. Compute-intensive batch applications are built using a simple programming model based on asynchronous beans. Read about compute-intensive programming for more information.
- The batch system supports transactional batch applications. These applications perform record processing like more traditional Java EE applications, but are driven by batch inputs rather than interactive users. This environment builds on familiar Plain Old Java Objects (POJOs) to provide batch applications with a rich programming model that supports container-managed restartable processing and the ability to pause and cancel running jobs. Read about the batch programming model for more information.
Subtopics
- Understand the elements in the batch environment
A typical batch environment consists of a job scheduler, batch container, batch applications, jobs, interfaces for management functions, and database tables.
- Batch applications, jobs, and job definitions
A batch application is a Java EE application that conforms to one of the batch programming models. Batch work is expressed as jobs. Jobs are made up of steps. All steps in a job are processed sequentially.
- Grid endpoints
The product packages and deploys batch applications as Java EE EAR files.
- Unit test environment topology
We can use a single server unit test environment topology. The unit test environment is integrated with the product installation, and a script is provided to create the environment.
- Batch frequently asked questions
When you use batch, we might have questions about the functionality of some of its features.
Related concepts
Command-line interface for batch jobs Job management console Compute-intensive programming model Environment planning for transactional batch applications and compute-intensive applications
Related tasks
Configure the job scheduler