Patents by Inventor Mrinal K. Bhattacharjee

Mrinal K. Bhattacharjee 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).

  • Publication number: 20240111419
    Abstract: Systems and methods for performing single I/O writes are provided. According to one embodiment, responsive to receipt of a write operation from a client by a file system layer of a node of a distributed storage system and a data payload of the operation having been determined to meet a compressibility threshold, an intermediate storage layer of the node logically interposed between the file system layer and a block storage media is caused to perform a single input/output (I/O) write operation that persists the compressed data payload and corresponding metadata to support asynchronous journaling of the write operation. The single I/O write operation coupled with the use of a new pool file that maintains a list of available blocks for single I/O write operations and a modified node crash recovery approach allows the write operation to be acknowledged to the client while the journaling is performed asynchronously.
    Type: Application
    Filed: November 29, 2023
    Publication date: April 4, 2024
    Applicant: NetApp, Inc.
    Inventors: Mrinal K. Bhattacharjee, Boopathy Krishnamoorthy, Vinay Kumar B C, Shivali Gupta, Saurabh Gupta
  • Publication number: 20240111870
    Abstract: A method, computing device, and non-transitory machine-readable medium for detecting malware attacks and mitigating data loss. In various embodiments, an agent is implemented in the operating system of a storage node to provide protection at the bottommost level in a data write path. The agent intercepts write requests and observes file events over time to detect anomalous behavior. For example, the agent may monitor incoming write requests and, when an incoming write request is detected, determine whether the file is associated with a malware attack risk based on an analysis of an encryption state of data in the file.
    Type: Application
    Filed: September 11, 2023
    Publication date: April 4, 2024
    Inventors: Jagadish Vasudeva, Prateeksha Varshney, Priya Sehgal, Mrinal K. Bhattacharjee, Amit Valjibhai Panara, Siddhartha Nandi
  • Publication number: 20240103771
    Abstract: Systems and methods are provided for sharing ephemeral storage of a virtual machine (VM) for use as victim caches for virtual storage appliances running on the VM. According to one embodiment, a central service may run within the VM and be responsible for managing allocation and reclamation of ephemeral storage space of the VM to/from the virtual storage appliances. Responsive to startup of a new virtual storage appliance on the VM, the new virtual storage appliance may request space from the central service to inform creation of its victim cache. In connection with servicing the request, the central service may take into consideration various factors including one or more of the total aggregate size of multiple local ephemeral drives associated with the VM, remaining available ephemeral storage space, the number of active virtual storage appliances, and the SLO of the virtual storage appliance seeking to establish its victim cache.
    Type: Application
    Filed: November 29, 2023
    Publication date: March 28, 2024
    Applicant: NetApp, Inc.
    Inventors: Mrinal K. Bhattacharjee, Shivali Gupta, Neha Saini
  • Patent number: 11880605
    Abstract: Systems and methods are described for managing ephemeral storage of a virtual machine (VM) to provide victim caches for virtual storage appliances running on the VM. According to one embodiment, a central service may run within the VM and be responsible for managing allocation and reclamation of ephemeral storage space of the VM to/from the virtual storage appliances. Responsive to startup of a new virtual storage appliance on the VM, the new virtual storage appliance may request space from the central service to inform creation of its victim cache. In connection with servicing the request, the central service may take into consideration various factors including one or more of the total aggregate size of multiple local ephemeral drives associated with the VM, remaining available ephemeral storage space, the number of active virtual storage appliances, and the SLO of the virtual storage appliance seeking to establish its victim cache.
    Type: Grant
    Filed: February 15, 2022
    Date of Patent: January 23, 2024
    Assignee: NetApp, Inc.
    Inventors: Mrinal K. Bhattacharjee, Shivali Gupta, Neha Saini
  • Patent number: 11861172
    Abstract: Systems and methods for performing single I/O writes are provided. According to one embodiment, responsive to receipt of a write operation from a client by a file system layer of a node of a distributed storage system and a data payload of the operation having been determined to meet a compressibility threshold, an intermediate storage layer of the node logically interposed between the file system layer and a block storage media is caused to perform a single input/output (I/O) write operation that persists the compressed data payload and corresponding metadata to support asynchronous journaling of the write operation. The single I/O write operation coupled with the use of a new pool file that maintains a list of available blocks for single I/O write operations and a modified node crash recovery approach allows the write operation to be acknowledged to the client while the journaling is performed asynchronously.
    Type: Grant
    Filed: February 15, 2022
    Date of Patent: January 2, 2024
    Assignee: NetApp, Inc.
    Inventors: Mrinal K. Bhattacharjee, Boopathy Krishnamoorthy, Vinay Kumar B C, Shivali Gupta, Saurabh Gupta
  • Patent number: 11755736
    Abstract: A method, computing device, and non-transitory machine-readable medium for detecting malware attacks and mitigating data loss. In various embodiments, an agent is implemented in the operating system of a storage node to provide protection at the bottommost level in a data write path. The agent intercepts write requests and observes file events over time to detect anomalous behavior. For example, the agent may monitor incoming write requests and, when an incoming write request is detected, determine whether the file is associated with a malware attack risk based on an analysis of an encryption state of data in the file.
    Type: Grant
    Filed: September 27, 2022
    Date of Patent: September 12, 2023
    Assignee: NETAPP, INC.
    Inventors: Jagadish Vasudeva, Prateeksha Varshney, Priya Sehgal, Mrinal K. Bhattacharjee, Amit Valjibhai Panara, Siddhartha Nandi
  • Publication number: 20230259311
    Abstract: Systems and methods are described for managing ephemeral storage of a virtual machine (VM) to provide victim caches for virtual storage appliances running on the VM. According to one embodiment, a central service may run within the VM and be responsible for managing allocation and reclamation of ephemeral storage space of the VM to/from the virtual storage appliances. Responsive to startup of a new virtual storage appliance on the VM, the new virtual storage appliance may request space from the central service to inform creation of its victim cache. In connection with servicing the request, the central service may take into consideration various factors including one or more of the total aggregate size of multiple local ephemeral drives associated with the VM, remaining available ephemeral storage space, the number of active virtual storage appliances, and the SLO of the virtual storage appliance seeking to establish its victim cache.
    Type: Application
    Filed: February 15, 2022
    Publication date: August 17, 2023
    Inventors: Mrinal K. Bhattacharjee, Shivali Gupta, Neha Saini
  • Publication number: 20230214118
    Abstract: Systems and methods for performing single I/O writes are provided. According to one embodiment, responsive to receipt of a write operation from a client by a file system layer of a node of a distributed storage system and a data payload of the operation having been determined to meet a compressibility threshold, an intermediate storage layer of the node logically interposed between the file system layer and a block storage media is caused to perform a single input/output (I/O) write operation that persists the compressed data payload and corresponding metadata to support asynchronous journaling of the write operation. The single I/O write operation coupled with the use of a new pool file that maintains a list of available blocks for single I/O write operations and a modified node crash recovery approach allows the write operation to be acknowledged to the client while the journaling is performed asynchronously.
    Type: Application
    Filed: February 15, 2022
    Publication date: July 6, 2023
    Inventors: Mrinal K. Bhattacharjee, Boopathy Krishnamoorthy, Vinay Kumar B C, Shivali Gupta, Saurabh Gupta
  • Publication number: 20230024060
    Abstract: Systems and methods for supporting dynamic disk growth within a virtual storage appliance are provided. According to one embodiment, a portion of a logical size of respective hyperscale disks provided by a hyperscaler are provisioned for use by a virtual storage system as backing for respective file system disks. To accommodate growth, block numbers for the file system disks are pre-allocated within a sparse space of a contiguous sequence of block numbers corresponding to a number of blocks represented by the logical size. Metadata is maintained for the file system disks regarding a range of the pre-allocated block numbers that are available for use. Responsive to a triggering condition, the provisioned portion of a hyperscale disk is increased and subsequently, responsive to detecting a change in a size of the hyperscale disk by the virtual storage system, a size of the corresponding file system disk is updated within the metadata.
    Type: Application
    Filed: September 8, 2021
    Publication date: January 26, 2023
    Inventors: Mrinal K. Bhattacharjee, Jagadish Vasudeva, Sateesh Kumar Pola
  • Patent number: 11475132
    Abstract: A method, computing device, and non-transitory machine-readable medium for detecting malware attacks and mitigating data loss. In various embodiments, an agent is implemented in the operating system of a storage node to provide protection at the bottommost level in a data write path. The agent intercepts write requests and observes file events over time to detect anomalous behavior. For example, the agent may monitor incoming write requests and, when an incoming write request is detected, determine whether the file is associated with a malware attack risk based on an analysis of an encryption state of data in the file. If the file is associated with a malware attack risk, an entry for the file is added to a file log. The agent may analyze the chi-square values for data written to the files, the file log, and the file format to determine whether a malware attack is underway.
    Type: Grant
    Filed: July 29, 2020
    Date of Patent: October 18, 2022
    Assignee: NETAPP, INC.
    Inventors: Jagadish Vasudeva, Prateeksha Varshney, Priya Sehgal, Mrinal K. Bhattacharjee, Amit Valjibhai Panara, Siddhartha Nandi
  • Patent number: 11409448
    Abstract: Techniques are provided for selectively storing data into allocation areas using streams. A set of allocation areas (e.g., ranges of block numbers such as virtual block numbers) are defined for a storage device. Data having particular characteristics (e.g., user data, metadata, hot data, cold data, randomly accessed data, sequentially accessed data, etc.) will be sent to the storage device for selective storage in corresponding allocation areas. For example, when a file system receives a write stream of hot data, the hot data may be assigned to a stream. The stream will be tagged using a stream identifier that is used as an indicator to the storage device to process data of the stream using an allocation area defined for hot data. In this way, data having different characteristics will be stored/confined within particular allocation areas of the storage device to reduce fragmentation and write amplification.
    Type: Grant
    Filed: July 28, 2020
    Date of Patent: August 9, 2022
    Assignee: NetApp Inc.
    Inventors: Ravikanth Dronamraju, Kyle Diggs Sterling, Mrinal K. Bhattacharjee, Mohit Gupta
  • Publication number: 20210334374
    Abstract: A method, a computing device, and a non-transitory machine-readable medium for detecting malware attacks (e.g., ransomware attacks) and mitigating data loss. In one or more embodiments, an agent is implemented in the operating system of a storage node to provide protection at the bottommost level in a data write path. The agent intercepts write requests and observes file events over time to detect anomalous behavior. For example, the agent may monitor incoming write requests and, when an incoming write request is detected, determine whether the file is associated with a malware attack risk based on an analysis of an encryption state of data in the file. If the file associated with a malware attack risk, an entry for the file is added to a file log. The agent may analyze the chi-square values for data written to the files, the file log, and the file format to determine whether a malware attack is underway.
    Type: Application
    Filed: July 29, 2020
    Publication date: October 28, 2021
    Inventors: Jagadish Vasudeva, Prateeksha Varshney, Priya Sehgal, Mrinal K. Bhattacharjee, Amit Valjibhai Panara, Siddhartha Nandi
  • Publication number: 20200356288
    Abstract: Techniques are provided for selectively storing data into allocation areas using streams. A set of allocation areas (e.g., ranges of block numbers such as virtual block numbers) are defined for a storage device. Data having particular characteristics (e.g., user data, metadata, hot data, cold data, randomly accessed data, sequentially accessed data, etc.) will be sent to the storage device for selective storage in corresponding allocation areas. For example, when a file system receives a write stream of hot data, the hot data may be assigned to a stream. The stream will be tagged using a stream identifier that is used as an indicator to the storage device to process data of the stream using an allocation area defined for hot data. In this way, data having different characteristics will be stored/confined within particular allocation areas of the storage device to reduce fragmentation and write amplification.
    Type: Application
    Filed: July 28, 2020
    Publication date: November 12, 2020
    Inventors: Ravikanth Dronamraju, Kyle Diggs Sterling, Mrinal K. Bhattacharjee, Mohit Gupta
  • Patent number: 10761750
    Abstract: Techniques are provided for selectively storing data into allocation areas using streams. A set of allocation areas (e.g., ranges of block numbers such as virtual block numbers) are defined for a storage device. Data having particular characteristics (e.g., user data, metadata, hot data, cold data, randomly accessed data, sequentially accessed data, etc.) will be sent to the storage device for selective storage in corresponding allocation areas. For example, when a file system receives a write stream of hot data, the hot data may be assigned to a stream. The stream will be tagged using a stream identifier that is used as an indicator to the storage device to process data of the stream using an allocation area defined for hot data. In this way, data having different characteristics will be stored/confined within particular allocation areas of the storage device to reduce fragmentation and write amplification.
    Type: Grant
    Filed: March 9, 2017
    Date of Patent: September 1, 2020
    Assignee: NetApp Inc.
    Inventors: Ravikanth Dronamraju, Kyle Diggs Sterling, Mrinal K. Bhattacharjee, Mohit Gupta
  • Publication number: 20180260154
    Abstract: Techniques are provided for selectively storing data into allocation areas using streams. A set of allocation areas (e.g., ranges of block numbers such as virtual block numbers) are defined for a storage device. Data having particular characteristics (e.g., user data, metadata, hot data, cold data, randomly accessed data, sequentially accessed data, etc.) will be sent to the storage device for selective storage in corresponding allocation areas. For example, when a file system receives a write stream of hot data, the hot data may be assigned to a stream. The stream will be tagged using a stream identifier that is used as an indicator to the storage device to process data of the stream using an allocation area defined for hot data. In this way, data having different characteristics will be stored/confined within particular allocation areas of the storage device to reduce fragmentation and write amplification.
    Type: Application
    Filed: March 9, 2017
    Publication date: September 13, 2018
    Inventors: Ravikanth Dronamraju, Kyle Diggs Sterling, Mrinal K. Bhattacharjee, Mohit Gupta
  • Patent number: 9983817
    Abstract: Presented herein are methods, non-transitory computer readable media, and devices for allocating resources to a particular volume and triggering a consistency point based on the amount given to each volume, thus providing dynamic consistency point triggers. Methods for providing dynamic consistency point triggers are disclosed which include: determining a volume's capacity to utilize resources based on the volume's performance; receiving an allocation of the divided resources based on total system resources available within the storage system and the volume's performance; and triggering a consistency point upon exhausting a threshold percentage of the received/allocated resources.
    Type: Grant
    Filed: February 24, 2016
    Date of Patent: May 29, 2018
    Assignee: NETAPP, INC.
    Inventors: Travis Ian Callahan, Mrinal K. Bhattacharjee, Ganga Bhavani Kondapalli, William Arthur Gutknecht, Andrew Zhu
  • Publication number: 20170242611
    Abstract: Presented herein are methods, non-transitory computer readable media, and devices for allocating resources to a particular volume and triggering a consistency point based on the amount given to each volume, thus providing dynamic consistency point triggers. Methods for providing dynamic consistency point triggers are disclosed which include: determining a volume's capacity to utilize resources based on the volume's performance; receiving an allocation of the divided resources based on total system resources available within the storage system and the volume's performance; and triggering a consistency point upon exhausting a threshold percentage of the received/allocated resources.
    Type: Application
    Filed: February 24, 2016
    Publication date: August 24, 2017
    Inventors: Travis Ian CALLAHAN, Mrinal K. BHATTACHARJEE, Ganga Bhavani KONDAPALLI, William Arthur GUTKNECHT, Andrew ZHU
  • Patent number: 9612760
    Abstract: 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.
    Type: Grant
    Filed: June 24, 2015
    Date of Patent: April 4, 2017
    Assignee: NETAPP, INC.
    Inventors: Ram Kesavan, Mrinal K. Bhattacharjee, Sudhanshu Goswami
  • Publication number: 20150293717
    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.
    Type: Application
    Filed: June 24, 2015
    Publication date: October 15, 2015
    Inventors: Ram Kesavan, Mrinal K. Bhattacharjee, Sudhanshu Goswami
  • Patent number: 9122614
    Abstract: 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.
    Type: Grant
    Filed: December 22, 2011
    Date of Patent: September 1, 2015
    Assignee: NetApp, Inc.
    Inventors: Ram Kesavan, Mrinal K. Bhattacharjee, Sudhanshu Goswami