9 Understanding Batch Processing

Introduction

Batch Processing in Oracle Financial Services Communication Cloud Service is a feature that enables you to configure and execute jobs as an asynchronous process that follows a Schedule. Configuring a high-volume job within a Batch allows you to execute it efficiently in the background, thereby facilitating the processing of millions of records at specific business hours with minimal human intervention. A Schedule defines when and how often the job should be initiated, ensuring it executes at the optimal time or on a recurring basis.

Using Batches, you can streamline repetitive processes, reduce manual errors, and improve efficiency by automating tasks that need to execute at specific times or intervals. This setup minimizes the need for constant supervision while ensuring timely and accurate execution of business-critical operations.

Each Batch configuration is associated to a Schedule that determines the frequency of execution of the processes within it. Once you upload a file for processing and a Batch instance is created, it fetches the Batch job details and the Batch execution starts based on the associated Schedule.

Example: Financial Institution ABC would like to send out promotional emails to its domestic customers on every Friday, at 5pm. This requires sending personalized emails to nearly 100,000 customers, by fetching their email addresses and attaching documents to them. Manually performing this at the preferred time and frequency would demand a lot of resources and would increase the risk of errors. Instead, you can create a Batch that sends emails with the document attachments to the email addresses of the recipients and configure a corresponding Schedule that triggers the Batch on the desired timing.

Functionalities

Following are the functionalities of a Batch:

  • Batch Scheduling: You can create a Schedule to define the frequency of Batch execution. The Schedule automates processing by executing jobs at a predefined schedule, such as daily, weekly, or so on, ensuring the Batch is executed consistently, without manual intervention. The Batch Timer checks for configured Batches that are scheduled for execution and starts the processing at the defined frequency and timing, as per the Schedule associated to it. See Creating a Schedule.
  • Batch Configuration: You can configure a Batch that follows a predefined Schedule using Batch Configuration. Each Batch comprises of a Batch Job that is identified with a Batch Job Transaction Type, which in turn refers to a functional Batch that drives a predefined set of processes. The Batch Job can be set up with specific parameters such as Processing Set Size, Processing Set Size Fail Threshold, and so on. See Creating a Batch Configuration.
  • File Upload and Batch Creation: Transactions that require processing are uploaded through File Upload API. The File Upload API also creates a Batch instance using the Batch configuration and the associated Schedule. Uploading File to Batch using API
  • Batch Execution: Once the Batch Timer triggers the execution of a Batch, and the system validations of the batches are successful, the Batch Executor triggers the execution of the underlying processes for the Batch. The Batch Job configured within the Batch is executed according to the Schedule. See Batch Execution.

Configuration Movement

Batch configurations follow the configuration movement process; that is, if you configure a Batch or a Schedule in one environment (non-production), you can move the configuration to different environments (pre-production and production) sequentially.

For more information, see Understanding Configuration Movement.