Data duplication method and storage array. A controller is connected to a cache device via a switching device. The cache device calculates an eigenvalue of a to-be-deleted data block. The controller searches for a data block eigenvalue index set on the basis of the eigenvalue of the to-be-deleted data block. When no identical eigenvalue is found, the controller transmits a cache address of the to-be-deleted data block in the cache device to a controller of a target hard drive. The controller of the target hard drive reads the to-be-deleted data block from the cache address of the data block.