Patents by Inventor Ravi V. Khadiwala

Ravi V. Khadiwala 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: 11675757
    Abstract: A database system operates by: receiving a plurality of row data associated with a first data source; identifying a subset of row data from the plurality of row data that includes only ones of the plurality of row data that compare favorably to maintained row durability data; generating at least one page from ones of the plurality of row data included in the subset of row data; storing the at least one page in long term storage; generating updated row durability data indicating a least favorably ordered row number of a plurality of row numbers corresponding to the subset of row data based on storing the at least one page in long term storage; and updating the maintained row durability data to indicate the least favorably ordered row number of the updated row durability data.
    Type: Grant
    Filed: March 29, 2021
    Date of Patent: June 13, 2023
    Assignee: Ocient Holdings LLC
    Inventors: Anna Veselova, Ravi V. Khadiwala, George Kondiles
  • Publication number: 20230176949
    Abstract: A method for execution by one or more processing modules of a storage network begins by receiving an access request for a set of encoded data slices, where the data object is segmented into a plurality of data segments, a data segment of which is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of encoded data slices. The method continues by determining whether a revision for one or more encoded data slices in a first storage module is a most recent revision level for the one or more encoded data slices and when the one or more encoded data slices is a most recent revision level, determining whether the revision level for the one or more encoded data slices in a second storage module is the most recent revision level.
    Type: Application
    Filed: January 12, 2023
    Publication date: June 8, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Yogesh R. Vedpathak, Jason K. Resch, Asimuddin Kazi
  • Publication number: 20230177043
    Abstract: A method includes generating a predictive model mapping batch size to estimated memory utilization based on a plurality of prior batch sizes applied for performing a corresponding plurality of prior data format conversions, and further based on a plurality of prior actual memory utilization occurring in performing the corresponding plurality of prior data format conversions. A next batch size is automatically selected for performance of a subsequent data format conversion based on the predictive model and a current memory availability. A batch of data for performance of the subsequent data format conversion is identified based on the batch of data having the next batch size. The subsequent data format conversion is performed the batch of data, and an actual amount of memory utilized in performing the subsequent data format conversion is determined. The predictive model is updated based on the next batch size and the actual amount of memory utilized.
    Type: Application
    Filed: December 7, 2021
    Publication date: June 8, 2023
    Applicant: Ocient Holdings LLC
    Inventors: Natalia Marie Jenuwine, George Kondiles, Anna Veselova, Ravi V. Khadiwala
  • Patent number: 11669546
    Abstract: method and apparatus for synchronizing replicated data in a storage network. In an embodiment, a method begins by a processing module of a computing device identifying a first storage set and a second storage set for replicated storage of a data object. The processing module initiates storage of the data object in both the first and second storage sets, and further maintains a synchronization status for the data object. The processing module determines, based at least in part on the synchronization status, to resynchronize the first storage set and the second storage set. In response to determining to resynchronize the first storage set and the second storage set, the processing module identifies a latest available revision of the data object, determines that the second storage set requires the latest available revision of the data object to maintain synchronization, and facilitates storage of the identified latest available revision of the data object in the second storage set.
    Type: Grant
    Filed: April 27, 2022
    Date of Patent: June 6, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Jason K. Resch, Scott M. Horan, Ravi V. Khadiwala, Greg R. Dhuse
  • Patent number: 11650879
    Abstract: A method for execution by a computing device of a storage network begins or continues by generating a plurality of estimated efficiency models associated with a plurality of processing units of the storage network, where an estimated efficiency model of the plurality of estimated efficiency models includes estimated efficiency probabilities, and where the estimated efficiency probabilities correspond to data access request types for a processing unit of the plurality of processing units. The method further includes storing the plurality of estimated efficiency models in memory of the storage network.
    Type: Grant
    Filed: March 31, 2022
    Date of Patent: May 16, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Ravi V. Khadiwala, Jason K. Resch
  • Patent number: 11650883
    Abstract: A method includes, determining, for a batch rebuild process regarding a first batch threshold number of encoded data slices of a set of encoded data slices that need rebuilding, a target storage unit of target storage units of a set of storage units of the storage network is unavailable, where a data segment of data is dispersed storage error encoded into the set of encoded data slices, the set of encoded data slices is stored in the set of storage units, and the first batch threshold number of encoded data slices is to be stored in the target storage units. When the target storage unit becomes available before a second batch rebuild threshold number of encoded data slices of the set of encoded data slices is met, the method includes executing the batch rebuild process for the first batch threshold number of encoded data slices.
    Type: Grant
    Filed: April 27, 2022
    Date of Patent: May 16, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
  • Patent number: 11625300
    Abstract: A processing system of a storage network operates by: sending, to at least one storage unit of the storage network, at least one read request corresponding to at least a read threshold number of a set of encoded data slices to be retrieved, wherein the set of encoded data slices correspond to a data segment, wherein the data segment is coded in accordance with dispersed error coding parameters that include a write threshold number and the read threshold number, wherein the write threshold number is a number of encoded data slices in the set of encoded data slices and wherein the read threshold number is a number of the set of slices that is required to decode the data segment; receiving, via the at least one processing circuit and from the at least one storage unit, a first subset of encoded data slices of the set of encoded data slices, wherein the first subset of encoded data slices is missing at least one missing encoded data slice that was not received from the at least one storage unit in response to the
    Type: Grant
    Filed: September 20, 2022
    Date of Patent: April 11, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Bruno H. Cabral, Manish Motwani, Thomas D. Cocagne, Timothy W. Markison, Gary W. Grube, Wesley B. Leggette, Jason K. Resch, Michael C. Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Patent number: 11620087
    Abstract: A method begins by a processing module receiving a request to store a data object in distributed storage (DS) units. The processing module generates and transmits a proposal message that includes a preferred source name, and a proposal attempt identifier to a plurality of DS units. The processing module then receives a proposal message acceptance response from at least one of the plurality of DS units and when the proposal message response indicates that no other proposal messages have been received by at least one of the plurality of DS units, retains the preferred source name included within the proposal message as a persistent value for the source name.
    Type: Grant
    Filed: November 11, 2021
    Date of Patent: April 4, 2023
    Assignee: International Business Machines Corporation
    Inventors: Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch
  • Patent number: 11604707
    Abstract: A method for execution by a dispersed storage network (DSN). The method begins by obtaining a data object for synchronized storage within a plurality of storage vaults, identifying a plurality of storage vaults, encoding the data object for each storage vault, initiating storage of data slices for each storage vault and interpreting received data slice information from at least some of the storage vaults to determine a number of storage vaults that have successfully stored the corresponding plurality of sets of encoded data slices and when the vault threshold number of storage vaults have not successfully stored the corresponding plurality of sets of encoded data slices within a synchronization timeframe, initiating a rollback process to abandon storage of the data object in the plurality of storage vaults and a store data response to indicate unsuccessful synchronized storage of the data object in the plurality of storage vaults.
    Type: Grant
    Filed: December 4, 2017
    Date of Patent: March 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Patent number: 11588892
    Abstract: A method for execution by a computing device of a storage network begins by obtaining scoring information for a rebuilding encoded data slices for one or more storage units of a set of storage units of the storage network, where the scoring information includes two or more of a plurality of rebuilding rates, a plurality of input/output rates, a plurality of scores, and a plurality of selection rates. The method continues with determining a rebuilding rate of the plurality of rebuilding rates to utilize for the rebuilding based on the scoring information. The method continues by implementing the rebuilding of the encoded data slices in accordance with the rebuilding rate.
    Type: Grant
    Filed: April 29, 2020
    Date of Patent: February 21, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Asimuddin Kazi
  • Patent number: 11567832
    Abstract: A storage unit includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry. The storage unit receives a set of read slice requests for a set of encoded data slices (EDSs) associated with a data object stored within a first set of storage units, where the storage the first set of storage units includes the storage unit. When at least a read threshold number of EDSs and fewer than all of the set of EDSs can be successfully retrieved from the first set of storage units, the storage unit identifies at least one EDS associated with a data object that is stored in a second set of storage units, obtains the at least one EDS and stores the at least one EDS in the storage unit.
    Type: Grant
    Filed: March 12, 2021
    Date of Patent: January 31, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Yogesh R. Vedpathak, Jason K. Resch, Asimuddin Kazi
  • Publication number: 20230009883
    Abstract: A processing system of a storage network operates by: sending, to at least one storage unit of the storage network, at least one read request corresponding to at least a read threshold number of a set of encoded data slices to be retrieved, wherein the set of encoded data slices correspond to a data segment, wherein the data segment is coded in accordance with dispersed error coding parameters that include a write threshold number and the read threshold number, wherein the write threshold number is a number of encoded data slices in the set of encoded data slices and wherein the read threshold number is a number of the set of slices that is required to decode the data segment; receiving, via the at least one processing circuit and from the at least one storage unit, a first subset of encoded data slices of the set of encoded data slices, wherein the first subset of encoded data slices is missing at least one missing encoded data slice that was not received from the at least one storage unit in response to the
    Type: Application
    Filed: September 20, 2022
    Publication date: January 12, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Bruno H. Cabral, Manish Motwani, Thomas D. Cocagne, Timothy W. Markison, Gary W. Grube, Wesley B. Leggette, Jason K. Resch, Michael C. Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Patent number: 11487620
    Abstract: A network storage system operates by: sending, to at least one storage unit of a storage network, at least one read request corresponding to at least a read threshold number of a set of encoded data slices to be retrieved, wherein the set of encoded data slices correspond to a data segment, wherein the data segment is codable in accordance with dispersed error coding parameters that include a write threshold number and the read threshold number, wherein the write threshold number is a number of encoded data slices in the set of encoded data slices and wherein the read threshold number is a number of the set of slices that is required to decode the data segment; receiving from the at least one storage unit, a first subset of encoded data slices of the set of encoded data slices, wherein the first subset of encoded data slices is missing at least one missing encoded data slice from the number of the set of slices that is required to decode the data segment and that was not received from the at least one storage
    Type: Grant
    Filed: June 27, 2022
    Date of Patent: November 1, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Bruno H. Cabral, Manish Motwani, Thomas D. Cocagne, Timothy W. Markison, Gary W. Grube, Wesley B. Leggette, Jason K. Resch, Michael C. Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Publication number: 20220342760
    Abstract: Methods and apparatus for rebuilding and storing data in a storage network that includes a plurality of storage units. In an embodiment, a processing module(s) of storage network identifies a storage error associated with a data object stored in a first storage unit of a set of storage units. In response, the processing module obtains storage network configuration information associated with the data object, and rebuilds the data object to produce a rebuilt data object. The processing module further identifies, based on the storage network configuration information, a candidate storage unit(s) for storage of the rebuilt data object and determines an available storage capacity level of the candidate storage unit. In response to determining that the available storage capacity level of the candidate storage unit is sufficient to store the rebuilt data object, the processing module facilitates storage of the rebuilt data object in the candidate storage unit.
    Type: Application
    Filed: May 30, 2022
    Publication date: October 27, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Ravi V. Khadiwala, Wesley B. Leggette
  • Publication number: 20220327022
    Abstract: A network storage system operates by: sending, to at least one storage unit of a storage network, at least one read request corresponding to at least a read threshold number of a set of encoded data slices to be retrieved, wherein the set of encoded data slices correspond to a data segment, wherein the data segment is codable in accordance with dispersed error coding parameters that include a write threshold number and the read threshold number, wherein the write threshold number is a number of encoded data slices in the set of encoded data slices and wherein the read threshold number is a number of the set of slices that is required to decode the data segment; receiving from the at least one storage unit, a first subset of encoded data slices of the set of encoded data slices, wherein the first subset of encoded data slices is missing at least one missing encoded data slice from the number of the set of slices that is required to decode the data segment and that was not received from the at least one storage
    Type: Application
    Filed: June 27, 2022
    Publication date: October 13, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Ilya Volvovski, Bruno H. Cabral, Manish Motwani, Thomas D. Cocagne, Timothy W. Markison, Gary W. Grube, Wesley B. Leggette, Jason K. Resch, Michael C. Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Patent number: 11429486
    Abstract: In various embodiments, a method is presented for execution by a processing circuit of a storage network device that includes a processor. The method comprises: receiving, via the processing circuit, a first subset of encoded data slices of a set of encoded data slices corresponding to a data segment; identifying, via the processing circuit, at least one missing encoded data slice of the first subset of slices that is required to decode the data segment; generating, via the processing circuit, at least one rebuilt encoded data slice corresponding to the at least one missing encoded data slice utilizing locally decodable redundancy data; and recovering, via the processing circuit, the data segment based on the at least one rebuilt encoded data slice and the first subset of encoded data slices.
    Type: Grant
    Filed: October 30, 2020
    Date of Patent: August 30, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Bruno H. Cabral, Manish Motwani, Thomas D. Cocagne, Timothy W. Markison, Gary W. Grube, Wesley B. Leggette, Jason K. Resch, Michael C. Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Publication number: 20220261155
    Abstract: A computing device includes an interface configured to interface and communicate with a storage network, a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. A computing device receives a data access request for an encoded data slice associated with a data object, determines whether the encoded data slice is stored in the first memory and in response to a determination that the encoded data slice is not stored in the first memory, issues another data access request for the encoded data slice to a second memory, where the first memory includes access characteristics that are faster than the second memory. When a data access response including the encoded data slice is received from the second memory, a response including the encoded data slice is transmitted.
    Type: Application
    Filed: April 29, 2022
    Publication date: August 18, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Bruno H. Cabral, Joseph M. Kaczmarek, Ravi V. Khadiwala, Ilya Volvovski, Manish Motwani, Ethan S. Wozniak
  • Publication number: 20220253357
    Abstract: A method includes, determining, for a batch rebuild process regarding a first batch threshold number of encoded data slices of a set of encoded data slices that need rebuilding, a target storage unit of target storage units of a set of storage units of the storage network is unavailable, where a data segment of data is dispersed storage error encoded into the set of encoded data slices, the set of encoded data slices is stored in the set of storage units, and the first batch threshold number of encoded data slices is to be stored in the target storage units. When the target storage unit becomes available before a second batch rebuild threshold number of encoded data slices of the set of encoded data slices is met, the method includes executing the batch rebuild process for the first batch threshold number of encoded data slices.
    Type: Application
    Filed: April 27, 2022
    Publication date: August 11, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
  • Publication number: 20220253355
    Abstract: method and apparatus for synchronizing replicated data in a storage network. In an embodiment, a method begins by a processing module of a computing device identifying a first storage set and a second storage set for replicated storage of a data object. The processing module initiates storage of the data object in both the first and second storage sets, and further maintains a synchronization status for the data object. The processing module determines, based at least in part on the synchronization status, to resynchronize the first storage set and the second storage set. In response to determining to resynchronize the first storage set and the second storage set, the processing module identifies a latest available revision of the data object, determines that the second storage set requires the latest available revision of the data object to maintain synchronization, and facilitates storage of the identified latest available revision of the data object in the second storage set.
    Type: Application
    Filed: April 27, 2022
    Publication date: August 11, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Scott M. Horan, Ravi V. Khadiwala, Greg R. Dhuse
  • Patent number: 11398988
    Abstract: Methods and apparatus for selecting data access resources in a distributed storage network (DSN) are disclosed. In various embodiments, a processing module(s) receives a data access request including a data identifier. Addressing information is determined for the data access request. In addition, the processing module obtains DSN configuration information associated with a plurality of access resources that interface with DSN memory. Ranked scoring information is determined for the plurality of access resources based, at least in part, on the DSN configuration information and the addressing information. In an example, a distributed agreement protocol module is utilized to calculate the ranked scoring information as a processing capacity of a respective access resource divided by a negative log of a normalized deterministic function value based on the addressing information and an identifier. The ranked scoring information is then utilized to select an access resource for processing of the data access request.
    Type: Grant
    Filed: April 27, 2020
    Date of Patent: July 26, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Jason K. Resch, Thomas D. Cocagne