Processing : Batch Processing

Using batch processing input data is grouped together into batches . No data is processed until a complete batch has been collected. Then all of the data in a batch is processed in one go. There may be a long time delay between data being input into the system and the data being processed.

In this type of system the important data that the computer stores all of the time is kept in a file called the master file. The data in the master file is sorted into order using one of the fields in the records in the file, known as the primary key field. The primary key field must uniquely identify each record in the file.

Each piece of input data (which will update the contents of the master file) is known as a transaction. All the input data is put together into a batch in a file called the transaction file. There are three different types of transaction that any processing system will have to cope with. They are :

At some predetermined time (e.g. the end of the day or week) the computer system will process the data stored in the transaction file and make any changes that are necessary to the master file as a result of the transactions. This will produce an updated master file and an error report detailing any transactions that could not be processed for some reason. Generating a single updated master file from the old master file and the transaction file is known as merging files.

Before this processing can take place the transactions must be prepared for processing. To do this two operations must be carried out :

  1. Validating : Each transaction that is entered is validated to check that it is unlikely to halt processing by causing an error. It is very important that processing is not halted in a batch processing system because processing often takes place overnight without a human operator being present. If an invalid transaction caused the processing to stop then a whole night's processing time could be lost. Transactions are usually validated as they are keyed in by the operator. Any errors that are found can be reported and corrected straight away.

  2. Sorting : The data in the transaction file is sorted into order using the same primary key field as the master file. Sorting can not take place until the whole batch of transactions entered and stored in a file. The transaction and master files need to be put into the same order before processing occurs because the two files are processed sequentially. The files are usually stored on a serial access medium such as magnetic tapes. If the records on the tapes were not sorted into order then whenever a transaction record was read from the transaction file the computer system would have to waste a lot of time searching for the matching record in the master file.

How often batches of data are processed will depend upon the application (i.e. the job that is being done). Batch processing is usually only carried out on mainframe computers and when very large volumes of data have to be processed in a database.

Advantages of Batch Processing Disadvantages of Batch Processing
For large systems the hardware required to implement a batch processing system can often be cheaper than that required to implement a transaction or real-time system to do the same job. The master file is not always kept up to date. This makes batch processing unsuitable for some applications. e.g. booking seats on an aeroplane where the data must be kept constantly up to date.
Batch processing can be carried out automatically at a time when the computer system would not normally be used, e.g. overnight. By doing this a company can get more work out of the computer hardware it owns. There is always a delay before work is processed and output is obtained

This system flowchart shows what happens in a batch processing system :

Batch Processing Algorithm

During the processing phase (represented in the bottom half of the flowchart above) all of the records are copied from the master file to the new master file. Any changes that must be made to the master file are detailed in the transaction file and carried out when the records are copied to the new master file. The processing that takes place for each transaction in the transaction file will depend upon the type of transaction :

Transaction Type Processing
Add new record Use details in transaction file record to insert a new record into the new master file at the correct position in the file.
Delete recordDo not copy the record that is to be deleted from the master file to the new master file.
Update recordUse details in transaction file record to update the record read from the master file then write the new record to the new master file.

There is nothing to stop a batch processing system being implemented using disks for storage rather than magnetic tapes. Tapes are usually used because they are cheaper to purchase, can store more data and can read and write data faster than disks.

GCSE ICT Companion 04 - (C) P Meakin 2004