发明名称 Using a conditional read request and a hash to determine synchronization of data in a cache at a host with data in storage array
摘要 In one aspect, a method includes sending a conditional read request from a host to a storage array requesting data in a data block stored at the storage array. The conditional read request includes a first hash of data in the data block at the host. The method also includes determining a second hash of the data in the data block stored at the storage array, comparing the first hash and the second hash, sending a reply from the storage array to the host with the data in the data block stored at the storage array if the first hash and the second hash differ and sending a reply from the storage array to the host without the data in the data block stored at the storage array if the first hash and the second hash are the same.
申请公布号 US8954673(B1) 申请公布日期 2015.02.10
申请号 US201213424402 申请日期 2012.03.20
申请人 EMC International Company 发明人 Natanzon Assaf;BenHanokh Zvi Gabriel;Shvaiger Felix
分类号 G06F13/00 主分类号 G06F13/00
代理机构 Daly, Crowley, Mofford & Durkee, LLP 代理人 Daly, Crowley, Mofford & Durkee, LLP
主权项 1. A method, comprising: sending a conditional read request from a host to a storage array requesting data in a data block stored at the storage array, the conditional read request comprising a first hash of data in the data block at the host, wherein sending a conditional read request from a host to a storage array comprises sending a conditional read request from the host to a storage array that is accessed by other hosts; determining a second hash of the data in the data block stored at the storage array; comparing the first hash and the second hash; sending a reply from the storage array to the host with the data in the data block stored at the storage array if the first hash and the second hash differ; sending a reply from the storage array to the host without the data in the data block stored at the storage array if the first hash and the second hash are the same; receiving a read I/O request to read the data block in the storage array; determining if data in the data block in the storage array is in a flash cache at the host; if the data in the data block is not in the flash cache: reading data in the data block in the storage array; andupdating the flash cache with the data from the storage array; if the reply includes data: updating the flash cache with the data from the reply; andanswering the read I/O request with the data from the reply; and if the reply does not include data answering the read I/O request with data from the flash cache.
地址 Hamilton BM