发明名称 STORAGE SYSTEM REDUNDANT ARRAY OF SOLID STATE DISK ARRAY
摘要 A storage system includes a storage processor coupled to solid state disks (SSDs) and a host, the SSDs are identified by SSD logical block addresses (SLBAs). The storage processor receives a command from the host to write data to the SSDs and further receives a location within the SSDs to write the data, the location being referred to as a host LBA. The storage processor includes a central processor unit (CPU) subsystem and maintains unassigned SLBAs of a corresponding SSD. The CPU subsystem upon receiving the command to write data, generates sub-commands based on a range of host LBAs derived from the received command and further based on a granularity. At least one of the host LBAs is non-sequential relative to the remaining host LBAs. The CPU subsystem assigns the sub-commands to unassigned SLBAs by assigning each sub-command to a distinct SSD of a stripe, the host LBAs being decoupled from the SLBAs. The CPU subsystem continues to assign the sub-commands until all remaining SLBAs of the stripe are assigned, after which it calculates parity for the stripe and saves the calculated parity to one or more of the SSDs of the stripe.
申请公布号 US2015212752(A1) 申请公布日期 2015.07.30
申请号 US201514678777 申请日期 2015.04.03
申请人 Avalanche Technology, Inc. 发明人 Nemazie Siamack;Asnaashari Mehdi;Shah Ruchirkumar D.
分类号 G06F3/06 主分类号 G06F3/06
代理机构 代理人
主权项 1. A storage system comprising: a storage processor coupled to a plurality of solid state disks (SSDs) and a host, the plurality of SSDs being identified by SSD logical block addresses (SLBAs), the storage processor responsive to a command from the host to write to the plurality of SSDs, the command from the host accompanied by information used to identify a location within the plurality of SSDs to write data, the identified location referred to as a host LBA, the storage processor including a central processor unit (CPU) subsystem and maintaining unassigned SLBAs of a corresponding SSD, a, the CPU subsystem being operable to: upon receiving a command to write data, generate sub-commands based on a range of host LBAs derived from the received command based on a granularity, at least one of the host LBAs of the host LBAs being non-sequential relative to the remaining host LBAs,assign the sub-commands to unassigned SLBAs wherein each sub-command is assigned to a distinct SSD of a stripe, the host LBAs being decoupled from the SLBAs,continue to assign the sub-commands until all remaining SLBAs of the stripe are assigned,calculate parity for the stripe; andsave the calculated parity to one or more of the SSDs of the stripe.
地址 Fremont CA US