Sunteți pe pagina 1din 4

Batch processing

Mainframe processing evolved from the 1960's. At that time, processing was
mainly read from cards. Outputs were either printed or punched out in cards.
Although the input and output devices have changed, this processing is still
being used today mainly for processing large amount of data at one time. If
an organization needs to print bills, there is most likely a batch program that
reads input files and scans through the database and produces the thousands
of bills for that billing cycle. This form of processing is called Batch
Processing.
As technology improved, online processing became available. Online
Transaction Processingallows a user to enter a transaction to a program that
can return the result in real time. If you go to an ATM and query your balance,
your request is sent to an online program that accepts your query and returns
the result in real time.

n the old days of computing, batch jobs had statements on punched cards
and were physically submitted to the system through a machine called a card

reader. One card is one record. Each record is 80 characters in length. These
statements are called Job Control cards and written in Job Control Language
(JCL). Today, there are no machines to read the punched cards. Statements
are now coded interactively with an editor and stored on disks. A program
called an internal reader (INTRDR) reads these cards from disks.

The JCL specifies the name of the job (job name), priority and class of the job.
It also specifies the STEP within a job. A step is identified by a name (step
name) that specifies the program to be executed. The step also specifies the
different files used by the program. These file statements specify the
attributes of the files being used. The file attributes include the name of the
file (Data set nameor DSN), the address of the unit where the file resides, the
type of unit, the physical record length (Block Size or BLKSIZE) and logical
length (logical record length or LRECL) of each record.

These JCL statements are read by a program called the Job Entry Subsystem
(JES). The Job Entry Subsystem for z/OS is called JES2. JES2 is a task within
z/OS that puts these jobs in a queue. JES2 controls Initiators. Each Initiator is
defined to process one or more job classes. When an Initiator is available, it
will process a job based on its class and priority.

Once the job is initiated, batch processing for that job begins. The initiator
will allocate the files for the job to use. It will also load the program to be
executed for that step. Once the program executes, there is no more
intervention needed. The program reads the input files and writes out the
output files. When a step is done, the Initiator looks at the next step and
based on the condition specified for that step, the Initiator will either bypass
that step or will prepare the environment for the next step.

The job ends when all the steps had been executed for that job.

Sometimes, when a program encounters an error condition, the job will


terminate with an Abnormal End or (ABEND). There are two kinds of ABENDs.
A system ABEND is generated by the operating system. It is prefixed with S
and followed by 3 a hexadecimal ABEND code that identifies the cause of the
ABEND. A user ABEND is generated by the program and is prefixed with U
and followed by 4 decimal numbers.

In z/OS, programs end with a return code. The return code can also indicate
the result of the processing for that step. A normal or successful execution
normally has a return code of 0.

Batch processing is execution of a series of programs ("jobs") on a


computer without manual intervention.

obs are set up so they can be run to completion without human interaction.
All input parameters are predefined through scripts, command-line
arguments, control files, or job control language. 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, processes 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 or sets of records and each
batch is processed as a unit.
Benefits

Batch processing has these benefits:

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.
It allows the system to use different priorities for batch and interactive work.
Rather than running one program multiple times to process one transaction
each time, batch processes will run the program only once for many
transactions, reducing system overhead.

Common batch processing usage

Databases
Batch processing is also used for efficient bulk database updates and
automated transaction processing, as contrasted to interactive online

transaction processing (OLTP) applications. The extract, transform, load (ETL)


step in populating data warehouses is inherently a batch process in most
implementations.

Images
Batch processing is often used to perform various operations with digital
images such as resize, convert, watermark, or otherwise edit image files.
Conversions
Batch processing may also be used for converting computer files from one
format to another. For example a batch job may convert proprietary and
legacy files to common standard formats for end-user queries and display.
Reporting

The IBM mainframe z/OS operating system or platform has arguably the most
highly refined and evolved set of batch processing facilities owing to its
origins, long history, and continuing evolution, and today such systems
commonly support hundreds or even thousands of concurrent online and
batch tasks within a single operating system image. Mainframe-unique
technologies that aid concurrent batch and online processing include Job
Control Language (JCL), scripting languages such as REXX, Job Entry
Subsystem (JES2 and JES3), Workload Manager (WLM), Automatic Restart
Manager (ARM), Resource Recovery Services (RRS), DB2 data sharing, Parallel
Sysplex, unique performance optimizations such as HiperDispatch, I/O
channel architecture, and several others.

S-ar putea să vă placă și