Method and system for optimizing data replication for large scale archives
US-10482101-B1 · Nov 19, 2019 · US
US11561930B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11561930-B2 |
| Application number | US-201916684943-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 15, 2019 |
| Priority date | Mar 30, 2016 |
| Publication date | Jan 24, 2023 |
| Grant date | Jan 24, 2023 |
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.
A fleet of query accelerator nodes is established for a data store. Each accelerator node caches data items of the data store locally. In response to determining that an eviction criterion has been met, one accelerator node removes a particular data item from its local cache without notifying any other accelerator node. After the particular data item has been removed, a second accelerator node receives a read query for the particular data item and provides a response using a locally-cached replica of the data item.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: obtaining, at a first query accelerator node of a plurality of query accelerator nodes associated with one or more data stores, a replica of a data item of a first data store of the one or more data stores; storing the replica in a cache at the first query accelerator node; and removing the replica from the cache without providing an indication of the removal to at least some other query accelerator nodes of the plurality of query accelerator nodes, wherein another replica of the data item is stored at least in another cache at a second query accelerator node of the other query accelerator nodes. 2. The method as recited in claim 1 , wherein said removing the replica is responsive to determining, at the first query accelerator node, that the data item meets an eviction criterion, wherein the eviction criterion comprises one or more of: (a) a criterion based on a time at which the data item was accessed, (b) a time-to-live criterion, (c) a size criterion, (d) a locality criterion or (e) a criterion based on a property of a client-side component of an acceleration service. 3. The method as recited in claim 1 , further comprising: instantiating at least one query accelerator node of the plurality of query accelerator nodes in response to a programmatic request. 4. The method as recited in claim 1 , further comprising: determining that a probability of obtaining a response to a read request from the second query accelerator node of the plurality of query accelerator nodes is greater than the probability of obtaining the response from the first query accelerator node; and directing the read request to the second query accelerator node. 5. The method as recited in claim 1 , wherein the other cache at the second query accelerator node differs from the cache at the first query accelerator node in one or more of: (a) a type of storage device used, (b) a performance capability or (c) a size. 6. The method as recited in claim 1 , wherein the plurality of query accelerator nodes comprises a master node and one or more non-master nodes, wherein the master node is configured to respond to write requests and read requests, and wherein the first query accelerator node is a non-master node, the method further comprising: requesting another replica of the data item from the master node by the first query accelerator node. 7. The method as recited in claim 1 , wherein the first data store comprises at least one of: (a) an instance of a relational database or (b) an instance of a non-relational database. 8. A system, comprising: a plurality of query accelerator nodes implemented at respective computing devices, including a first query accelerator node and a second query accelerator node, wherein the plurality of query accelerator nodes are associated with one or more data stores; and wherein the first query accelerator node is configured to: obtain a replica of a data item of a first data store of the one or more data stores; store the replica in a cache at the first query accelerator node; and remove the replica from the cache without providing an indication of the removal to at least the second query accelerator node of the plurality of query accelerator nodes, wherein another replica of the data item is stored at least in another cache at the second query accelerator node. 9. The system as recited in claim 8 , wherein the replica is removed from the cache in response to determining, at the first query accelerator node, that the data item meets an eviction criterion, wherein the eviction criterion comprises one or more of: (a) a criterion based on a time at which the data item was accessed, (b) a time-to-live criterion, (c) a size criterion, (d) a locality criterion or (e) a criterion based on a property of a client-side component of an acceleration service. 10. The system as recited in claim 8 , further comprising one or more control plane components of an acceleration service, wherein the one or more control plane components are configured to: instantiate at least one query accelerator node of the plurality of query accelerator nodes in response to a programmatic request. 11. The system as recited in claim 8 , wherein the cache at the first query accelerator node does not utilize a persistent storage device. 12. The system as recited in claim 8 , wherein the other cache at the second query accelerator node differs from the cache at the first query accelerator node in one or more of: (a) a type of storage device used, (b) a performance capability or (c) a size. 13. The system as recited in claim 8 , wherein the plurality of query accelerator nodes comprises a master node and one or more non-master nodes, wherein the master node is configured to respond to write requests and read requests, wherein the first query accelerator node is a non-master node, wherein the master node is configured to: transmit, in response to receiving a request for another replica of the data item from the first query accelerator node, a respective replica of the data item to the first query accelerator node and at least one other non-master node. 14. The system as recited in claim 8 , wherein the one or more data stores comprise at least one of: (a) an instance of a relational database or (b) an instance of a non-relational database. 15. One or more non-transitory computer-accessible storage media storing program instructions that when executed on or across one or more processors cause one or more computer systems to: obtain, at a first query accelerator node of a plurality of query accelerator nodes associated with one or more data stores, a replica of a data item of a first data store of the one or more data stores; store the replica in a cache at the first query accelerator node; and remove the replica from the cache without providing an indication of the removal to at least some other query accelerator nodes of the plurality of query accelerator nodes, wherein another replica of the data item is stored at least in another cache at a second query accelerator node of the other query accelerator nodes. 16. The one or more non-transitory computer-accessible storage media as recited in claim 15 , wherein the replica is removed from the cache in response to determining, at the first query accelerator node, that the data item meets an eviction criterion, wherein the eviction criterion comprises one or more of: (a) a criterion based on a time at which the data item was accessed, (b) a time-to-live criterion, (c) a size criterion, (d) a locality criterion or (e) a criterion based on a property of a client-side component of an acceleration service. 17. The one or more non-transitory computer-accessible storage media as recited in claim 15 , wherein the cache at the first query accelerator node comprises at least a portion of a persistent storage device. 18. The one or more non-transitory computer-accessible storage media as recited in claim 15 , wherein at least the first query accelerator node is configured at an acceleration service, and wherein one or more data stores comprise at least one of: (a) a file system, (b) a data store configured at least in part at a premise of a client of the acceleration service, or (c) a data store configured at least in part at a third-party premise. 19. The one or more non-transitory computer-accessible storage media as recited in claim 15 , storing further program instructions that when executed on or across one or more processors cause the one or more computer systems to: submit, from the
adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel · CPC title
Coherency control relating to peripheral accessing, e.g. from DMA or I/O device · CPC title
Replacement control · CPC title
in combination with broadcast means (e.g. for invalidation or updating) · CPC title
Delete operations (erasing in storage systems G06F3/0652) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.