1. A method for matching fingerprints of data from network traffic to an index of fingerprints identifying locations of stored data in a compression history, the method comprising: (a) storing, by a device intermediary to a plurality of clients and a plurality of servers, data from network traffic communicated between the plurality of clients and the plurality of servers in a plurality of storage locations of a compression history, the device establishing a compression index comprising indexes of fingerprints of data stored in the plurality of storage locations of the compression history; (b) identifying, by the device, that a fingerprint of data received via network traffic between a client and a server matches a plurality of indexes in the compression index, each index of the plurality of indexes identifying one or more storage location identifiers corresponding to a storage location of the plurality of storage locations of the compression history; and (c) selecting, by the device from the plurality of matching entries, a matching entry having a number of storage location identifiers less than one or more other matching entries from the plurality of matching entries; and (d) compressing, by the device, the received data using data stored at a storage location identified by the selected matching entry.