Patent ID: 8478933

Claim:
A method for processing data stored on a sequential, non-transitory, storage media within a computational computing environment, the method comprising: loading a block reference table and most often read blocks from a modified tape format of a sequential storage media into an internal memory of a sequential storage media device; during write command processing, performing a data deduplication procedure using a modified block reference table, wherein for each data stored at a predefined device block address an identity-characterizing bit string is defined, the identity-characterizing bit string is determined for all data transferred as part of the write command, a data identity search for the identity-characterizing bit string of the transferred data is performed using the modified block reference table for finding identical data blocks, and identical host block data are stored under a single device block address and referenced in the block reference table; determining if entries from the block reference table must be deleted and responsive to the data identity search and deleting host block and device block entries from the block reference table; performing a modified read processing for reading the data of a plurality of device block addresses by using the block reference table; mapping host blocks to device blocks and the most often read blocks cached in the internal memory; wherein the mapping comprises: receiving a read command; determining requested host block addresses from the read command; mapping the host blocks to device blocks using the block reference table; identifying cached device blocks stored in internal cache memory; sorting remaining not-cached device blocks in an ascending order corresponding to a processing order of sequential tape; and reading cached and not-cached device blocks from the tape and from the internal memory into a write/read operation buffer; storing a read count for each device block in the block reference table; determining how often the device block data has been read; during read-command processing, increasing the read count for device blocks read; determining if the read count for one or more of a requested device block is highest; copying the device block data for device blocks with a highest read count to the internal memory as a most often read block; and writing to tape most often read blocks into a reserved area of the tape.