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: 11675757Abstract: 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: GrantFiled: March 29, 2021Date of Patent: June 13, 2023Assignee: Ocient Holdings LLCInventors: Anna Veselova, Ravi V. Khadiwala, George Kondiles
-
Publication number: 20230176949Abstract: 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: ApplicationFiled: January 12, 2023Publication date: June 8, 2023Applicant: Pure Storage, Inc.Inventors: Ravi V. Khadiwala, Yogesh R. Vedpathak, Jason K. Resch, Asimuddin Kazi
-
Publication number: 20230177043Abstract: 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: ApplicationFiled: December 7, 2021Publication date: June 8, 2023Applicant: Ocient Holdings LLCInventors: Natalia Marie Jenuwine, George Kondiles, Anna Veselova, Ravi V. Khadiwala
-
Patent number: 11669546Abstract: 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: GrantFiled: April 27, 2022Date of Patent: June 6, 2023Assignee: Pure Storage, Inc.Inventors: Jason K. Resch, Scott M. Horan, Ravi V. Khadiwala, Greg R. Dhuse
-
Patent number: 11650879Abstract: 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: GrantFiled: March 31, 2022Date of Patent: May 16, 2023Assignee: Pure Storage, Inc.Inventors: Ravi V. Khadiwala, Jason K. Resch
-
Patent number: 11650883Abstract: 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: GrantFiled: April 27, 2022Date of Patent: May 16, 2023Assignee: Pure Storage, Inc.Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
-
Patent number: 11625300Abstract: 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 theType: GrantFiled: September 20, 2022Date of Patent: April 11, 2023Assignee: 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: 11620087Abstract: 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: GrantFiled: November 11, 2021Date of Patent: April 4, 2023Assignee: International Business Machines CorporationInventors: Greg R. Dhuse, Ravi V. Khadiwala, Jason K. Resch
-
Patent number: 11604707Abstract: 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: GrantFiled: December 4, 2017Date of Patent: March 14, 2023Assignee: 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: 11588892Abstract: 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: GrantFiled: April 29, 2020Date of Patent: February 21, 2023Assignee: PURE STORAGE, INC.Inventors: Ravi V. Khadiwala, Asimuddin Kazi
-
Patent number: 11567832Abstract: 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: GrantFiled: March 12, 2021Date of Patent: January 31, 2023Assignee: PURE STORAGE, INC.Inventors: Ravi V. Khadiwala, Yogesh R. Vedpathak, Jason K. Resch, Asimuddin Kazi
-
Publication number: 20230009883Abstract: 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 theType: ApplicationFiled: September 20, 2022Publication date: January 12, 2023Applicant: 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: 11487620Abstract: 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 storageType: GrantFiled: June 27, 2022Date of Patent: November 1, 2022Assignee: 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: 20220342760Abstract: 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: ApplicationFiled: May 30, 2022Publication date: October 27, 2022Applicant: Pure Storage, Inc.Inventors: Jason K. Resch, Ravi V. Khadiwala, Wesley B. Leggette
-
Publication number: 20220327022Abstract: 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 storageType: ApplicationFiled: June 27, 2022Publication date: October 13, 2022Applicant: 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: 11429486Abstract: 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: GrantFiled: October 30, 2020Date of Patent: August 30, 2022Assignee: 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: 20220261155Abstract: 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: ApplicationFiled: April 29, 2022Publication date: August 18, 2022Applicant: Pure Storage, Inc.Inventors: Bruno H. Cabral, Joseph M. Kaczmarek, Ravi V. Khadiwala, Ilya Volvovski, Manish Motwani, Ethan S. Wozniak
-
Publication number: 20220253357Abstract: 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: ApplicationFiled: April 27, 2022Publication date: August 11, 2022Applicant: Pure Storage, Inc.Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
-
Publication number: 20220253355Abstract: 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: ApplicationFiled: April 27, 2022Publication date: August 11, 2022Applicant: Pure Storage, Inc.Inventors: Jason K. Resch, Scott M. Horan, Ravi V. Khadiwala, Greg R. Dhuse
-
Patent number: 11398988Abstract: 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: GrantFiled: April 27, 2020Date of Patent: July 26, 2022Assignee: PURE STORAGE, INC.Inventors: Ravi V. Khadiwala, Jason K. Resch, Thomas D. Cocagne