Self-learning cache repair tool

US10157140B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10157140-B2
Application numberUS-201715471847-A
CountryUS
Kind codeB2
Filing dateMar 28, 2017
Priority dateMar 28, 2017
Publication dateDec 18, 2018
Grant dateDec 18, 2018

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.

An apparatus includes an interface, a capacity engine, a monitoring engine, and a purging engine. The interface receives a request to repair a cache. The capacity engine monitors a cache to determine a first amount of data the cache receives in a first predetermined amount of time. The capacity engine determines a second amount of data indicating an estimated amount of data the cache will receive in a second predetermined amount of time. The capacity engine determines a size of the cache and a maximum size threshold using the second amount of data. The monitoring engine determines an available capacity of the cache and that the available capacity is less than or equal to the maximum size threshold. The purging engine purges data from the cache.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus, comprising: an interface configured to receive a request to repair a cache; a hardware processor configured to execute software instructions to: monitor a cache to determine a first amount of data the cache receives in a first predetermined amount of time; determine a second amount of data indicating an estimated amount of data the cache will receive in a second predetermined amount of time different from the first predetermined amount of time by determining an average amount of data that the cache received in a third predetermined amount of time; generate periodic data by determining that the cache receives data at predetermined periodic time periods; determine a size of the cache; determine a maximum size threshold using the second amount of data and the periodic data, wherein the maximum size threshold is less than a total storage capacity of the cache; determine an available capacity of the cache; determine that the available capacity is less than or equal to the maximum size threshold; initiate a self-purging process upon a determination that the available capacity is less than or equal to the maximum size threshold, wherein the self-purging process purges data from the cache; and purge a third amount of the data based on at least a data type of the data, wherein the data type is one of a device type and a device location, the data type is assigned a ranking and selected based on its ranking. 2. The apparatus of claim 1 , wherein the hardware processor is further configured to execute software instructions to: determine a minimum cache capacity based, at least in part, on the first amount of data the cache receives during the first predetermined amount of time; and purge data until the cache reaches the minimum cache capacity. 3. The apparatus of claim 2 , wherein the maximum size threshold is 85-95% capacity and the minimum cache capacity is 50-75% capacity. 4. The apparatus of claim 1 , wherein the hardware processor is further configured to execute software instructions to purge the data from the cache while an application is running. 5. A method, comprising: receiving a request to repair a cache; monitoring a cache to determine a first amount of data the cache receives in a first predetermined amount of time; determining a second amount of data indicating an estimated amount of data the cache will receive in a second predetermined amount of time different from the first predetermined amount of time by determining an average amount of data that the cache received in a third predetermined amount of time; generating periodic data by determining that the cache receives data at predetermined periodic time periods; determining a size of the cache; determining a maximum size threshold using the second amount of data and the periodic data, wherein the maximum size threshold is less than a total storage capacity of the cache; determining an available capacity of the cache; and determining that the available capacity is less than or equal to the maximum size threshold; initiating a self-purging process upon a determination that the available capacity is less than or equal to the maximum size threshold, wherein the self-purging process purges data from the cache; and purging a third amount of the data based on at least a data type of the data, wherein the data type is one of a device type and a device location, the data type is assigned a ranking and selected based on its ranking. 6. The method of claim 5 , further comprising: determining a minimum cache capacity based, at least in part, on the first amount of data the cache receives during the first predetermined amount of time; and purging data until the cache reaches the minimum cache capacity. 7. The method of claim 6 , wherein the maximum size threshold is 85-95% capacity and the minimum cache capacity is 50-75% capacity. 8. The method of claim 5 , further comprising purging the data from the cache while an application is running. 9. A non-transitory computer-readable medium comprising software, the software when executed by one or more processing units operable to: receive a request to repair a cache; monitor a cache to determine a first amount of data the cache receives in a first predetermined amount of time; determine a second amount of data indicating an estimated amount of data the cache will receive in a second predetermined amount of time different from the first predetermined amount of time by determining an average amount of data that the cache received in a third predetermined amount of time; generate periodic data by determining that the cache receives data at predetermined periodic time periods; determine a size of the cache; determine a maximum size threshold using the second amount of data and the periodic data, wherein the maximum size threshold is less than a total storage capacity of the cache; determine an available capacity of the cache; determine that the available capacity is less than or equal to the maximum size threshold; initiate a self-purging process upon a determination that the available capacity is less than or equal to the maximum size threshold, wherein the self-purging process purges data from the cache; and purge a third amount of the data based on at least a data type of the data, wherein the data type is one of a device type and a device location, the data type is assigned a ranking and selected based on its ranking. 10. The medium of claim 9 , the software when executed by one or more processing units further operable to: determine a minimum cache capacity based, at least in part, on the first amount of data the cache receives during the first predetermined amount of time; and purge data until the cache reaches the minimum cache capacity. 11. The medium of claim 10 , wherein the maximum size threshold is 85-95% capacity and the minimum cache capacity is 50-75% capacity. 12. The medium of claim 9 , the software when executed by one or more processing units further operable to purge the data from the cache while an application is running.

Assignees

Inventors

Classifications

  • using clearing, invalidating or resetting means · CPC title

  • for planning or managing the needed capacity · CPC title

  • Physics · mapped topic

  • Performance improvement · CPC title

  • where the computing system component is a memory, e.g. virtual memory, cache (accessing, addressing or allocating within memory systems or architectures G06F12/00; checking stores for correct operation G11C29/00) · 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 US10157140B2 cover?
An apparatus includes an interface, a capacity engine, a monitoring engine, and a purging engine. The interface receives a request to repair a cache. The capacity engine monitors a cache to determine a first amount of data the cache receives in a first predetermined amount of time. The capacity engine determines a second amount of data indicating an estimated amount of data the cache will recei…
Who is the assignee on this patent?
Bank Of America
What technology area does this patent fall under?
Primary CPC classification G06F12/0891. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 18 2018 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).