Data Integrity Within EDAM
Original Publication Date: 1982-Jan-01
Included in the Prior Art Database: 2005-Feb-08
Cesa, LJ: AUTHOR [+3]
There is described an integrity algorithm used within the Extended Direct-Access Method (EDAM), which helps to conserve disk space while protecting data.
Data Integrity Within EDAM
There is described an integrity algorithm used within the Extended Direct- Access Method (EDAM), which helps to conserve disk space while protecting data.
A set of programs, EDAM, has been developed to manege large amounts of data spread over several direct-access data sets. Developed to aid those applications which require more main memory for their tables than the 16- megabyte MVS (Multiple Virtual Storage) region will allow, EDAM has the capability to address more than one tTerabyte (1,000,000,000,000 bytes) of real data. EDAM stores this data on as many Basic Direct Access Method (EDAM) data sets as are required. The methods and algorithms necessary to protect the user data are described below.
In today's environment, users of tremendous amounts of data must be intimately concerned with the integrity of their data. Integrity solutions for partitioned data sets usually incorporate a multiple copy/ compress scheme. For large amounts of data it is unreasonable to have 'extra' copies of the data around. This needlessly ties up system resources and puts an additional management burden on the user. Users of direct-access data sets must contend with checkpoint problems involved with system failures when partial updating has occurred. The integrity algorithm implemented in EDAM handles these problems in a manner transparent to the user.
The basic philosophy behind the integrity schemes in EDAM is to maintain one copy of each page that has been modified since the last checkpoint or close operation. This scheme applies to internal directory pages as well as data pages. A page is written to a new EDAM disk slot the first time it is paged out during a run.
The Least Recently Used (LRU) queue maintains the status of all pages in EDAMs main storage buffers. When a request for a free buffer page is made, EDAM looks at the LRU page to determine whether a PAGE-OUT is required. (A PAGE-OUT is required if a page has been modified since it was last read into main storage. This is indicated by a flag in the LRU entry). If the page has not been modified, then a PAGE-OUT is avoided and EDAM merely releases the page buffer for use.
In the case where the LRU page has been modified, EDAM then checks to see if a new disk slot has already been assigned to the page (which is indicated by a flag in the parent directory for the page). If a new page has been assigned, EDAM initiates the input/ output (I/O) to write modified page to the already assigned disk address found in the LRU entry. If a new disk slot has not been assigned to the page, then EDAM makes a request for an available disk slot to assign to the page. After a disk slot has been assigned, the I/O proceeds as above. The old disk slot is placed on the RELEASED LIST for use after the next checkpoint or close, and the flag in the parent directory, indicating a new disk slot has been a...