-
公开(公告)号:US20150293717A1
公开(公告)日:2015-10-15
申请号:US14748995
申请日:2015-06-24
Applicant: NetApp, Inc.
Inventor: Ram Kesavan , Mrinal K. Bhattacharjee , Sudhanshu Goswami
IPC: G06F3/06
CPC classification number: G06F3/0619 , G06F3/064 , G06F3/0656 , G06F3/0665 , G06F3/067 , G06F3/0689 , G06F12/023 , G06F12/0866 , G06F17/30067 , G06F17/30132
Abstract: A modular block allocator receives a cleaner message requesting dirty buffers associated with an Mode 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.
Abstract translation: 模块化块分配器接收更清晰的消息,请求与要清除的模式相关联的脏缓冲区。 模块化块分配器提供包括多个桶的至少一个桶高速缓存,其中每个桶表示多个空闲数据块。 通过将其中一个桶的数据块分配给脏缓冲区来清除脏缓冲区。 分配的数据块被映射到条带集,并且当条带集已满时,条带集被发送到存储系统。 在本发明的一个实施例中,模块化块分配器包括经由应用编程接口(API)彼此通信的前端模块和后端模块。 前端模块包含写入分配策略,定义块如何布局在磁盘上。 后端模块创建用于执行策略的数据结构。
-
公开(公告)号:US20250038756A1
公开(公告)日:2025-01-30
申请号:US18914423
申请日:2024-10-14
Applicant: NetApp, Inc.
Inventor: Ram Kesavan , Matthew Fontaine Curtis-Maury , Abdul Basit , Vinay Devadas , Ananthan Subramanian , Mark Smith
IPC: H03M1/06 , G06F3/06 , G06F16/901
Abstract: Techniques are provided for implementing a file system format for persistent memory. A node, comprising persistent memory, receives an operation comprising a file identifier and file system instance information. A list of file system info objects are evaluated to identify a file system info object matching the file system instance information. An inofile, identified by the file system info object as being associated with inodes of files within an instance of the file system targeted by the operation, is traversed to identify an inode matching the file identifier. If the inode comprises an indicator that the file is tiered into the persistent memory, then the inode it utilized to facilitate execution of the operation upon the persistent memory. Otherwise, the operation is routed to a storage file system tier for execution by a storage file system upon storage associated with the node.
-
公开(公告)号:US20240303198A1
公开(公告)日:2024-09-12
申请号:US18669907
申请日:2024-05-21
Applicant: NetApp, Inc
Inventor: Matthew Fontaine Curtis-Maury , Vinay Devadas , Ananthan Subramanian , Ram Kesavan
IPC: G06F12/0882 , G06F12/02 , G06F12/0871 , G06F16/182 , G06F16/22
CPC classification number: G06F12/0882 , G06F12/0246 , G06F12/0871 , G06F16/182 , G06F16/2246
Abstract: Techniques are provided for atomic writes for persistent memory. In response to receiving a write operation, a new per-page structure with a new page block number is allocated. New data of the write operation is persisted to a new page of the persistent memory having the new page block number, and the new per-page structure is persisted to the persistent memory. If the write operation targets a hole after the new data and the new per-page structure have been persisted, then a new per-page structure identifier of the new per-page structure is inserted into a parent indirect page of a page comprising the new data. If the write operation targets old data after the new data and the new per-page structure have been persisted, then an old per-page structure of the old data is updated with the new page block number.
-
公开(公告)号:US20240103744A1
公开(公告)日:2024-03-28
申请号:US18528556
申请日:2023-12-04
Applicant: NetApp Inc.
Inventor: Abdul Basit , Ananthan Subramanian , Ram Kesavan , Matthew Fontaine Curtis-Maury
IPC: G06F3/06
CPC classification number: G06F3/0631 , G06F3/0604 , G06F3/064 , G06F3/065 , G06F3/0679
Abstract: Techniques are provided for block allocation for persistent memory during aggregate transition. In a high availability pair including first and second nodes, the first node makes a determination that control of a first aggregate is to transition from the first node to the second node. A portion of available free storage space is allocated from a first persistent memory of the first node as allocated pages within the first persistent memory. Metadata information for the allocated pages is updated with an identifier of the first aggregate to create updated metadata information reserving the allocated pages for the first aggregate. The updated metadata information is mirrored to the second node, so that the second node also reserves those pages. Control of the first aggregate is transitioned to the second node. As a result, the nodes do not attempt allocating the same free pages to different aggregates during a transition.
-
公开(公告)号:US20240086116A1
公开(公告)日:2024-03-14
申请号:US18513894
申请日:2023-11-20
Applicant: NetApp Inc.
Inventor: Ram Kesavan , Matthew Fontaine Curtis-Maury , Abdul Basit , Vinay Devadas , Ananthan Subramanian
CPC classification number: G06F3/0659 , G06F3/0619 , G06F3/0644 , G06F3/0653 , G06F3/067 , G06F3/0683 , G06F11/1417 , G06F11/1464 , G06F11/1469
Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.
-
公开(公告)号:US20230409443A1
公开(公告)日:2023-12-21
申请号:US18459265
申请日:2023-08-31
Applicant: NetApp Inc.
Inventor: Ananthan Subramanian , Ram Kesavan , Matthew Fontaine Curtis-Maury , Mark Smith
CPC classification number: G06F11/1464 , G06F3/0619 , G06F3/0641 , G06F3/0659 , G06F3/067 , G06F11/1451 , G06F11/1453 , G06F11/1469 , G06F11/2056 , G06F2201/84
Abstract: Techniques are provided for implementing a persistent memory storage tier to manage persistent memory of a node. The persistent memory is managed by the persistent memory storage tier at a higher level within a storage operating system storage stack than a level at which a storage file system of the node is managed. The persistent memory storage tier intercepts an operation targeting the storage file system. The persistent memory storage tier retargets the operation from targeting the storage file system to targeting the persistent memory. The operation is transmitted to the persistent memory.
-
公开(公告)号:US11714782B2
公开(公告)日:2023-08-01
申请号:US17216940
申请日:2021-03-30
Applicant: NetApp Inc.
Inventor: Ananthan Subramanian , Matthew Fontaine Curtis-Maury , Ram Kesavan , Rupa Natarajan , Vinay Devadas
IPC: G06F16/11
CPC classification number: G06F16/128
Abstract: Techniques are provided for coordinating snapshot operations across multiple file systems. A notification may be received that a snapshot of data stored across a persistent memory file system and a storage file system is to be generated. Forwarding, of modify operations from a persistent memory tier to a file system tier for execution through the storage file system, may be enabled. Framing may be initiated to notify the storage file system of blocks within the persistent memory file system that comprise more up-to-date data than corresponding blocks within the storage file system. In response to the framing completing, a consistency point operation is performed to create the snapshot and to create a snapshot image as part of the snapshot.
-
公开(公告)号:US11340804B2
公开(公告)日:2022-05-24
申请号:US16911425
申请日:2020-06-25
Applicant: NetApp Inc.
Inventor: Abdul Basit , Ananthan Subramanian , Ram Kesavan , Matthew Fontaine Curtis-Maury
IPC: G06F3/06
Abstract: Techniques are provided for block allocation for persistent memory during aggregate transition. In a high availability pair including first and second nodes, the first node makes a determination that control of a first aggregate is to transition from the first node to the second node. A portion of available free storage space is allocated from a first persistent memory of the first node as allocated pages within the first persistent memory. Metadata information for the allocated pages is updated with an identifier of the first aggregate to create updated metadata information reserving the allocated pages for the first aggregate. The updated metadata information is mirrored to the second node, so that the second node also reserves those pages. Control of the first aggregate is transitioned to the second node. As a result, the nodes do not attempt allocating the same free pages to different aggregates during a transition.
-
公开(公告)号:US20220035524A1
公开(公告)日:2022-02-03
申请号:US16942398
申请日:2020-07-29
Applicant: NetApp Inc.
Inventor: Ananthan Subramanian , Matthew Fontaine Curtis-Maury , Ram Kesavan , Vinay Devadas
Abstract: Techniques are provided for data management across a persistent memory tier and a file system tier. A block within a persistent memory tier of a node is determined to have up-to-date data compared to a corresponding block within a file system tier of the node. The corresponding block may be marked as a dirty block within the file system tier. Location information of a location of the block within the persistent memory tier is encoded into a container associated with the corresponding block. In response to receiving a read operation, the location information is obtained from the container. The up-to-date data is retrieved from the block within the persistent memory tier using the location information for processing the read operation.
-
公开(公告)号:US20210326266A1
公开(公告)日:2021-10-21
申请号:US16852589
申请日:2020-04-20
Applicant: NetApp Inc.
Inventor: Matthew Fontaine Curtis-Maury , Vinay Devadas , Ananthan Subramanian , Ram Kesavan
IPC: G06F12/0882 , G06F12/0871 , G06F12/02 , G06F16/22 , G06F16/182
Abstract: Techniques are provided for atomic writes for persistent memory. In response to receiving a write operation, a new per-page structure with a new page block number is allocated. New data of the write operation is persisted to a new page of the persistent memory having the new page block number, and the new per-page structure is persisted to the persistent memory. If the write operation targets a hole after the new data and the new per-page structure have been persisted, then a new per-page structure identifier of the new per-page structure is inserted into a parent indirect page of a page comprising the new data. If the write operation targets old data after the new data and the new per-page structure have been persisted, then an old per-page structure of the old data is updated with the new page block number.
-
-
-
-
-
-
-
-
-