Patent ID: 9104716
Filing Date: 2015-08-11
Classification: G06F,Y10S

Abstract:
1. A data storage system in which a plurality of client programs running on processors connected to a communications network share space on storage hardware used to store a data item in a data repository that uses processors at a plurality of storage sites connected to the communications network to enforce retention requirements governing the data item, the data storage system comprising one or more processors configured for: determining a digital fingerprint from the content of the data item using a hash function; storing the data item on storage hardware at the plurality of storage sites of the data repository, in response to a request from a first client program to deposit the data item in the data repository; ensuring that the data item is stored on storage hardware in the data repository, in response to a request from a second client program to deposit content identical to the data item; assigning an expiration time to the data item by the processors at each of the plurality of storage sites; reacting to a request from the second client program to delete the data item from the data repository, the reacting step comprising: separately comparing, on a processor at each of the plurality of storage sites, the expiration time assigned to the data item at the storage site with a current time value; and deleting the data item from the storage site if the expiration time has passed, and not deleting the data item if the expiration time has not yet passed; wherein the expiration time assigned by the processors at each of the plurality of storage sites defines the end of a finite time interval during which the processor at the storage site does not allow the second client program to delete the data item and does not allow the second client program to change the expiration time to an earlier time, but does allow the second client program to change the expiration time to a later time.