Cache data location system
    11.
    发明授权

    公开(公告)号:US11113206B2

    公开(公告)日:2021-09-07

    申请号:US16396555

    申请日:2019-04-26

    Abstract: A system may include a persistent storage device, a low latency cache device, a volatile memory; and a processor. The processor is to store a data structure in the volatile memory that is usable to directly translate a block logical address for targeted data to a candidate physical location on the cache device, store a multilevel translation index in the volatile memory for translating the block logical address for the targeted data to an expected physical location of the targeted data on the cache device and attempt accessing the targeted data at the candidate physical location retrieved from the direct cache address translation data structure. In response to the targeted data not being at the candidate physical address, access the targeted data at the expected physical location retrieved from the multilevel translation index.

    DYNAMIC ADJUSTMENT OF FINGERPRINTS ADDED TO A FINGERPRINT INDEX

    公开(公告)号:US20200301593A1

    公开(公告)日:2020-09-24

    申请号:US16361367

    申请日:2019-03-22

    Abstract: In some examples, a system dynamically adjusts a proportion of incoming data blocks for which respective fingerprints are added to a fingerprint index, where the fingerprint index correlates fingerprints for data blocks to storage location indicators for the data blocks. The system inputs, into a buffer, fingerprint index delta updates for the incoming data blocks according to the dynamically adjusted proportion, and updates the fingerprint index based on the fingerprint index delta updates input into the buffer. The system retrieves, in response to a fingerprint of an incoming data block, a collection of block entries from a block location index that stores information for data blocks in temporal order, and deduplicates the incoming data blocks using the collection of block entries from the block location index.

    Memory allocator
    13.
    发明授权

    公开(公告)号:US10733027B2

    公开(公告)日:2020-08-04

    申请号:US16153792

    申请日:2018-10-07

    Abstract: This disclosure is directed to a technique for memory management where physical memory areas may be partitions into a hierarchy of portions, the hierarchy may include a domain level that includes a page level that includes a slice level that includes an object level. Objects within a slice are a consistent size but may be different sized for different slices. A set of states reflecting memory usage status for each of the slices includes: a clean state for unused; a partial state; a full state; and a dirty state. Responses to allocation requests may be performed by selecting objects that are in a most preferred state based on a state allocation cost and a memory allocation cost either alone or in combination. A compact memory layout may be used to reduce run-time fragmentation of memory.

    Merging buffered fingerprint index entries

    公开(公告)号:US11354289B2

    公开(公告)日:2022-06-07

    申请号:US16669930

    申请日:2019-10-31

    Abstract: In some examples, a system receives, in a synchronization buffer stored in a memory, fingerprint index entries for respective data units received by the system, each fingerprint index entry of the fingerprint index entries comprising a fingerprint computed for a corresponding data unit, and a storage location indicator for the corresponding data unit. The system merges the fingerprint index entries in the synchronization buffer with fingerprint index entries of a persistent fingerprint index in a hash data structure stored in persistent storage, the hash data structure comprising a plurality of buckets.

    INCREASING SIZES OF BUCKETS OF A FINGERPRINT INDEX

    公开(公告)号:US20210132837A1

    公开(公告)日:2021-05-06

    申请号:US16669941

    申请日:2019-10-31

    Abstract: In some examples, a system performs data deduplication using a fingerprint index comprising a plurality of buckets, each bucket of the plurality of buckets comprising entries associating fingerprints for data units to storage location indicators of the data units, wherein a storage location indicator of the storage location indicators provides an indication of a storage location of a data unit in persistent storage. For adding a new fingerprint to the fingerprint index, the system detects that a corresponding bucket of the plurality of buckets is full, in response to the detecting, adds space to the corresponding bucket by taking a respective amount of space from a further bucket of the plurality of buckets, and inserts the new fingerprint into the corresponding bucket after increasing the size of the corresponding bucket.

Patent Agency Ranking