FATAR functional description


What is FATAR?

FATAR (Fast Analysis of Tape and Recovery) is a multi-purpose tape utility, that can be executed under z/OS. FATAR can read any magnetic tape that is usable by that operating system, and can process multiple files and multiple volumes in one execution. It offers the ability to summarize or examine in detail the data read from the tape. FATAR's error recovery procedures are often capable of reading data that causes data check errors when read by normal access methods.

FATAR can also create a copy of the input data on another tape, optionally applying user-specified modifications as it copies. FATAR never modifies the input tape, so creating a copy is the only way to recover from errors on the original input. FATAR can also be used to move data from physical tapes to virtual tape systems.

In many installations, much of the installation's data is stored on magnetic tape, which is subject to many hazards. This data will be useful only if it was written correctly when first recorded and is still readable when needed. Many hours of staff and computer time can be wasted trying to recover from physical (hardware) or logical (data) errors on tape. FATAR can greatly reduce this recovery time, or even discover problems before they occur.

FATSCOPY program is the preferred method for copying tapes, especially if a large number of volumes need to be copied to new media. In addition to providing better performance, FATSCOPYpropagates tape management information from the input data set to the output data set for IBM’s RMM, CA Technologies’ CA 1 and TLMS, BMC’s Control-M/Tape, and ASG’s Zara. The FATSCOPYpanels and keywords allow you to control which volumes and data sets are copied and how they are grouped on the output tapes. FATSCOPYalso provides checkpoint, restart, and audit facilities. Refer to FATSCOPYFunctional Description for more information about FATSCOPY.

Who uses FATAR?

FATAR is ideal for use by tape librarians and operations personnel, by applications programmers, and by systems programmers.

What is FATAR used for?

FATAR has many applications, including:

  • Investigating an unknown tape, to discover its label type, file count, DCB characteristics, etc.
  • Mapping a tape, providing a compact summary of the characteristics of all files on the tape.
  • Examining the data on a tape.
  • Verifying that a tape file is properly formatted (every block is checked against its DCB information).
  • Detecting and correcting invalid variable spanned records.
  • Verifying that certain data fields contain valid data.
  • Scanning a tape for read data checks, which may cause application job failures.
  • Verifying the readability of critical or archive tapes.
  • Correcting invalid data or data checks by creating a copy of the input tape(s) with the bad data corrected or dropped.
  • Creating a good copy of a tape that was not properly closed (such as during a system failure).
  • Recovering data from a tape partially overwritten in error with a shorter file.
  • Creating a backup copy of any tape (or multi-volume set of tapes), even if multiple files exist on the tape.
  • Replacing tapes with small blocksizes with copies using a larger blocksize (reducing elapsed and CPU times of applications that read that data).
  • Creating a copy of a tape with a different label type from the original (such as AL-to-SL or NL-to-SL).
  • Creating copies of tapes at higher density or on a different type of tape drive.
  • Copying tapes with blocksizes up to 256K, including ABR backup tapes.
  • Making an image copy (an exact bit-for-bit copy) of a tape volume.

FATAR controls

FATAR has a flexible set of command statements entered as 80-character records, of which only columns 1-71 are used by FATAR. For many operations, the commands required are very simple since the default operations of FATAR are designed to handle the most common user requirements. However, the FATAR statements allow you to greatly modify FATAR operation, including the ability to specify an operation down to a specific block and record on the tape if required.

Input tape processing

Unless you instruct it otherwise, FATAR will read all files on the tape volume (or multi-volume tape set) specified on its TAPEIN DD statement. If DCB information is available (from JCL or from the tape labels), FATAR will deblock each tape block into individual records if the record format is fixed or variable, allowing you to examine or modify each logical record. If you prefer, or if DCB information is not available, FATAR will treat each tape block as one record.

Since most tapes in IBM installations are labeled, FATAR will normally expect input tapes to contain labels (either IBM standard or ISO/ANSI), and will intelligently print the labels, extract data set name and DCB information from them and treat only real data files as data. This will be true even if you have specified LABEL=(,BLP) in JCL, so that you can mount tapes whose volume serial you don't know or don't care about and still print and process their labels.

However, FATAR will recognize unlabeled tapes automatically and treat all files on them as data. If you have a need to process label files as data, you can instruct FATAR to do so.

If the input data is in ASCII, FATAR will translate it to EBCDIC before processing. By default, the ASCII-EBCDIC translation table used includes only the most common characters. If you need translation of other characters, such as the Euro character, see the ASCII= operand for custom translation tables.

Data block processing

Once a block has been read, FATAR offers facilities via FATAR commands to:

  • Print the block in EBCDIC, HEXADECIMAL, or DUMP format (HEX and EBCDIC together). All or part of the block may be printed.
  • Change the length of the block; extra bytes may be added at the beginning or end of the block, or both.
  • Change data in the block, either at a specified location or by scanning for a string.
  • Scan specified fields in the block for valid packed or zoned decimal numbers, to help eliminate data exceptions in application programs.
  • Scan specified fields in the block for validity by comparison to a user specified table of valid or invalid values.
  • Scan for specific strings of data, in specified locations or in any location.
  • Drop data (prevent copy to output tape).

If logical records are being deblocked, all of the above (except block length changing) can be applied to each logical record.

Note

Changes to the input blocks never affect the input tape. Modified blocks are written only to the output tape, if present.

Output tape processing

If the output tape DD statement TAPEOUT is present, FATAR will copy each file read from TAPEIN to the output tape. This will be an exact copy of the input, unless you request modification of one or more data blocks, or dropping of certain data blocks. You may also request that entire files be dropped from the copy.

By default, any block that had an unrecoverable data check when read from TAPEIN will not be written to TAPEOUT, but you may override this.

FATAR will issue a standard OPEN and CLOSE for each file on TAPEOUT.

If the output tape is in ASCII format, the data blocks will be translated from EBCDIC to ASCII before they are written. If the records are variable format, appropriate conversion to or from the ASCII variable format and the IBM format will be done. By default, the EBCDIC-ASCII translation table used includes only the most common characters. If you need translation of other characters, such as the Euro character, see the ASCII= operand for custom translation tables. Note that if both the input and output tapes are in ASCII format, data will be copied without translation but any data displayed or tested by FATAR will be translated to EBCDIC.

FATAR performance

FATAR must read every block on the input tape(s) and, when copying, write each block to the output. Its performance is dependent on several factors, including:

  • the blocksize of the data file; smaller blocks will take longer
  • the type of tape drive
  • the type of channel on which the drive is attached (FICON or ESCON)

To give you some idea of what to expect, we have run tests at using tapes containing large blocksizes. These tests used IBM 3490Es, IBM 3590s, IBM TS1130s, EMC DLms, and StorageTek T10000s on FICON channels. Both the 3490E and 3590 volumes were IDRC-compressed. The 3490E volume contained 1.3 GB of data (before compression) and the 3590 volume contained 43.8 GB (before compression).

  1. Copy one 3490E volume (1.3 GB before compression) to one TS1130 volume – 8.0 minutes (2.8 MB/sec).
  2. Copy one 3490E volume (1.3 GB before compression) to one T10000 volume – 8.5 minutes (2.6 MB/sec).
  3. Analyze one 3590 volume (43.8 GB before compression) – 79.0 minutes (9.5 MB/sec).
  4. Copy one 3590 volume (43.8 GB before compression) to one EMC DLm volume – 76.5 minutes (9.8 MB/sec).

These are sample times from a specific environment; your results will vary.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*