Patent ID: 8332600
Filing Date: 2012-12-11
Classification: G06F

Abstract:
1. A storage system comprising: an I/O processor that performs I/O processing for a P-VOL serving as a first logical volume; a snapshot processor that, in order to reproduce snapshots representing states of the P-VOL at respective points in time, stores, in a D-VOL serving as a second logical volume, differential data generated by updating data in the P-VOL; a plurality of snapshot management tables for the snapshots each storing records for a respective snapshot, each record of each snapshot management table for a respective snapshot having a first address and a second address registered in association with the first address, the first address specifying a first storage area of the P-VOL, the second address specifying a second storage area of the D-VOL storing therein the differential data generated by updating data stored in the first storage area specified by the first address at the respective point in time for the snapshot; and a differential data management unit that determines, upon receipt of a request for updating data in the P-VOL, whether or not the same data as target data to be stored in the D-VOL is already stored in the D-VOL, the target data being differential data generated by the update, wherein, if the same data as the target data is not stored in the D-VOL, the differential data management unit stores the target data in an unused second storage area of the D-VOL, and registers, as a record in a corresponding one of the snapshot management tables, an address that specifies the second storage area where the target data is stored as the second address of the record, in association with an address in the P-VOL addressed by the update request as the first address of the record, wherein, if the same data as the target data is stored in the D-VOL, the differential data management unit does not store the target data in the D-VOL, and registers, as a record in the corresponding snapshot management table, an address that specifies the second storage area where the same data as the target data is stored as the second address of the record, in association with the address in the P-VOL addressed by the update request as the first address of the record, wherein the differential data management unit manages a differential data management table that stores, in association with each of the second addresses, a count of the records in the snapshot management tables having the second address registered therein, and wherein the differential data management unit, upon receipt of a snapshot deletion request for one of the snapshots, identifies each second address specifying a second storage area of the D-VOL storing therein differential data generated for the snapshot from the records of the snapshot management table for the snapshot, and, for each identified second address, determines whether the second address is registered in a record of the snapshot management table for any of the other snapshots based on the count of records for the second address in the differential data management table and deletes the differential data stored at the second address from the D-VOL if the second address is not registered in a record of the snapshot management table for any of the other snapshots.