Optimizing performance for synchronous workloads
US-11520516-B1 · Dec 6, 2022 · US
US2025028471A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2025028471-A1 |
| Application number | US-202318356125-A |
| Country | US |
| Kind code | A1 |
| Filing date | Jul 20, 2023 |
| Priority date | Jul 20, 2023 |
| Publication date | Jan 23, 2025 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An example method of resynchronizing a first replica of an object and a second replica of an object in an object storage system, includes: determining, by storage software in response to the second replica transitioning from failed to available, a stale sequence number for the second replica, the storage software having associated the stale sequence number with the second replica when the second replica failed; querying, by the storage software, block-level metadata for the object using the stale sequence number, the block-level metadata relating logical blocks of the object with sequence numbers for operations on the object; determining, by the software as a result of the querying, a set of the logical blocks each related to a sequence number being the same or after the stale sequence number; and copying, by the storage software, data of the set of logical blocks from the first replica to the second replica.
Opening claim text (preview).
What is claimed is: 1 . A method of resynchronizing a first replica of an object and a second replica of an object in an object storage system, the object storge system providing storage for a host executing storage software, the method comprising: determining, by the storage software in response to the second replica transitioning from failed to available, a stale sequence number for the second replica, the storage software having associated the stale sequence number with the second replica when the second replica failed; querying, by the storage software, block-level metadata for the object using the stale sequence number, the block-level metadata relating logical blocks of the object with sequence numbers for operations on the object; determining, by the software as a result of the querying, a set of the logical blocks each related to a sequence number being the same or after the stale sequence number; and copying, by the storage software, data of the set of logical blocks from the first replica to the second replica. 2 . The method of claim 1 , further comprising: activating, by the storage software, the second replica after the copying. 3 . The method of claim 1 , wherein the storage software determines extents representing the set of logical blocks from the querying, each of the extents indicating a starting logical block and an offset from the starting logical block, and wherein the storage software copies the data using the extents. 4 . The method of claim 1 , wherein the sequence numbers are unique and the storage software changes the sequence number for each of the operations. 5 . The method of claim 4 , wherein the stale sequence number is one of the sequence numbers. 6 . The method of claim 1 , wherein the host is part of a cluster of hosts, the hosts including local storage devices aggregated to form the object storage system. 7 . The method of claim 6 , wherein the block-level metadata further relates the logical blocks with physical blocks of the local storage devices. 8 . A non-transitory computer readable medium comprising instructions to be executed in a computing device to cause the computing device to carry out a method of resynchronizing a first replica of an object and a second replica of an object in an object storage system, the object storge system providing storage for a host executing storage software, the method comprising: determining, by the storage software in response to the second replica transitioning from failed to available, a stale sequence number for the second replica, the storage software having associated the stale sequence number with the second replica when the second replica failed; querying, by the storage software, block-level metadata for the object using the stale sequence number, the block-level metadata relating logical blocks of the object with sequence numbers for operations on the object; determining, by the software as a result of the querying, a set of the logical blocks each related to a sequence number being the same or after the stale sequence number; and copying, by the storage software, data of the set of logical blocks from the first replica to the second replica. 9 . The non-transitory computer readable medium of claim 8 , further comprising: activating, by the storage software, the second replica after the copying. 10 . The non-transitory computer readable medium of claim 8 , wherein the storage software determines extents representing the set of logical blocks from the querying, each of the extents indicating a starting logical block and an offset from the starting logical block, and wherein the storage software copies the data using the extents. 11 . The non-transitory computer readable medium of claim 8 , wherein the sequence numbers are unique and the storage software changes the sequence number for each of the operations. 12 . The non-transitory computer readable medium of claim 11 , wherein the stale sequence number is one of the sequence numbers. 13 . The non-transitory computer readable medium of claim 8 , wherein the host is part of a cluster of hosts, the hosts including local storage devices aggregated to form the object storage system. 14 . The non-transitory computer readable medium of claim 13 , wherein the block-level metadata further relates the logical blocks with physical blocks of the local storage devices. 15 . A computer system, comprising: a hardware platform comprising an interface to an object storage system, the object storage system storing an object having a first replica and a second replica; system software, executing on the hardware platform, including storage software configured to: determine, in response to the second replica transitioning from failed to available, a stale sequence number for the second replica, the storage software having associated the stale sequence number with the second replica when the second replica failed; query block-level metadata for the object using the stale sequence number, the block-level metadata relating logical blocks of the object with sequence numbers for operations on the object; determine, as a result of the querying, a set of the logical blocks each related to a sequence number being the same or after the stale sequence number; and copy data of the set of logical blocks from the first replica to the second replica. 16 . The computer system of claim 15 , wherein the storage software is configured to: activate the second replica after the copying. 17 . The computer system of claim 15 , wherein the storage software determines extents representing the set of logical blocks from the querying, each of the extents indicating a starting logical block and an offset from the starting logical block, and wherein the storage software copies the data using the extents. 18 . The computer system of claim 15 , wherein the sequence numbers are unique and the storage software changes the sequence number for each of the operations. 19 . The computer system of claim 18 , wherein the stale sequence number is one of the sequence numbers. 20 . The computer system of claim 15 , wherein the host is part of a cluster of hosts, the hosts including local storage devices aggregated to form the object storage system.
Redundant storage or storage space (G06F11/2056 takes precedence) · CPC title
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Replication mechanisms · CPC title
in relation to data integrity, e.g. data losses, bit errors · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.