Patent ID: 8612696

Claim:
A system for storing data comprising: an interface configured to receive a data stream comprising a plurality of data segments; a processor configured to: preliminarily check whether a data segment identical to a first data segment in the plurality of data segments is already stored in a data segment repository based at least in part on a determination of whether the data segment identical to the first data segment is in a memory having a relatively low latency, wherein the memory having the relatively low latency stores data segment information associated with at least a subset of data segments already stored in the data segment repository; in the event that the preliminary check determines that the data segment identical to the first data segment may have already been stored in the data segment repository, check in a memory having a relatively higher latency to determine whether the data segment identical to the first data segment has been stored previously in the data segment repository; and store the first data segment in the data segment repository only in the event that the data segment identical to the first data segment is determined not to have been previously stored in the data segment repository.