发明名称 Deduplication in a storage system
摘要 A IO handler receives a write command including write data that is associated with a LBA. The IO handler reserves a deduplication ID according to the LBA with which the write data is associated, within the scope of each LBA, each deduplication ID is unique. The IO handler computes a hash value for the write data. In case a deduplication database does not include an entry which is associated with the hash value, the IO handler: provides a reference key which is a combination of the LBA and the deduplication ID; adds to the deduplication database an entry which is uniquely associated with the hash value and references the reference key; and adds to a virtual address database an entry, including: the reference key; a reference indicator indicating if there is an entry that is associated with the present entry; and a pointer to where the write data is stored.
申请公布号 US9262430(B2) 申请公布日期 2016.02.16
申请号 US201213684205 申请日期 2012.11.22
申请人 Kaminario Technologies Ltd. 发明人 Tal Doron;Gordon Eyal
分类号 G06F17/30 主分类号 G06F17/30
代理机构 Wiggin and Dana LLP 代理人 Wiggin and Dana LLP ;Rosenblatt Gregory S.;Hall Jonathan D.
主权项 1. In a storage system comprising at least a first server and a second server, each server is assigned to access a respective storage location not accessible to the other server a method comprising: at the second server: receiving a write command including a write data that is associated with a logical block address; in respect of the write data: computing a hash value based on the write data;determining whether the hash value is already associated with an existing first virtual address entry, and if it is,providing a virtual address entry for the write data; wherein the first virtual address entry is stored at a storage location assigned to the first server, the first virtual address entry including: a first virtual address reference key which is a combination of the first logical block address and a first deduplication ID, wherein deduplication IDs are assigned such that within the scope of each logical block address each deduplication ID is unique;a reference indicator indicating whether or not there is at least one virtual address entry that is associated with the first virtual address entry;a first pointer pointing to a storage location, assigned to the first server, where the write data is stored; andthe first virtual address entry further comprising a validity indicator indicating whether the first write data is the latest data that is written to the first logical block address and the virtual address entry including: a virtual address reference key which includes the logical block address;a pointer pointing to the first virtual address entry stored at the storage location assigned to the first storage device; andstoring the virtual address entry in a storage location assigned to the second server; at the first server: receiving a fourth write command including a fourth write data that is associated with the first logical block address; computing a fourth hash value based on the fourth write data; determining whether the fourth hash value is already associated with an existing virtual address entry, and if not, providing a fourth virtual address entry for the fourth write data; maintaining the first virtual address entry; and updating the validity indicator of the first virtual address entry to indicate that the first write data is not the latest data that is written to the first logical block address.
地址 Yokne'am Ilit IL