Go to primary content
Oracle® Retail Job Orchestration and Scheduler Oracle® Retail Job Orchestration and Scheduler
Release 16.0.027
E94822-01
  Go To Table Of Contents
Contents

Previous
Previous
 
Next
Next
 

1 Introduction

Oracle Retail Job Orchestrator and Scheduler (JOS) is a generic tool that manages, executes, orchestrates, and schedules batch jobs for an enterprise, addressing the dependencies between tasks and processing non-interactive long-running jobs.

Standards and Specifications

JOS is designed and built on industry standard nonproprietary Java EE 7 and Java Batch (JSR 352).

Java Platform Enterprise Edition (Java EE)

Java Platform Enterprise Edition (Java EE) is an umbrella standard for Java's enterprise computing facilities. It bundles together technologies for a complete enterprise-class server-side development and deployment platform in Java.

Java EE specifications includes several other API specifications, such as JDBC, RMI, Transaction, JMS, Web Services, XML, Persistence, mail, and others and defines how to coordinate among them. The Java EE specifications also features some specifications unique to enterprise computing. These include Enterprise JavaBeans (EJB), servlets, portlets, Java Server Pages (JSP), Java Server Faces (JSF) and several Web service technologies.

A Java EE application server manages transactions, security, scalability, concurrency, pooling, and management of the EJB/Web components that are deployed to it. This frees the developers to concentrate more on the business logic/problems of the components rather than spending time building scalable, robust infrastructure on which to run.

Java Batch

JSR 352 is a Java specification for building, deploying, and running batch applications. Batch is an industry metaphor for background bulk processing. Myriad business processes depend on batch processing and demand powerful standards-based facilities for enabling this essential workload type.

JSR 352 addresses three critical concerns: a batch programming model, a job specification language, and a batch runtime. This constitutes a separation of concerns.

  1. Application developers have clear, reusable interfaces for constructing batch style applications.

  2. Job writers have a powerful expression language for how to execute the steps of a batch execution.

  3. Solution integrators have a runtime API for initiating and controlling batch execution.

JSR 352 defines a Job Specification Language (JSL) to define batch jobs, a set of interfaces that describes the artifacts that comprise the batch programming model to implement batch business logic, and a batch runtime for running batch jobs, according to a defined life cycle.

The batch runtime is a part of the Java EE 7 runtime and has full access to all other features of the platform, including transaction management, persistence, messaging, and more.

Java EE Server

The WebLogic server implements the Java EE specification and is the Java EE server vendor for JOS in this release. The WebLogic server provides many additional services beyond the standard services required by the Java EE specification.

See the WebLogic Application Server documentation for more information:

>http://docs.oracle.com/middleware/12211/wls/index.html">>http://docs.oracle.com/middleware/12211/wls/index.html

>http://www.oracle.com/technetwork/middleware/fusion-middleware/documentation/index.html">>http://www.oracle.com/technetwork/middleware/fusion-middleware/documentation/index.html

Java Batch Overview

Batch processing for the Java platform was introduced in Java EE 7. It provides a programming model for batch applications and a runtime to run and manage batch jobs. Batch processing is typically bulk oriented, non-interactive, and long running.

Figure 1-1 Batch Processing

Surrounding text describes Figure 1-1 .

A job encapsulates the batch process. A job contains one or more steps. A job is put together using the Job Specification Language (JSL) that specifies the sequence in which steps must be executed.

  • A step contains all the necessary logic and data to perform the actual processing. A chunk-style step contains ItemReader, ItemProcessor, and ItemWriter.

  • The Job Operator provides an interface to manage all aspects of job processing.

  • The Job Repository holds information about jobs currently running and jobs that ran in the past.