Batch processing is a term used in data processing and refers to the way computer programs work in which the amount of tasks or data provided as input in one or more data sets is processed completely, automatically and usually sequentially. The complementary form of processing is called “dialogue processing”. The program processes exactly one operation (a transaction), which is usually initiated interactively by a user via a computer workstation for processing. After that, the program ‘waits’ for further transactions; any orders that may arrive in parallel must be processed one after the other or separately from each other.
The term batch processing comes from the early days of data processing when interactive processing was not yet possible. At that time, data sets were often available in the form of punch cards and were processed successively by the respective computer program – whose program code was often also available as a stack of punched cards – as a stack of cards. Later, when the punch card was replaced by other storage media, e.g. magnetic tapes and disk drives, and interactive work with the dialogue computer became possible (with direct input via a terminal), the term was preserved and is still used today for non-interactive data processing: you place an order; this is processed by the computer with all associated data “without the intervention of the user in sequence”. In this form of processing, the work results are also usually available as ‘quantity’, for example as documents, lists (reports), new or changed data sets, etc.
Batch/Batch Processing Variants
The term ‘batch processing’ has two different meanings:
Processing System Commands
The term batch processing is often used to process operating system-related services and tasks. In this context, the term batch file or the batch file has become known, especially through MS-DOS. Batch files contain a set of commands that take advantage of the operating system features; these are processed step by step by executing the batch file. With DOS/Windows, the batch files are usually provided with the file name extension or file name extension. On Windows, they can be started by double-clicking. In Unix, batch files are called shell scripts. These are much more powerful than the first DOS batch programs (up to Windows 9x) since more operating system commands or tools are available on Unix. On Apple’s Macintosh, these programs are called AppleScript. The current system macOS is also a Unix variant and also knows batch files in the usual sense. Overall, the term script is also being used more and more for batch programs.
Processing data in batch mode
In commercial data processing, batch processing means the automatic, sequential and complete processing of the data contained in one or more input file(s). The program runs completely independently after startup and usually without any user interaction; Exceptions could be e.g. error situations with the need for operator interventions. It makes its results available in the form of files or (via Insert/Update/Delete) in databases or via other output devices (e.g. printers).
Examples of Batch Processing
- Accounting: recording of incoming payments of a working day; leads to new account balances
- Mail order: creating invoices for delivered items; for shipping to customers
- Dunning: Creation of reminders for customers whose invoices are still unpaid after x days
- Retail: Preparation of sales statistics from all sales of a company.
- Photo editing: Rotate all photos (in a specific folder) 90 degrees to the left
- Data center: Printing of data that has been cached by previously run programs (also called Spooling)
- Data migration: Converting data/files to another file format
The structure of batch programs often follows standardized concepts, such as standardized programming, because the process in internal processing – except for task-specific details – can be identical or similar.