# US 10,503,417 B2 · Data element validation in consistency groups

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,503,417 B2
- Document ID: US10503417B2
- Status: Granted
- Kind: B2
- Application number: 15/935,013
- Filed: 2018-03-25
- Published: 2019-09-26
- Granted: 2019-12-10
- Earliest claimed: 2018-03-25
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Gregory E. McBride; David C. Reed
- Web page: https://patentgrep.com/patent/US10503417B2

## CPC

- G06F 3/0619: {in relation to data integrity, e.g. data losses, bit errors}
- G06F 3/0644: {Management of space entities, e.g. partitions, extents, pools}
- G06F 3/065: {Replication mechanisms}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F 3/0673: {Single storage device}
- G06F 11/0727: {in a storage system, e.g. in a DASD or network based storage system (drivers for digital recording or reproducing units G06F3/06; circuits for error detection or correction within digital recording or reproducing units G11B20/18; for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS], H04L67/1097)}
- G06F 11/0751: {Error or fault detection not based on redundancy (power supply failures G06F1/30; network fault management H04L41/06)}
- G06F 11/1446: Point-in-time backing up or restoration of persistent data
- G06F 11/2064: {while ensuring consistency}
- G06F 11/2094: {Redundant storage or storage space (G06F11/2056 takes precedence)}
- G06F 11/2097: {maintaining the standby controller/processing unit updated (initialisation or re-synchronisation thereof G06F11/1658 and subgroups)}
- G06F 2201/84: Using snapshots, i.e. a logical point-in-time copy of the data
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method for validating data is disclosed. In one embodiment, such a method includes reading a data element from a volume. The method determines a location of the data element within the volume. This location is mapped to a particular data set stored on the volume, such as by mapping the location to the particular data set using a volume table of contents (VTOC) associated with the volume. The method further determines a first identifier (e.g., a creation date) associated with the particular data set and compares this first identifier to a second identifier (e.g., a creation date) appended to the data. If the first identifier matches the second identifier, the method validates the data. A corresponding system and computer program product are also disclosed.

## Claims

### Claim 1

A method for validating data, the method comprising:
reading a data element from a volume;
determining a location of the data element within the volume;
mapping the location to a particular data set stored on the volume;
determining a first identifier associated with the particular data set;
comparing the first identifier to a second identifier appended to the data element; and
if the first identifier matches the second identifier, validating the data element.

### Claim 2 (depends on 1)

The method of claim 1, wherein mapping the location to the particular data set comprises mapping the location to the particular data set in a volume table of contents (VTOC) associated with the volume.

### Claim 3 (depends on 1)

The method of claim 1, wherein the particular data set is an extended format data set.

### Claim 4 (depends on 1)

The method of claim 1, wherein the first identifier is a creation date associated with the data set.

### Claim 5 (depends on 1)

The method of claim 1, wherein the second identifier is extracted from an affix appended to the data element.

### Claim 6 (depends on 5)

The method of claim 5, wherein the second identifier is metadata associated with the data element.

### Claim 7 (depends on 1)

The method of claim 1, in the event the data element is validated, copying the data element from the volume to another volume.

### Claim 8

A computer program product for validating data, the computer program product comprising a computer-readable storage medium having computer-usable program code embodied therein, the computer-usable program code configured to perform the following when executed by at least one processor:
read a data element from a volume;
determine a location of the data element within the volume;
map the location to a particular data set stored on the volume;
determine a first identifier associated with the particular data set;
compare the first identifier to a second identifier appended to the data element; and
if the first identifier matches the second identifier, validate the data element.

### Claim 9 (depends on 8)

The computer program product of claim 8, wherein mapping the location to the particular data set comprises mapping the location to the particular data set in a volume table of contents (VTOC) associated with the volume.

### Claim 10 (depends on 8)

The computer program product of claim 8, wherein the particular data set is an extended format data set.

### Claim 11 (depends on 8)

The computer program product of claim 8, wherein the first identifier is a creation date associated with the data set.

### Claim 12 (depends on 8)

The computer program product of claim 8, wherein the second identifier is extracted from an affix appended to the data element.

### Claim 13 (depends on 12)

The computer program product of claim 12, wherein the second identifier is metadata associated with the data element.

### Claim 14 (depends on 8)

The computer program product of claim 8, wherein the computer-usable program code is further configured to, in the event the data element is validated, copy the data element from the volume to another volume.

### Claim 15

A system for validating data, the system comprising:
at least one processor;
at least one memory device operably coupled to the at least one processor and storing instructions for execution on the at least one processor, the instructions causing the at least one processor to:
read a data element from a volume;
determine a location of the data element within the volume;
map the location to a particular data set stored on the volume;
determine a first identifier associated with the particular data set;
compare the first identifier to a second identifier appended to the data element; and
if the first identifier matches the second identifier, validate the data element.

### Claim 16 (depends on 15)

The system of claim 15, wherein mapping the location to the particular data set comprises mapping the location to the particular data set in a volume table of contents (VTOC) associated with the volume.

### Claim 17 (depends on 15)

The system of claim 15, wherein the particular data set is an extended format data set.

### Claim 18 (depends on 15)

The system of claim 15, wherein the first identifier is a creation date associated with the data set.

### Claim 19 (depends on 15)

The system of claim 15, wherein the second identifier is extracted from an affix appended to the data element.

### Claim 20 (depends on 15)

The system of claim 15, wherein the instructions further cause the at least one processor to, in the event the data element is validated, copy the data element from the volume to another volume.
