Patents by Inventor Ananthan Subramanian

Ananthan Subramanian has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11544007
    Abstract: Techniques are provided for forwarding operations to bypass persistent memory. A modify operation, targeting an object, may be received at a persistent memory tier of a node. If a forwarding policy indicates that forwarding is not enabled for the modify operation and the target object, then the modify operation is executed through a persistent memory file system. If the forwarding policy indicates that forwarding is enabled for the modify operation and the target object, then the modify operation is forwarded to a file system tier as a forwarded operation for execution through a storage file system.
    Type: Grant
    Filed: March 30, 2021
    Date of Patent: January 3, 2023
    Assignee: NetApp, Inc.
    Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas, Bulli Venkata Rajesh Vipperla
  • Publication number: 20220398172
    Abstract: Techniques are provided for maintaining and recomputing reference counts in a persistent memory file system of a node. Primary reference counts are maintained for pages within persistent memory of the node. In response to receiving a first operation to link a page into a persistent memory file system of the persistent memory, a primary reference count of the page is incremented before linking the page into the persistent memory file system. In response to receiving a second operation to unlink the page from the persistent memory file system, the page is unlinked from the persistent memory file system before the primary reference count is decremented. Upon the node recovering from a crash, the persistent memory file system is traversed in order to update shadow reference counts for the pages with correct reference count values, which are used to overwrite the primary reference counts with the correct reference count values.
    Type: Application
    Filed: August 22, 2022
    Publication date: December 15, 2022
    Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas
  • Publication number: 20220391359
    Abstract: A distributed storage management system comprising nodes that form a cluster, a distributed block layer that spans the nodes in the cluster, and file system instances deployed on the nodes. Each file system instance comprises a data management subsystem and a storage management subsystem disaggregated from the data management subsystem. The storage management subsystem comprises a node block store that forms a portion of the distributed block layer and a storage manager that manages a key-value store and virtualized storage supporting the node block store. A file system volume hosted by the data management subsystem maps to a logical block device hosted by the virtualized storage in the storage management subsystem. The key-value store includes, for a data block of the logical block device, a key that comprises a block identifier for the logical block device and a value that comprises the data block.
    Type: Application
    Filed: October 1, 2021
    Publication date: December 8, 2022
    Inventors: Ravikanth Dronamraju, Ananthan Subramanian, Daniel McCarthy, Christopher Cason, Arindam Banerjee
  • Publication number: 20220391361
    Abstract: A method for reducing write latency in a distributed file system. A write request that includes a volume identifier is received at a data management subsystem deployed on a node within a distributed storage system. The data management subsystem maps the volume identifier to a file system volume and maps the file system volume to a set of logical block addresses in a logical block device in a storage management subsystem deployed on the node. The storage management subsystem maps the logical block device to a metadata object for the logical block device on the node that is used to process the write request. The mapping of the file system volume to the set of logical block addresses in the logical block device enables co-locating the metadata object with the file system volume on the node, which reduces the write latency associated with processing the write request.
    Type: Application
    Filed: October 1, 2021
    Publication date: December 8, 2022
    Inventors: Ananthan Subramanian, Daniel McCarthy, Arindam Banerjee
  • Publication number: 20220357868
    Abstract: A method and system for co-locating journaling and data storage based on write requests. A write request that includes metadata and data is received from a client. A logical storage unit for storing the metadata and the data is identified. The logical storage unit is divided into a journal partition and a volume partition. The journal partition includes a first log and a second log. Which of the first log and the second log is an active log and which of the first log and the second log is an inactive log are identified. The metadata is recorded in a first location in the active log and the data is recorded in a second location in the active log during a single I/O operation. A reply is sent to the client after the metadata and the data are recorded in the journal partition.
    Type: Application
    Filed: July 19, 2022
    Publication date: November 10, 2022
    Inventors: Kevin Daniel Varghese, Ananthan Subramanian, Parag Sarfare, Sandeep Yadav, Suhas Urkude, Rajesh Khandelwal
  • Publication number: 20220357848
    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.
    Type: Application
    Filed: July 24, 2022
    Publication date: November 10, 2022
    Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Ram Kesavan, Vinay Devadas
  • Patent number: 11487723
    Abstract: Techniques are provided for orphan object detection, invalid sequence number detection, and asynchronous object cleanup. A storage system may store data within one or more tiers of storage, such as a storage tier (e.g., solid state storage and disks maintained by the storage system), a remote object store (e.g., storage provided by a third party storage provider), and/or other storage tiers. Orphan objects, within the remote object store, that are no longer used by the storage system may be detected and/or deleted. When an aggregate of volumes is deleted, corresponding objects, within the remote object store, may be identified and/or deleted. Invalid sequence numbers (e.g., lost or corrupt sequence numbers locally maintained in a metafile) assigned to objects within the remote object store may be identified, deleted, and/or fixed.
    Type: Grant
    Filed: January 24, 2020
    Date of Patent: November 1, 2022
    Assignee: NetApp Inc.
    Inventors: Ananthan Subramanian, Sridevi Jantli, Anil Paul Thoppil, Cheryl Marie Thompson, Qinghua Zheng
  • Publication number: 20220342577
    Abstract: A method and system for co-locating journaling and data storage based on write requests. A write request that includes metadata and data is received from a client. A logical storage unit for storing the metadata and the data is identified. The logical storage unit is divided into a journal partition and a volume partition. The journal partition includes a first log and a second log. Which of the first log and the second log is an active log and which of the first log and the second log is an inactive log are identified. The metadata is recorded in a first location in the active log and the data is recorded in a second location in the active log during a single I/O operation. A reply is sent to the client after the metadata and the data are recorded in the journal partition.
    Type: Application
    Filed: June 24, 2022
    Publication date: October 27, 2022
    Inventors: Kevin Daniel Varghese, Ananthan Subramanian, Parag Sarfare, Sandeep Yadav, Suhas Urkude, Rajesh Khandelwal
  • Publication number: 20220335027
    Abstract: Techniques are provided for key-value store and file system integration to optimize key value store operations. A key-value store is integrated within a file system of a node. A log structured merge tree of the key-value store may be populated with a key corresponding to a content hash of a value data item stored separate from the key. A random distribution search may be performed upon a sorted log of the log structured merge tree to identify the key for accessing the value data item. A starting location for the random distribution search is derived from key information, a log size of the sorted log, and/or a keyspace size of a keyspace associated with the key.
    Type: Application
    Filed: April 20, 2021
    Publication date: October 20, 2022
    Inventors: Sanjay Subramanian Seshadri, Arindam Banerjee, Manan Dahyabhai Patel, Raymond Jordan Go, Anil Paul Thoppil, Ananthan Subramanian, Santhosh Selvaraj, Nikul Y. Patel, Vikhyath Rao, Meera Odugoudar, Kevin Daniel Varghese
  • Patent number: 11467774
    Abstract: Techniques are provided for compacting indirect blocks. For example, an object is represented as a structure comprising data blocks within which data of the object is stored and indirect blocks comprising block numbers of where the data blocks are located in storage. Block numbers within a set of indirect blocks are compacted into a compacted indirect block comprising a base block number, a count of additional block numbers after the base block number in the compacted indirect block, and a pattern of the block numbers in the compacted indirect block. The compacted indirect block is stored into memory for processing access operations to the object.
    Type: Grant
    Filed: October 29, 2020
    Date of Patent: October 11, 2022
    Assignee: NetApp Inc.
    Inventors: Ananthan Subramanian, Kumaran Nagappan, Sriram Venketaraman, Szu-Wen Kuo, Yong Eun Cho
  • Publication number: 20220318188
    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.
    Type: Application
    Filed: March 30, 2021
    Publication date: October 6, 2022
    Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Ram Kesavan, Rupa Natarajan, Vinay Devadas
  • Publication number: 20220317921
    Abstract: Techniques are provided for forwarding operations to bypass persistent memory. A modify operation, targeting an object, may be received at a persistent memory tier of a node. If a forwarding policy indicates that forwarding is not enabled for the modify operation and the target object, then the modify operation is executed through a persistent memory file system. If the forwarding policy indicates that forwarding is enabled for the modify operation and the target object, then the modify operation is forwarded to a file system tier as a forwarded operation for execution through a storage file system.
    Type: Application
    Filed: March 30, 2021
    Publication date: October 6, 2022
    Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas, Bulli Venkata Rajesh Vipperla
  • Patent number: 11461281
    Abstract: Techniques are provided for utilizing a log to free pages from persistent memory. A log is maintained to comprise a list of page block numbers of pages within persistent memory of a node to free. A page block number, of a page, within the log is identified for processing. A reference count, corresponding to a number of references to the page block number, is identified. In response to the reference count being greater than 1, the reference count is decremented and the page block number is removed from the log. In response to the reference count being 1, the page is freed from the persistent memory and the page block number is removed from the log.
    Type: Grant
    Filed: April 20, 2020
    Date of Patent: October 4, 2022
    Assignee: NetApp Inc.
    Inventors: Rupa Natarajan, Ananthan Subramanian
  • Publication number: 20220300178
    Abstract: Techniques are provided for multi-tier write allocation. A storage system may store data within a multi-tier storage environment comprising a first storage tier (e.g., storage devices maintained by the storage system), a second storage tier (e.g., a remote object store provided by a third party storage provider), and/or other storage tiers. A determination is made that data (e.g., data of a write request received by the storage system) is to be stored within the second storage tier. The data is stored into a staging area of the first storage tier. A second storage tier location identifier, for referencing the data according to a format utilized by the second storage tier, is assigned to the data and provided to a file system hosting the data. The data is then destaged from the staging area into the second storage tier, such as within an object stored within the remote object store.
    Type: Application
    Filed: June 6, 2022
    Publication date: September 22, 2022
    Inventors: Ganga Bhavani Kondapalli, Kevin Daniel Varghese, Ananthan Subramanian, Cheryl Marie Thompson, Anil Paul Thoppil
  • Publication number: 20220300429
    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.
    Type: Application
    Filed: May 23, 2022
    Publication date: September 22, 2022
    Inventors: Matthew Fontaine Curtis-Maury, Vinay Devadas, Ananthan Subramanian, Ram Kesavan
  • Publication number: 20220283718
    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.
    Type: Application
    Filed: May 23, 2022
    Publication date: September 8, 2022
    Inventors: Abdul Basit, Ananthan Subramanian, Ram Kesavan, Matthew Fontaine Curtis-Maury
  • Publication number: 20220283915
    Abstract: Failover methods and systems for a networked storage environment are provided. In one aspect, a read request associated with a first storage object is received, during a replay of entries of a log stored in a non-volatile memory of a second storage node for a failover operation initiated in response to a failure at a first storage node. The second storage node operates as a partner node of the first storage node. The read request is processed using a filtering data structure that is generated from the log prior to the replay and identifies each log entry. The read request is processed when the log does not have an entry associated with the read request, and when the filtering data structure includes an entry associated with the read request, the requested data is located at the non-volatile memory.
    Type: Application
    Filed: May 24, 2022
    Publication date: September 8, 2022
    Applicant: NETAPP, INC.
    Inventors: Asif Imtiyaz Pathan, Parag Sarfare, Ananthan Subramanian, Szu-Wen Kuo, Santhosh Selvaraj, Nikhil Mattankot
  • Patent number: 11422903
    Abstract: Techniques are provided for maintaining and recomputing reference counts in a persistent memory file system of a node. Primary reference counts are maintained for pages within persistent memory of the node. In response to receiving a first operation to link a page into a persistent memory file system of the persistent memory, a primary reference count of the page is incremented before linking the page into the persistent memory file system. In response to receiving a second operation to unlink the page from the persistent memory file system, the page is unlinked from the persistent memory file system before the primary reference count is decremented. Upon the node recovering from a crash, the persistent memory file system is traversed in order to update shadow reference counts for the pages with correct reference count values, which are used to overwrite the primary reference counts with the correct reference count values.
    Type: Grant
    Filed: July 30, 2020
    Date of Patent: August 23, 2022
    Assignee: NetApp Inc.
    Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas
  • Patent number: 11416356
    Abstract: Failover methods and systems for a networked storage environment are provided. In one aspect, a read request associated with a first storage object is received, during a replay of entries of a log stored in a non-volatile memory of a second storage node for a failover operation initiated in response to a failure at a first storage node. The second storage node operates as a partner node of the first storage node. The read request is processed using a filtering data structure that is generated from the log prior to the replay and identifies each log entry. The read request is processed when the log does not have an entry associated with the read request, and when the filtering data structure includes an entry associated with the read request, the requested data is located at the non-volatile memory.
    Type: Grant
    Filed: April 22, 2020
    Date of Patent: August 16, 2022
    Assignee: NETAPP, INC.
    Inventors: Asif Imtiyaz Pathan, Parag Sarfare, Ananthan Subramanian, Szu-Wen Kuo, Santhosh Selvaraj, Nikhil Mattankot
  • Patent number: 11409457
    Abstract: A method and system for co-locating journaling and data storage based on write requests. A write request that includes metadata and data is received from a client. A logical storage unit for storing the metadata and the data is identified. The logical storage unit is divided into a journal partition and a volume partition. The journal partition includes a first log and a second log. Which of the first log and the second log is an active log and which of the first log and the second log is an inactive log are identified. The metadata is recorded in a first location in the active log and the data is recorded in a second location in the active log during a single I/O operation. A reply is sent to the client after the metadata and the data are recorded in the journal partition.
    Type: Grant
    Filed: April 23, 2021
    Date of Patent: August 9, 2022
    Assignee: NetApp, Inc.
    Inventors: Kevin Daniel Varghese, Ananthan Subramanian, Parag Sarfare, Sandeep Yadav, Suhas Urkude, Rajesh Khandelwal