Caching system for eventually consistent services

US10901915B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10901915-B2
Application numberUS-201816022090-A
CountryUS
Kind codeB2
Filing dateJun 28, 2018
Priority dateJun 28, 2017
Publication dateJan 26, 2021
Grant dateJan 26, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems, apparatuses, and methods may provide for an eventually-consistent distributed caching mechanism for database systems. As an example, the system may include a recently updated objects (RUO) manager, which may store object identifiers of recently updated objects and RUO time-to-live values of the object identifiers. As servers read objects from the cache or write objects into the cache, the servers may also check the RUO manager to determine if the object has been updated recently enough to be at risk of being stale or outdated. If so, the servers may invalidate the object stored at the cache as it may be stale, which results in eventual consistency across the distributed database system.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method comprising: sending, by a first computing device and to a second computing device, a request for an indication of whether an object is at risk of being outdated, wherein the object is associated with a duration value indicating a duration to store the object at a cache; receiving, from the second computing device, a response indicating that the object is at risk of being outdated; and after the receiving the response indicating that the object is at risk of being outdated, causing removal of the object from the cache. 2. The method of claim 1 , further comprising: receiving, from the second computing device, an indication that a second object is at risk of being outdated; and causing removal of the second object from the cache. 3. The method of claim 1 , further comprising: receiving, from the second computing device, an indication that a second object is not at risk of being outdated; and after the receiving the indication that the second object is not at risk of being outdated, maintaining storage of the second object at the cache. 4. The method of claim 1 , wherein the response indicating that the object is at risk of being outdated is based on a second duration value associated with the object and different from the duration value, and wherein the second duration value is based on a predicted time to propagate an update of the object across each of a plurality of databases of a distributed database system. 5. The method of claim 4 , wherein the duration value is at least two weeks and the second duration value is less than 15 minutes. 6. The method of claim 1 , further comprising: receiving an object identifier of a second object and a time-to-live (TTL) value of the object identifier; and causing, based on the object identifier of the second object and the TTL value of the object identifier, removal of the second object from the cache. 7. The method of claim 1 , further comprising: receiving an update to a second object; and after the receiving the update to the second object, sending, to the second computing device, a request for an indication of whether the second object is at risk of being outdated. 8. The method of claim 1 , further comprising: sending, to the second computing device and based on an update to the object, an object identifier of the object and a second duration value different from the duration value; and causing removal of the object from the cache. 9. The method of claim 1 , further comprising: sending, to the cache and before the sending the request for the indication, at least one of: the object, the duration value, or an object identifier of the object. 10. The method of claim 1 , further comprising: retrieving, by the first computing device, from the cache, and before the sending the request for the indication, the object. 11. The method of claim 1 , further comprising: causing, based on the response indicating that the object is at risk of being outdated, removal of the object from each cache of a plurality of caches. 12. The method of claim 1 , wherein the response indicating that the object is at risk of being outdated is based on one or more of: an indication that an object identifier for the object is on a list of recently updated objects, or a second duration value indicating a duration to store the object identifier on the list of recently updated objects. 13. A method comprising: sending, by a first computing device and to a second computing device, a request for an indication of whether an object is outdated, wherein the object is associated with a duration value indicating a duration to store the object at a cache; receiving, from the second computing device, a response indicating that the object is outdated; and after the receiving the response indicating that the object is outdated, causing removal of the object from the cache. 14. The method of claim 13 , further comprising: sending, by the first computing device and to the cache, a second object and a second duration value indicating a duration to store the second object at the cache; and after the sending the second object and after receiving an indication from the second computing device that the second object is outdated, causing removal of the second object from the cache. 15. The method of claim 13 , further comprising: receiving, from the second computing device, an indication that a second object is not outdated; and after the receiving the indication that the second object is not outdated, maintaining storage of the second object at the cache. 16. The method of claim 13 , wherein the response indicating that the object is outdated is based on a second duration value associated with the object and different from the duration value, and wherein the second duration value is based on a predicted time to propagate an update of the object across each of a plurality of databases of a distributed database system. 17. The method of claim 13 , further comprising: receiving an object identifier of a second object and a time-to-live (TTL) value of the object identifier; and after the receiving the object identifier of the second object and the TTL value of the object identifier, causing removal of the second object from the cache. 18. The method of claim 13 , further comprising: receiving an update to a second object; and after the receiving the update to the second object, sending, to the second computing device, a request for an indication of whether the second object is outdated. 19. The method of claim 13 , further comprising: sending, to the cache and before the sending the request for the indication, at least one of: the object, the duration value, or an object identifier of the object. 20. The method of claim 13 , further comprising: retrieving, by the first computing device, from the cache and before the sending the request for the indication, the object. 21. A method comprising: sending, by a first computing device and to a cache, an object and a duration value indicating a duration to store the object at the cache; sending, to a second computing device, a request for an indication of whether the object is outdated or at risk of being outdated; receiving, from the second computing device, a response indicating that the object is not outdated and is not at risk of being outdated; and after the receiving the response indicating that the object is not outdated and is not at risk of being outdated, maintaining storage of the object at the cache. 22. The method of claim 21 , further comprising: sending, to the cache, a second object and a second duration value indicating a duration to store the second object at the cache; and after the sending the second object and after receiving an indication from the second computing device that the second object is not outdated and is not at risk of being outdated, of the second object at the cache. 23. The method of claim 21 , further comprising: retrieving, from the cache, a second object associated with a second duration value indicating a duration to store the second object at the cache; and after the retrieving and after receiving an indication from the second computing device that the second object is not outdated and is not at risk of being outdated, maintaining storage of the second object at the cache. 24. The method of claim 21 , wherein the response indicating that the object is

Assignees

Inventors

Classifications

  • Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket · CPC title

  • with special data handling, e.g. priority of data or instructions, handling errors or pinning · CPC title

  • Interprogram communication · CPC title

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10901915B2 cover?
Systems, apparatuses, and methods may provide for an eventually-consistent distributed caching mechanism for database systems. As an example, the system may include a recently updated objects (RUO) manager, which may store object identifiers of recently updated objects and RUO time-to-live values of the object identifiers. As servers read objects from the cache or write objects into the cache, …
Who is the assignee on this patent?
Comcast Cable Comm Llc
What technology area does this patent fall under?
Primary CPC classification G06F12/123. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 26 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).