Features
1. Overview
OpenFrame/Batch provides an open system environment where mainframe batch jobs can run without any modifications to the existing business logic. Furthermore, OpenFrame/Batch provides the following benefits.
-
Greatly reduces the cost of migrating to an open system environment (when compared to a full redevelopment) by allowing existing batch scripts to be reused.
-
Provides a range of batch system functions for data set management, HiDB, TACF authentication, and access control. These functions match the functions provided by mainframes, ensuring that rehosting is safe for the customer and that original business logic is maintained.
-
Allows users to use applications designed for UNIX, easing the development of new batch processes for users.
-
Supports a distributed environment that can rehost the batch system on multiple linked UNIX servers.
-
Uses Tmax® (Tmax), TmaxSoft’s powerful TP monitor, to provide superior failover and stability features, allowing scheduled batch jobs to proceed even when a hardware or database (network) error occurs.
2. TJES
The Tmax Job Entry System (TJES) is an OpenFrame module that manages batch jobs. It matches the functions that are provided by JES on a mainframe.
Built on a number of components such as the Tmax TP monitor, OpenFrame/Base, the lock server, and Tmax Access Control Facility (TACF), the TJES module interacts with other systems.
OpenFrame/Base system provides data manipulation (record read/write) functions and data set I/O functions that are essential for starting and executing the jobs defined in JCL. TJES uses a unique storage method, the spool data set, which stores the inputs required for job execution in addition to the execution results.
For more information about OpenFrame/Base, refer to OpenFrame Base Guide. |
In terms of lock, security and integration with Tmax, TJES provides the following functions.
-
Lock
The TJES system can handle parallel execution of multiple jobs based on a scheduling policy. When the TJES system performs an I/O operation on a data set, it requests that the lock server lock the data set that is being used. Then, the lock server use the DBMS_LOCK package to ensure that the I/O operation has exclusive access to the data set. If the data set has already been locked by another job, TJES waits until the previous job finishes and the data set lock is removed. This means that the TJES system uses the lock server to prevent different processes from simultaneously accessing a data set, which guarantees data integrity.
-
Security
Batch jobs strain system resources, and protecting these resources from unauthorized users is critical. When the TJES system executes batch jobs, it first sends a request to the TACF (Tmax Access Control Facility) to ensure that the user has permission to access the particular resource. TACF then informs TJES about whether or not the user can access the resource. In this way, TJES protects important system resources by preventing unauthorized users from accessing system resources.
-
Linkage with Tmax
Compared to other vendors' systems, TJES can reliably build multi-nodes for distributed processing and provides consistent fail-over protection since it uses the company’s proprietary Tmax.
-
Distributed processing
All programs in the TJES system are based on the concept of Tmax server processes. These server processes handle the management and execution of batch jobs. If the number of batch jobs increases, the load can be balanced by distributing the load with Tmax or by increasing servers.
-
Fail-over
It is important for users to be able to continue working in the event of an unexpected hardware or network failure. In the event of a failure, Tmax will detect and attempt to either fix or bypass the problem. For example, if one node shuts down for any reason, Tmax detects the error and restarts the node automatically. This ensures that batch jobs are able to continue uninterrupted even in the event of localized failure.
Additionally, if a node is in an unrecoverable state, program control is passed automatically to another node. Users can continue running batch jobs without being affected by the inactive node.
-
3. Utilities
Utilities are written in the JCL PGM, and the program component that executes the actual batch jobs when the jobs are submitted.
Each utility can be classified by its function as follows:
|
3.1. Data Set Manipulation Utilities
OpenFrame/Batch provides a number of utilities for managing data sets. They are intended to match the data set management utilities provided by mainframes. Generally, these utilities are used for deleting, renaming, cataloging/uncataloging, moving, copying, merging, or modifying data sets. The utilities can be divided into three types: system utilities, data set utilities, and the VSAM utility.
-
System Utilities
The following describes each utility.
Utility Description IEHLIST
Provides information about partitioned data sets (PDS) with the members list or volume information with the list of data sets included in the volume.
IEHPROGM
Manages non-VSAM data sets.
-
Data Sets Utilities
The following describes each utility.
Utility Description ADRDSSU
Used when using JCL to call DFSMSdss functions supported by the IBM Mainframe MVS environment.
DFHJUP
Retrieves and processes CICS log data in SMF data sets.
IEBCOMPR
Compares two SDSs or PDSs through comparison conditions and displays the results.
IEBCOPY
Copies or merges all or some members of one or more PDS.
IEBDG
Creates test data sets.
IEBEDIT
Writes or edits job stream data sets.
IEBGENER
Copies sequential data sets or PDS members.
IEBPTPCH
Creates data for sequential data sets or all/some of PDS members in the actual display format.
IEBUPDTE
Creates, updates and copies resources (application sources, JCL sources and others).
IFASMFDP
Dumps SMF data sets to normal data sets or initializes the contents of SMF data sets.
-
VSAM Utilities
The following describes each utility.
Utility Description IDCAMS
Creates and manages VSAM and non-VSAM data sets and catalogs.
3.2. Database Utilities
The following describes each utility.
Utility | Description |
---|---|
DSNMTV01 |
Enables connection when an application uses certain database access methods such as ESQL or ODBC. |
DSNTEP2 |
Issues SQL statements to DB2 databases. |
DSNTIAD |
Executes Data Manipulation Language (DML) which queries and updates database information. |
DSNTIAUL |
Unloads DB2 database table data onto OpenFrame data sets, using the IKJEFT01 utility. |
DSNUTILB |
Issues commands to databases. |
INZUTILB |
Unloads DB2 database table data to OpenFrame data sets. |
3.3. DFSORT Utility
DFSORT allows large quantities of data to be quickly sorted, merged, and copied. These functions are not provided by the utility itself, but rather by ProSort, an external high-performance sort program offered by TmaxSoft.
Since external high-performance sort programs run in Unix, they are unable to recognize scripts with the existing formats used in mainframes. Also, non-VSAM or VSAM data used in mainframes cannot be processed.
To address such issues, the SORT utility provided by OpenFrame is linked with external high-performance sort programs to convert the existing mainframe sort scripts into compatible formats for the external programs. Also, the OpenFrame SORT utility reads and sends non-VSAM or VSAM data to external sort programs so that they can sort, merge and copy the data. After this, the data is saved again to the non-VSAM or VSAM data sets.
3.4. Miscellaneous Utilities
There are utilities that do not belong to any of the previously mentioned categories.
The following describes each utility.
Utility | Description |
---|---|
ADAPT |
Manipulates data sets with simple commands. |
DSDIFF |
Displays differences between different records in data sets. |
EZTPA00 |
Executes CA-Easytrieve Plus scripts written in JCL SYSIN. |
FTP |
Sends data sets from batch jobs to remote hosts or receives data from remote hosts and saves it to data sets. |
ICETOOL |
Uses SORT utilities to display multiple data sets in different ways from a single job step. |
IEFBR14 |
Checks JCL statements for any issues. |
IKJEFT01 |
Allowing access to database system before running application when executing JCL to run a batch application using a database. When running a business COBOL application that uses a database, any information required to access the database, including the name of database and user as well as password, is not coded in the application sources, but rather specified in the input script of the KEQEFT01 utility. |
ISRSUPC |
Compares two data sets or searches for a specific string in a single data set. |
PGMRTS00 |
Controls application operating environments by running through JCL runner, a batch engine module, when required to run a batch application compiled by shared objects under JCL. |
4. Tools
In Batch, tools are not directly used for running jobs. They provide rather a range of different functions necessary for operating OpenFrame systems such as creating or initializing system data sets and receiving batch job submissions.
Batch supports the following tools.
-
TJES initialization tool
Tool Description tjesinit
Initializes spool data sets as well as system tables used by TJES.
-
Tools for user convenience
Tool Description dlclean
Automatically deletes libraries that have been moved to temporary data sets.
dlupdate
Updates user-defined libraries and allows modifications even without shutting down the libraries in use.
textrun
Receives batch jobs from external schedulers, such as Control-M or A-AUTO, and monitors the batch jobs. After execution is complete, textrun returns the results to the external scheduler.
For more information about the tools, refer to OpenFrame Tool Reference Guide. |