Patent ID: 8650370

Claim:
A non-transitory computer-readable medium storing a data storing program executed by an archive device including a first storage unit for storing data and a second storage unit for storing a hash value determined from the data, the program causing the archive device to execute a process comprising: storing, in the second storage unit, a ratio of storage which an external device has requested to store the same data as data in the first storage unit; determining whether a hash-value calculating process is to be performed by either the external device or the archive device in accordance with CPU utilization of the archive device and the ratio of storage with regard to the external device; and executing a first process when the determining determines the hash-value calculating process is to be performed by the external device, while executing a second process when the determining determines the hash-value calculating process is to be performed by the archive device, wherein the first process includes: instructing the external device to perform the hash-value calculating process, receiving a new hash value determined from the data to be stored from the external device which requests storage of the data, comparing the newly received hash value with the hash value stored in the second storage unit, and transmitting request information for transmitting the data corresponding to the newly received hash value to the external device which transmits the newly received hash value when the newly received hash value has not been stored in the second storage unit, wherein the second process includes: instructing the external device to transmit the data, receiving the data from the external device, determining the hash value from the received data, comparing the determined hash value with the hash value stored in the second storage unit, and storing the received data in the first storage unit when the determined hash value has not been stored in the second storage unit.