发明名称 Systems and methods to manage tiered cache data storage
摘要 Systems and methods for managing records stored in a storage cache are provided. A cache index is created and maintained to track where records are stored in buckets in the storage cache. The cache index maps the memory locations of the cached records to the buckets in the cache storage and can be quickly traversed by a metadata manager to determine whether a requested record can be retrieved from the cache storage. Bucket addresses stored in the cache index include a generation number of the bucket that is used to determine whether the cached record is stale. The generation number allows a bucket manager to evict buckets in the cache without having to update the bucket addresses stored in the cache index. Further, the bucket manager is tiered thus allowing efficient use of differing filter functions and even different types of memories as may be desired in a given implementation.
申请公布号 US9489239(B2) 申请公布日期 2016.11.08
申请号 US201514810366 申请日期 2015.07.27
申请人 PernixData, Inc. 发明人 Jung Woon Ho;Dhotre Nakul;Jain Deepak;Pang Anthony
分类号 G06F12/10;G06F9/50;G06F12/12 主分类号 G06F12/10
代理机构 Gard & Kaslow LLP 代理人 Gard & Kaslow LLP
主权项 1. A method of performing read commands and write commands to a tiered bucket manager comprising a master bucket manager, a slave bucket manager and a migration thread, the method comprising: receiving a write command sent from a first virtual machine to a host operating system running on a computing system, the write command instructing a storage system to store a first record at a first memory location, and storing the first record in a first bucket of the master bucket manager if the master bucket manager is not full, elseevicting a second bucket of the master bucket manager that has been migrated to the slave bucket manager and storing the first record in the evicted second bucket of the master bucket manager, elseevicting a third bucket of the master bucket manager and storing the first record in the third bucket of the master bucket manager; and receiving a read command sent from the first virtual machine to the host operating system running on the computing system, the read command instructing the storage system to read a second record from a second memory location, and determining that the second record is in the master bucket manager and reading the second record from the master bucket manager, elsedetermining that the second record has been evicted or migrated from the master bucket manager, determining that the second record is in the slave bucket manager, reading the second record from the slave bucket manager, performing a reverse filter function on the second record read from the slave bucket manager using the migration thread, writing the reverse filter functioned second record to the master bucket manager, and reading the reverse filter functioned second record from the master bucket manager.
地址 San Jose CA US