发明名称 |
Storage processor managing solid state disk array |
摘要 |
A method of writing to one or more solid state disks (SSDs) employed by a storage processor includes receiving a command, creating sub-commands from the command based on a granularity, and assigning the sub-commands to the SSDs independently of the command thereby causing stripping across the SSDs. |
申请公布号 |
US8954657(B1) |
申请公布日期 |
2015.02.10 |
申请号 |
US201314040280 |
申请日期 |
2013.09.27 |
申请人 |
Avalanche Technology, Inc. |
发明人 |
Asnaashari Mehdi;Nemazie Siamack |
分类号 |
G06F12/06;G06F12/02 |
主分类号 |
G06F12/06 |
代理机构 |
IPxLaw Group LLP |
代理人 |
Imam Maryam;IPxLaw Group LLP |
主权项 |
1. A method of writing to two or more solid state disks (SSDs) having associated therewith SSD logical block addresses (SSD LBAs), the two or more SSDs employed by a storage processor, the method comprising:
receiving one or more write commands from a host, the write commands each having host logical block addresses (LBAs) and a sector count, the host LBAs including a host starting LBA and at least one of the host LBAs being non-sequential relative to the remaining host LBAs, the host starting LBA and the sector count of the write commands defining sub-commands based on the host LBAs and a granularity, the granularity being based on the sector count and each of the sub-commands being associated with a divided LBA; assigning a distinct SSD LBA to each of a plurality of sub-commands from a stripe of the two or more SSDs, wherein the SSD LBAs belong to a stripe of different SSDs thereby causing striping across all of the different SSDs before starting assigning SSD LBAs from a different stripe, wherein the SSD LBAs being assigned to sub-commands and having no relationship to the host LBAs, wherein a SSD LBA assigned to a sub-command is different from a previously-assigned SSD LBA of the same sub-command; and using a table, creating an association between the divided LBAs and the SSD LBAs, wherein the SSD LBAs assigned to the sub-commands having no prior association with the divided LBAs; and repeating assigning other SSD LBAs of the stripe to at least some of the remaining sub-commands until all the SSD LBAs of the stripe are assigned before starting assigning SSD LBAs from a different stripe. |
地址 |
Fremont CA US |