Updating volume data references in a storage system
Converting data formats in a storage system: converting first data in a first format to second data in a second format, wherein second data in the second format includes a reference to the first data, wherein the first data and the second data are associated with a dataset, including updating the second data to include: a reference to first data associated with a portion of the dataset that precedes a data-converted portion of the dataset; second data associated with the data-converted portion of the dataset, wherein the second data associated with the data-converted portion of the dataset is in the second data format; and a reference to first data associated with a portion of the dataset that follows the data-converted portion of the dataset; and replacing first data associated with the data-converted portion of the dataset with a reference to the second data associated with the data-converted portion of the dataset.
1 . A method comprising:
responsive to detecting a change to a volume stored in a storage system, storing:
one or more references to a portion of metadata of the volume, that precedes or follows another portion of the metadata to be updated due to the change; and
the other portion of the metadata that corresponds to the change, wherein the portion of the metadata and the other portion of the metadata are in different formats.
2 . The method of claim 1 further comprising:
updating system software in the storage system, wherein the updated system software utilizes metadata in a second data format and a previously installed version of the system software utilizes metadata in a first data format, wherein:
the portion of the metadata includes metadata describing the volume; and
the other portion of the metadata includes metadata describing the volume.
3 . The method of claim 1 further comprising executing, as a background process on a storage array controller, a data conversion process.
4 . The method of claim 3 wherein executing the data conversion process further comprises:
updating the metadata to include:
a reference to a first portion of the metadata that precedes the other portion of the metadata;
the other portion of metadata; and
a reference to a third portion of the metadata that follows the other portion of metadata.
5 . The method of claim 2 further comprising:
copying a dataset stored at a first location in the storage system;
storing, at a second location within the storage system, the copy of the dataset;
copying metadata associated with the dataset stored at the first location in the storage system, wherein the metadata associated with the dataset stored at the first location in the storage system includes metadata in the second data format and metadata in the first data format; and
storing, at a third location in the storage system, the metadata, wherein the metadata stored at the third location is associated with the copy of the dataset stored at the second location within the storage system.
6 . The method of claim 1 further comprising placing the portion of metadata and the other portion of metadata in the storage system in dependence upon one or more space efficiency considerations.
7 . An apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:
responsive to detecting a change to a volume stored in a storage system, storing:
one or more references to a portion of metadata of the volume, that precedes or follows another portion of the metadata to be updated due to the change; and
the other portion of the metadata that corresponds to the change, wherein the portion of the metadata and the other portion of the metadata are in different formats.
8 . The apparatus of claim 7 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of:
updating system software in the storage system, wherein the updated system software utilizes metadata in a second data format and a previously installed version of the system software utilizes metadata in a first data format, wherein:
the portion of the metadata includes metadata describing the volume; and
the other portion of the metadata includes metadata describing the volume.
9 . The apparatus of claim 7 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of executing, as a background process on a storage array controller, a data conversion process.
10 . The apparatus of claim 7 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:
updating the metadata to include:
a reference to a first portion of the metadata that precedes the other portion of the metadata;
the other portion of metadata; and
a reference to a third portion of the metadata that follows the other portion of metadata.
11 . The apparatus of claim 8 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:
copying a dataset stored at a first location in the storage system;
storing, at a second location within the storage system, the copy of the dataset;
copying metadata associated with the dataset stored at the first location in the storage system, wherein the metadata associated with the dataset stored at the first location in the storage system includes metadata in the second data format and metadata in the first data format; and
storing, at a third location in the storage system, the metadata, wherein the metadata stored at the third location is associated with the copy of the dataset stored at the second location within the storage system.
12 . The apparatus of claim 7 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of placing the portion of metadata and the other portion of metadata in the storage system in dependence upon one or more space efficiency considerations.
13 . A computer program product disposed upon a non-transitory computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:
responsive to detecting a change to a volume stored in a storage system, storing:
one or more references to a portion of metadata of the volume, that precedes or follows another portion of the metadata to be updated due to the change; and
the other portion of the metadata that corresponds to the change, wherein the portion of the metadata and the other portion of the metadata are in different formats.
14 . The computer program product of claim 13 further comprising computer program instructions that, when executed, cause a computer to carry out the step of:
updating system software in the storage system, wherein the updated system software utilizes metadata in a second data format and a previously installed version of the system software utilizes metadata in a first data format, wherein:
the portion of the metadata includes metadata describing the volume; and
the other portion of the metadata includes metadata describing the volume.
15 . The computer program product of claim 13 further comprising computer program instructions that, when executed, cause a computer to carry out the step of executing, as a background process on a storage array controller, a data conversion process.
16 . The computer program product of claim 13 further comprising computer program instructions that, when executed, cause the computer to carry out the steps of:
updating the metadata to include:
a reference to a first portion of the metadata that precedes the other portion of the metadata;
the other portion of metadata; and
a reference to a third portion of the metadata that follows the other portion of metadata.
17 . The computer program product of claim 14 further comprising computer program instructions that, when executed, cause a computer to carry out the steps of:
copying a dataset stored at a first location in the storage system;
storing, at a second location within the storage system, the copy of the dataset;
copying metadata associated with the dataset stored at the first location in the storage system, wherein the metadata associated with the dataset stored at the first location in the storage system includes metadata in the second data format and metadata in the first data format; and
storing, at a third location in the storage system, the metadata, wherein the metadata stored at the third location is associated with the copy of the dataset stored at the second location within the storage system.