Batch processing is execution of a series of programs ("jobs") on a computer without manual intervention.
Batch jobs are set up so they can be run to completion without manual intervention, so all input data is preselected through scripts orcommand-line parameters. This is in contrast to "online" or interactive programs which prompt the user for such input. A program takes a set of data files as input, process the data, and produces a set of output data files. This operating environment is termed as "batch processing" because the input data are collected into batches on files and are processed in batches by the program.
Benefits of Batch Processing:
- It allows sharing of computer resources among many users and programs
- It shifts the time of job processing to when the computing resources are less busy
- It avoids idling the computing resources with minute-by-minute manual intervention and supervision
- By keeping high overall rate of utilization, it better amortizes the cost of a computer, especially an expensive one.
Data processing:
A typical batch processing procedure is End of day-reporting (EOD), especially on mainframes. Historically systems were designed to have a batch window where online subsystems were turned off and system capacity was used to run jobs common to all data (accounts, users or customers) on a system. In a bank, for example, EOD jobs include interest calculation, generation of reports and data sets to other systems, print (statements) and payment processing.