Batch Processing is a technique of processing data in which the data to be processed are first collected in a batch or group and then processed. The batches can be prepared based on volume of data or interval of time between the successive processing instances. Since data are first collected and then processed, there is a definite time difference between the occurrence of the data event and its processing. Hence, this is different from online processing in which data are processed while they are created or as the transaction/event related to that data occurs. Batch processing is used in cases where data volume is large but there is no need of live and instantaneous results. Examples are payroll processing, bill processing (phone, electricity, utilities etc), periodic data reports etc. On the other hand, the online processing is used when instantaneous results or feedback are needed such as airlines ticketing, ATM transactions, electronic payments etc.