发明名称 Accessing data in a storage system
摘要 Embodiments of the invention relate to accessing data that spans multiple storage devices in a storage system. A first index records identifiers of data blocks and their storage locations, and a second index records storage locations. An update request is processed by writing multiple copies of a received data block identifier and the updated data block to storage locations recorded in the second index. A read request is processed by performing a quorum read of the storage locations recorded in the second index to retrieve the updated data blocks. The processing of the read request also includes performing a quorum read of the first index to determine storage locations that contain data blocks to be read as part of processing the read request. The data blocks to be read exclude the updated data blocks.
申请公布号 US8959301(B2) 申请公布日期 2015.02.17
申请号 US201213673183 申请日期 2012.11.09
申请人 International Business Machines Corporation 发明人 Becker-Szendy Ralph A.;Deenadhayalan Veera W.;Guthridge D. Scott;Wyllie James C.
分类号 G06F12/16;G06F11/14 主分类号 G06F12/16
代理机构 Cantor Colburn LLP 代理人 Cantor Colburn LLP ;Kanehira Yusuke
主权项 1. A method for accessing data in a storage system, the method comprising: writing data blocks to a first set of storage locations, the first set of storage locations spanning a plurality of storage devices and the writing comprising, for each data block: writing multiple copies of the data block to a subset of the first set of storage locations, the subset of the first set of storage locations located on at least two of the storage devices; andrecording, in a first index, an identifier of the data block and identifiers of the subset of the first set of storage locations;recording, in a second index, identifiers of storage locations in a second set of storage locations, the second set of storage locations spanning the plurality of storage devices;processing an update request that includes an identifier of one of the data blocks to be updated and an updated data block, the processing an update request comprising writing multiple copies of the received identifier and the updated data block to a subset of the second set of storage locations, the subset of the second set of storage locations located on at least two of the storage devices and selected based on the second index; and processing a read request, the processing a read request comprising: performing a quorum read of the second set of storage locations to retrieve the updated data blocks; andperforming a quorum read of the first index to determine storage locations in the first set of storage locations that contain data blocks to be read as part of processing the read request, the data blocks to be read excluding the updated data blocks, wherein performance of the processing of the update request is preserved by writing the received identifier and the updated data block to the second set of storage locations and the processing of the read request is preserved by utilizing the first index to locate storage locations to be read in the first set of storage locations.
地址 Armonk NY US