Dedicated client-side signature generator in a networked storage system
First Claim
1. A method of maintaining a signature repository in a data storage system, the method comprising:
- tracking storage of a plurality of data units in a primary storage subsystem, the plurality of data units stored in a native format corresponding to one or more source applications, the primary storage subsystem in communication with a secondary storage subsystem that is separate from the primary storage subsystem and is configured to maintain secondary copies of at least some of the plurality of data units, the secondary copies stored in the secondary storage subsystem in a non-native format;
generating, by a signature agent executing on one or more processors signatures corresponding to the plurality of data units in the primary storage subsystem during a copy operation to the secondary storage subsystem;
maintaining a secondary storage signature repository in the secondary storage subsystem and a primary storage signature repository in the primary storage subsystem,wherein the secondary storage signature repository comprises signature blocks for one or more unique signatures associated with data units in the secondary storage subsystem;
wherein the primary storage signature repository in the primary storage subsystem comprises signature blocks for one or more unique signatures of the generated signatures associated with data units in the primary storage subsystem, where the signature blocks in the primary storage signature repository comprise;
the unique signature; and
one or more data unit entries, each entry corresponding to at least one of the of the plurality of data units in the primary storage subsystem associated with the unique signature; and
wherein when a first data unit stored in a first location in the primary storage subsystem has the same unique signature as a second data unit stored in a second location in the primary storage subsystem, modifying the associated signature block in the primary storage signature repository to comprise;
a first data unit entry that identifies the first storage location in the primary storage subsystem, anda second data unit entry that identifies the second storage location in the primary storage subsystem.
2 Assignments
0 Petitions
Accused Products
Abstract
A storage system according to certain embodiments includes a client-side signature repository that includes information representative of a set of data blocks stored in primary storage. During storage operations of a client, the system can generate signatures corresponding to data blocks that are being stored in primary storage. The system can store the generated signatures in the client-side signature repository along with information regarding the location of the corresponding data block within primary storage. As additional instances of the data block are stored in primary storage, the system can store the location of the additional instances in the client-side signature repository.
-
Citations
20 Claims
-
1. A method of maintaining a signature repository in a data storage system, the method comprising:
-
tracking storage of a plurality of data units in a primary storage subsystem, the plurality of data units stored in a native format corresponding to one or more source applications, the primary storage subsystem in communication with a secondary storage subsystem that is separate from the primary storage subsystem and is configured to maintain secondary copies of at least some of the plurality of data units, the secondary copies stored in the secondary storage subsystem in a non-native format; generating, by a signature agent executing on one or more processors signatures corresponding to the plurality of data units in the primary storage subsystem during a copy operation to the secondary storage subsystem; maintaining a secondary storage signature repository in the secondary storage subsystem and a primary storage signature repository in the primary storage subsystem, wherein the secondary storage signature repository comprises signature blocks for one or more unique signatures associated with data units in the secondary storage subsystem; wherein the primary storage signature repository in the primary storage subsystem comprises signature blocks for one or more unique signatures of the generated signatures associated with data units in the primary storage subsystem, where the signature blocks in the primary storage signature repository comprise; the unique signature; and one or more data unit entries, each entry corresponding to at least one of the of the plurality of data units in the primary storage subsystem associated with the unique signature; and wherein when a first data unit stored in a first location in the primary storage subsystem has the same unique signature as a second data unit stored in a second location in the primary storage subsystem, modifying the associated signature block in the primary storage signature repository to comprise; a first data unit entry that identifies the first storage location in the primary storage subsystem, and a second data unit entry that identifies the second storage location in the primary storage subsystem. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A storage system, comprising:
-
a signature repository agent executing on one or more processors, a primary storage subsystem that tracks storage of a plurality of data units stored in a native format in the primary storage subsystem, the plurality of data units corresponding to one or more source applications; a secondary storage subsystem in communication with the primary storage subsystem, the secondary storage subsystem is separate from the primary storage subsystem and maintains secondary copies of at least some of the plurality of data units, the secondary copies in the secondary storage subsystem stored in a non-native format; and a signature repository agent that generates signatures corresponding to the plurality of data units in the primary storage subsystem during a copy operation to the secondary storage subsystem, the signature repository agent further maintains a secondary storage signature repository in the secondary storage subsystem and a primary storage signature repository in the primary storage subsystem, wherein the secondary storage signature repository comprises signature blocks for one or more unique signatures associated with data units in the secondary storage subsystem; wherein the primary storage signature repository in the primary storage subsystem comprises signature blocks for one or more unique signatures of the generated signatures associated with data units in the primary storage subsystem, where the signature blocks in the primary storage signature respository comprises; the unique signature; and one or more data unit entries corresponding to at least one of the plurality of data units in the primary storage subsystem associated with the unique signature; and wherein when a first data unit stored in a first location in the primary storage subsystem has the same unique signature as a second data unit stored in a second location in the primary storage subsystem, the signature repository agent modifies the associated signature block in the primary storage signature repository to comprise; a first data unit entry that identifies the first storage location in the primary storage subsystem, and a second data unit entry that identifies the second storage location in the primary storage subsystem. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification