Patents by Inventor Kevin Canuette GRIMALDI

Kevin Canuette GRIMALDI 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: 11882183
    Abstract: In some examples, a first computing device of a plurality of computing devices may be a member of a first partition group. For example, the first partition group may correspond to a first partition of multiple partitions of a metadata database. The first partition group may include at least one other computing device. Furthermore, each of the plurality of computing devices may maintain at least one partition of the metadata database so that the metadata database is partitioned into multiple partitions distributed across the computing devices. The first computing device may determine a first time threshold for a heartbeat communication to be sent to the other computing device(s) in the first partition group, and may select a random time before the first time threshold. The first computing device may send, based on the selected random time, the heartbeat communication to the other computing device(s) in the first partition group.
    Type: Grant
    Filed: August 3, 2020
    Date of Patent: January 23, 2024
    Assignee: Hitachi Vantara LLC
    Inventors: David Rush, Jr., Kevin Canuette Grimaldi
  • Publication number: 20230289347
    Abstract: In some examples, a first computing device may receive a first request from a second computing device. For example, the first computing device may be able to communicate with a plurality of database nodes, each database node maintaining a portion of a database distributed across the plurality of database nodes. Further, the first computing device may maintain a local cache of a subset of information maintained in the database. The first computing device may send a second request based on the first request to a first database node to cause the first database node to change the data in the database. In addition, the first computing device receives, from a message queue of a plurality of distributed message queues, a cache update message based on the change to the data in the database. The first computing device may update the local cache based on the cache update message.
    Type: Application
    Filed: August 3, 2020
    Publication date: September 14, 2023
    Inventors: Robert GIBSON, Kevin Canuette GRIMALDI, David RUSH, Jr.
  • Publication number: 20230283663
    Abstract: In some examples, a first computing device of a plurality of computing devices may be a member of a first partition group. For example, the first partition group may correspond to a first partition of multiple partitions of a metadata database. The first partition group may include at least one other computing device. Furthermore, each of the plurality of computing devices may maintain at least one partition of the metadata database so that the metadata database is partitioned into multiple partitions distributed across the computing devices. The first computing device may determine a first time threshold for a heartbeat communication to be sent to the other computing device(s) in the first partition group, and may select a random time before the first time threshold. The first computing device may send, based on the selected random time, the heartbeat communication to the other computing device(s) in the first partition group.
    Type: Application
    Filed: August 3, 2020
    Publication date: September 7, 2023
    Inventors: David RUSH, Jr., Kevin Canuette GRIMALDI
  • Publication number: 20220391411
    Abstract: In some examples, a computing device may store a first snapshot of a state of data in a first partition at a first point in time. The computing device may create a second partition and a third partition to each receive a portion of the data, the second partition and the third partition each including a metrics schema, and may determine information for the metrics schemas based on information in the first snapshot. During the determining of the information for the metrics schemas, the computing device may receive a write to the first partition. The computing device may update the first partition based on the write and may add a split update command to a data structure based on the write. In addition, the computing device may update at least one of the metrics schemas in the second partition or the third partition based on the split update command.
    Type: Application
    Filed: December 27, 2019
    Publication date: December 8, 2022
    Inventors: Kevin Canuette GRIMALDI, Joshua Jen MONZON
  • Patent number: 11416447
    Abstract: In some examples, a computer system may receive a data object including object data. For example, the system may be one of three or more systems and each system may be located at a different respective geographic location. The system may determine a value representative of the object data content. The system may further determine a plurality of chunks by dividing the object data into a plurality of data chunks based on a total number of the systems and determining a parity chunk for the plurality of data chunks. The system may determine a respective role value corresponding to each of the systems, and may send individual ones of the chunks to respective ones of the systems based on the role value and the value representative of the object data content. In some examples, each system may perform data deduplication independently of the other systems based on received chunks.
    Type: Grant
    Filed: June 8, 2017
    Date of Patent: August 16, 2022
    Assignee: HITACHI VANTARA LLC
    Inventor: Kevin Canuette Grimaldi
  • Publication number: 20220092083
    Abstract: In some examples, a system may receive, from a user device, a user request for a storage operation related to storage of data at a storage. An update may be added to an update queue to persist the storage operation prior to sending a response to the user device indicating performance of the storage operation. For instance, adding the update to the update queue may include sending a request to cause the update to be added to the update queue based on specifying a type of the storage operation and/or a state to be achieved by the storage operation. Additionally, information about the update may be sent to another processor for adding the update to another update queue managed by the other processor. Subsequently, the update may be obtained from the update queue and processed to perform the storage operation.
    Type: Application
    Filed: March 4, 2019
    Publication date: March 24, 2022
    Inventors: Kevin Canuette GRIMALDI, Marty KULMA, Andrew TODD, Walter WOHLER
  • Patent number: 10613933
    Abstract: In some examples, a multi-node system may access physical storage divided into extents and further arranged into extent groups that may be allocated on demand as thin provisioned storage in response to write requests. Protection class instances are set with specified data protection capabilities. Each instance acts as a logical unit having a distinct addressable block storage space from the extent groups allocated thereto. The extents in an extent group to be allocated to a given protection class instance may vary depending on the protection class capabilities. Management information for the extents, extent groups, and protection classes may be stored in mirrored devices separate from the write data stored in the extents for providing redundant protection to the management information and for increasing the availability of write data in the event of a failure that may cause data loss at one or more locations in the system.
    Type: Grant
    Filed: December 9, 2014
    Date of Patent: April 7, 2020
    Assignee: Hitachi Vantara LLC
    Inventors: Charles C. Bennett, Jr., Nathan W. Clark, Kevin Canuette Grimaldi
  • Publication number: 20200097445
    Abstract: In some examples, a computer system may receive a data object including object data. For example, the system may be one of three or more systems and each system may be located at a different respective geographic location. The system may determine a value representative of the object data content. The system may further determine a plurality of chunks by dividing the object data into a plurality of data chunks based on a total number of the systems and determining a parity chunk for the plurality of data chunks. The system may determine a respective role value corresponding to each of the systems, and may send individual ones of the chunks to respective ones of the systems based on the role value and the value representative of the object data content. In some examples, each system may perform data deduplication independently of the other systems based on received chunks.
    Type: Application
    Filed: June 8, 2017
    Publication date: March 26, 2020
    Inventor: Kevin Canuette GRIMALDI
  • Patent number: 10387449
    Abstract: A method and apparatus for metadata favored replication in an active/active topology. When replicating data objects between multiple storage systems, metadata is sent first while the associated data content is sent at a subsequent time. Metadata is stored and made visible on a target storage system thereby reserving the object path in a namespace to reduce collisions in the namespace. After metadata is transferred to the target storage system, the target system performs collision processing to determine if an object already exists in the namespace prior to receiving the transferred metadata. After collision processing is performed, the winning object is made visible for access on the target storage system regardless of whether the associated data content has been transferred to the target system.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: August 20, 2019
    Assignee: Hitachi Vantara Corporation
    Inventors: Benjamin Isherwood, Kevin Canuette Grimaldi
  • Patent number: 10235256
    Abstract: The storage system includes storage devices which have plural storage blocks. A first node with a first processor memory is configured to store first information which manages states of the storage blocks, and a second node including a second processor and memory is configured to store second information which manages the states of the storage blocks are included in the storage system to handle file operations. When a failure occurs on the second node, the first processor is configured to change the state of one or more storage blocks, previously reserved by the second node to be used for storing data by the second node, to one or more garbage blocks and perform garbage resolution processing thereon before becoming available for data storage. This process allows for rapid recovery of the filesystem as the entirety of the filesystem metadata need not be examined.
    Type: Grant
    Filed: August 18, 2014
    Date of Patent: March 19, 2019
    Assignee: Hitachi Vantara Corporation
    Inventors: Kevin Canuette Grimaldi, Morgan Tyler Maxwell, Clayton A Curry
  • Publication number: 20170075761
    Abstract: In some examples, a multi-node system may access physical storage divided into extents and further arranged into extent groups that may be allocated on demand as thin provisioned storage in response to write requests. Protection class instances are set with specified data protection capabilities. Each instance acts as a logical unit having a distinct addressable block storage space from the extent groups allocated thereto. The extents in an extent group to be allocated to a given protection class instance may vary depending on the protection class capabilities. Management information for the extents, extent groups, and protection classes may be stored in mirrored devices separate from the write data stored in the extents for providing redundant protection to the management information and for increasing the availability of write data in the event of a failure that may cause data loss at one or more locations in the system.
    Type: Application
    Filed: December 9, 2014
    Publication date: March 16, 2017
    Inventors: Charles C. BENNETT, JR., Nathan W. CLARK, Kevin Canuette GRIMALDI
  • Publication number: 20170075779
    Abstract: The storage system includes storage devices which have plural storage blocks. A first node with a first processor memory is configured to store first information which manages states of the storage blocks, and a second node including a second processor and memory is configured to store second information which manages the states of the storage blocks are included in the storage system to handle file operations. When a failure occurs on the second node, the first processor is configured to change the state of one or more storage blocks, previously reserved by the second node to be used for storing data by the second node, to one or more garbage blocks and perform garbage resolution processing thereon before becoming available for data storage. This process allows for rapid recovery of the filesystem as the entirety of the filesystem metadata need not be examined.
    Type: Application
    Filed: August 18, 2014
    Publication date: March 16, 2017
    Inventors: Kevin Canuette GRIMALDI, Morgan Tyler MAXWELL, Clayton A CURRY
  • Publication number: 20160321338
    Abstract: A method and apparatus for metadata favored replication in an active/active topology. When replicating data objects between multiple storage systems, metadata is sent first while the associated data content is sent at a subsequent time. Metadata is stored and made visible on a target storage system thereby reserving the object path in a namespace to reduce collisions in the namespace. After metadata is transferred to the target storage system, the target system performs collision processing to determine if an object already exists in the namespace prior to receiving the transferred metadata. After collision processing is performed, the winning object is made visible for access on the target storage system regardless of whether the associated data content has been transferred to the target system.
    Type: Application
    Filed: May 30, 2014
    Publication date: November 3, 2016
    Inventors: Benjamin ISHERWOOD, Kevin Canuette GRIMALDI