发明名称 Modular block-allocator for data storage systems
摘要 A modular block allocator receives a cleaner message requesting dirty buffers associated with an inode be cleaned. The modular block allocator provides at least one bucket cache comprising a plurality of buckets, wherein each bucket represents a plurality of free data blocks. The dirty buffers are cleaned by allocating the data blocks of one of the buckets to the dirty buffers. The allocated data blocks are mapped to a stripe set and when the stripe set is full, the stripe set is sent to a storage system. In one embodiment of the invention, a modular block allocator includes a front end module and a back end module communicating with each other via an application programming interface (API). The front end module contains write allocation policies that define how blocks are laid out on disk. The back end module creates data structures for execution of the policies.
申请公布号 US9612760(B2) 申请公布日期 2017.04.04
申请号 US201514748995 申请日期 2015.06.24
申请人 NETAPP, INC. 发明人 Kesavan Ram;Bhattacharjee Mrinal K.;Goswami Sudhanshu
分类号 G06F3/06;G06F12/0866;G06F12/02;G06F17/30 主分类号 G06F3/06
代理机构 Nixon Peabody, LLP 代理人 Nixon Peabody, LLP ;Shami Khaled
主权项 1. A method for modular block allocation, the method comprising: identifying, by a data storage computing device, one or more dirty buffers to be cleaned in response to a received cleaner message identifying one or more index nodes associated with the dirty buffers, wherein the cleaner message comprises at least one of a specific type of storage medium or a specific location on the storage medium to which data in the dirty buffers is to be written; allocating, by the data storage computing device, one or more volume block numbers (VBNs) of a file system to the dirty buffers, wherein the VBNs correspond to one or more free data blocks of a bucket in a bucket cache; mapping, by the data storage computing device, the VBNs to a stripe set and determining when the stripe set is full; and sending, by the data storage computing device, the stripe set to one or more RAID groups and updating metadata of the file system to indicate that the VBNs allocated to the free data blocks of the bucket have been used, when the determining indicates the stripe set is full.
地址 Sunnyvale CA US