DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Status of Claims
Claims 1-9, 11-20, 22-31, and 33 are pending of which claims 1, 12 and 23 are in independent form.
Claims 1-9, 11-20, 22-31, and 33 are rejected under 35 U.S.C. 101.
Claims 1-9, 11-20, 22-31, and 33 are rejected under 35 U.S.C. 103.
Response to Arguments
Applicant’s arguments with respect to claim(s) 1-20, 22-31, and 33 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Regarding 35 USC 101 (Abstract Idea)
Applicant’s arguments have been fully considered but are not persuasive. Although Applicant(s) suggests that the amended claims cannot practically be performed in the human mind and improve database caching and improves database caching technology, the claims simply recite determining whether information is stored in a cache, determining caching priority, deciding whether the information should be cached, and deciding whether metadata should be updated based on rules.
These limitations, correspond to observation, evaluation, judgment, and decision making, which falls within the Mental Process grouping of abstract ideas.
The remaining elements are merely generic processor, caches system and database functionality as tools to perform the abstract idea. Therefore, the additional elements do not integrate the judicial exception into a practical application.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-33 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
The claim(s) recite(s) caching data based on query workload.
With respect to step 1 of the patent subject matter eligibility analysis, the claims are directed to a process, machine, manufacture, or composition of matter.
Independent claim 1 is directed to non-transitory computer readable media, which is directed to one of the four statutory subject matters.
Independent claim 12 is directed to a method, which is a process.
Independent claim 23 is directed to a system which includes a memory and a processor, which is directed to one of the four statutory subject matters.
Independent All other claims depend on claims 1, 8 and 15. As such, claims 1-20 are directed to a statutory category.
Regarding claims 1, 12 and 23:
With respect to step 2A, prong one (Judicial Exception), the claims recite an abstract idea, law of nature, or natural phenomenon. Specifically, the following limitations recite mathematical concepts and/or mental processes and/or certain methods of organizing human activity.
The claim recites sequence of operations that amount to information organization, searching, evaluation, and ranking directed to an abstract idea:
receiving a request to access a database;
determining a caching priority;
decide whether to cache,
decide whether the metadata should be updated;
selectively caching or not caching data based on the cache priority/rules.
These steps fall into recognized abstract idea:
Receiving and processing request, generating results, and deciding whether to store data are information processing and managing data, these steps are classified as:
Mental Process (determining caching priority which is making a decision; processing a request which is analyzing information; deciding whether to store the results which conditional logic);
Mathematical/Data Manipulation algorithm (generating query results and writing/storing data are classic information processing activities. Storing, selecting, organizing, retrieving, and manipulating data are considered abstract idea);
There are no steps performed that provides a technical improvement to the computing system itself (improved caching algorithm, improved database indexing, improved memory efficiency, improved cache eviction strategy; improved computing architecture). All the steps are generic, and conventional.
Thus, the claims recite an abstract idea (Mental Process/Mathematical/Data Manipulation algorithm).
With respect to step 2A, Prong Two (Particular Application), the claims do not recite additional elements that integrate the judicial exception into a practical application. The following limitations are considered “additional elements” and explanation will be given as to why these “additional elements” do not integrate the judicial exception into a practical application.
The claims recite:
The computer, processor, request, and database are recited at a very high level of generality (memory, processing device, could computing platform) and are generic computer components.
No improvement to:
Network performance
Caching architecture
Database indexing
Hardware resource allocation
System latency or throughput
No particular caching algorithm or data structure are specified – the claim merely decide whether to cache based on a priority, which is just conditional storage logic, understood and conventional.
These components merely use conventional computer components as tools to execute the abstract idea.
The limitations fail to transform the exception into a practical application. There is also no improvements to computer functionality or any specific technical solution to a computer centric problems (no improvements to data structure, or improved query execution mechanism, reduced latency, memory usage, or network overhead, or any technical modification to how the cloud platform itself operates). The computer merely used as a tool to: store metadata, execute search, calculate rankings, and display results, which are abstract improvements to information presentation and not technical improvements.
There is no recitation of, a new data structure that changes computer operation, improved communication, an unconventional indexing technique, a specific hardware solution.
Instead the claims recite conventional and generic computer functions performed in a routine manner, which does not amount to a practical application.
With respect to Step 2B. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. The recited components are merely generic computer/database elements performing their routine, well-understood, and conventional functions. See Alive, MPEP 2016.05(d).
The steps mentioned in the independent claims merely constitutes standard distributed-database behavior, such and basic replication, mirroring, and ownership transfer. Courts have consistently helped such high level information management operations are conventional.
The claims recite only, without significantly more, listing specific signals and external signals are result oriented and functional (without technical implementation), no practical algorithm, signal generation technique, or ranking mechanism. All are routine, conventional operations business/ market place logic.
Considering claims as a whole, the ordered combination of elements also reflects nothing more than the typical workflow of distributed systems, and therefore DOES NOT add “significantly more” than the abstract idea.
Such generic, high‐level, and nominal involvement of a computer or computer‐based elements for carrying out the invention merely serves to tie the abstract idea to a particular technological environment, which is not enough to render the claims patent‐eligible, as noted at pg.74624 of Federal Register/Vol. 79, No. 241, citing Alice, which in turn cites Mayo. Further, See, e.g., Alice Corp. Pty. Ltd. v. CLS Bank Int'l, 134 S. Ct. 2347, 2359‐60, 110 USPQ2d 1976, 1984 (2014). See also OIP Techs. v. Amazon.com, 788 F.3d 1359, 1364, 115 USPQ2d 1090, 1093‐94 (Fed. Cir. 2015) ("Just as Diehr could not save the claims in Alice, which were directed to 'implement[ing] the abstract idea of intermediated settlement on a generic computer', it cannot save O/P's claims directed to implementing the abstract idea of price optimization on a generic computer.") (citations omitted). See also, Affinity Labs of Texas LLC v. DirecTV LLC, 838 F.3d 1253, 1257‐1258 (Fed. Cir. 2016) (mere recitation of a GUI does not make a claimpatent‐eligible); Intellectual Ventures I LLC v. Capital One Bank, 792 F.3d 1363, 1370 (Fed. Cir. 2015) ("the interactive interface limitation is a generic computer element".).
The additional elements are broadly applied to the abstract idea at a high level of generality ("similar to how the recitation of the computer in the claims in Alice amounted to mere instructions to apply the abstract idea of intermediated settlement on a generic computer,") as explained in MPEP § 2106.05(f)) and they operate in a well‐understood, routine, and conventional manner.
MPEP § 2106.0S(d)(II) sets forth the following:
The courts have recognized the following computer functions as well-understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity.
• Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec ... ; TLI Communications LLC v. AV Auto. LLC ... ; OIP Techs., Inc., v. Amazon.com, Inc ... ; buySAFE, Inc. v. Google, Inc ... ;
• Performing repetitive calculations, Flook ... ; Bancorp Services v. Sun Life ... ;
• Electronic recordkeeping, Alice Corp ... ; Ultramercial ... ;
• Storing and retrieving information in memory, Versata Dev. Group, Inc. v. SAP Am., Inc ... ;
• Electronically scanning or extracting data from a physical document, Content Extraction and Transmission, LLC v. Wells Fargo Bank ... ; and
• A web browser's back and forward button functionality, Internet Patent
• Corp. v. Active Network, Inc. ...
. . . Courts have held computer-implemented processes not to be significantly more than an abstract idea (and thus ineligible) where the claim as a whole amounts to nothing more than generic computer functions merely used to implement an abstract idea, such as an idea that could be done by a human analog (i.e., by hand or by merely thinking).
In addition, when taken as an ordered combination, the ordered combination adds nothing that is not already present as when the elements are taken individually. There is no indication that the combination of elements integrate the abstract idea into a practical application. Their collective functions merely provide conventional computer implementation. Therefore, when viewed as a whole, these additional claim elements do not provide meaningful limitations to transform the abstract idea into a practical application of the abstract idea or that the ordered combination amounts to significantly more than the abstract idea itself.
The dependent claims have been fully considered as well, however, similar to the findings for claims above, these claims are similarly directed to the “Mental Processes” grouping of abstract ideas set forth in the 2019 PEG, without integrating it into a practical application and with, at most, a general purpose computer that serves to tie the idea to a particular technological environment, which does not add significantly more to the claims. The ordered combination of elements in the dependent claims (including the limitations inherited from the parent claim(s)) add nothing that is not already present as when the elements are taken individually. There is no indication that the combination of elements improves the functioning of a computer or improves any other technology. Their collective functions merely provide conventional computer implementation. Accordingly, the subject matter encompassed by the dependent claims fails to amount to significantly more than the abstract idea.
Looking at the claim as a whole does not change this conclusion and the claim is ineligible.
Regarding claims 2, 13 and 24,
The claim recites:
Database specified as SQL or NoSQL.
This is merely limiting the system to well-known database types, which is field of use limitation. SQL or NoSQL selection does not change how caching is performed or improve computer functionality. This simply performs the same abstract caching logic on a known database system It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 3, 14 and 25,
The claim recites:
Caching priority determined from a flag or bit.
Reading a flag/bit is a routine parameter check. Extracting request metadata is a generic data-processing step performed conventionally. This does not improve caching structure or database performance. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 4, 15 and 26,
The claim recites:
Caching priority determined from a parameter in the request.
Identifying a request parameter is a mental process and basic request parsing. There is a no recitation of how parameters are interpreted, weighted or used. This does not improve caching structure or database performance, and still implements abstract conditional caching logic. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 5, 16 and 27,
The claim recites:
Caching priority specifies caching when priority is high.
Recites an if-then logic (if high priority, cache). Conditional decision-making is a classic abstract mental step, even if computerized. There is no technological improvement to cache design or operation. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 6, 17 and 28,
The claim recites:
Caching priority set by a workload making the request.
Categorizing workloads is data classification, a recognized mental process. This simply narrows input condition (workload type), not system functionality. Does not specify a new workload model, monitoring technique, or caching mechanism. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 7, 18 and 29,
The claim recites:
When the workload is an end-user workload, caching occurs.
This merely applies the abstract caching rule to a specific caller. Substituting one label for another does not alter the nature of the abstract caching. End user/system, workload distinction is conceptual, not technical. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 8, 19 and 30,
The claim recites:
When the workload is analytical workload, caching does not occur.
This adds a different condition to the same abstract logic flow. Workload type selection is information categorization, not a technical solution. This does not improve database, cache structure, or hardware operation. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 9, 20 and 31,
The claim recites:
For low caching priority, makes caching decision based on cache utilization.
Monitoring cache utilization is routine system monitoring activity. Determining whether to cache based on utilization is still conditional logic. This does not recite a particular cache management algorithm. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 10, 21 and 32, (Cancelled).
Regarding claims 11, 22 and 33,
The claim recites:
Check cache first, if not found, query DB and store result.
This is the classic cache-miss decision tree used in virtually every caching system. No technical implementation details provided (such as LRU, TTL, indexing, etc.). This simply automates as well-known fallback procedure using generic processing. It does not improve execution, indexing structures, or computer functionality.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1, 2-5, 9, 11-13-16, 20, 22-27, 31 and 33 are rejected under 35 U.S.C. 103 as being unpatentable over Holmes; Dennis (US 10942866 B1) [Holmes], in view of Won; Jaeyeon et al. (US 20230024210 A1) [Won] in view of Ganesan; Ashok et al. (US 20250384036 A1) [Ganesan] in view of Li; Cheng et al. (US 9921963 B1) [Li].
Regarding claims 1, 12 and 23, Holmes discloses, one or more non-transitory computer-readable media storing program instructions that, when executed by one or more processors associated with a first computing device, cause the one or more processors to perform a method comprising: receiving a request to access a database (querying a database [col. 10, ll. 32-46]. Also see [col. 5, ll. 24-30], [col. 12, ll. 50-58]);
determining a caching priority specified in the request (For some embodiments, the caching strategy using the priority cache 606 is to optimize simple, critical workflows but not duplicate database query functionality. Thus an approach is used where the priority cache 606 can satisfy a query which is based on a unique identifier of the data item. For example, when using the priority cache 606 with the media database, the unique identifier for the volumes and save sets is the volume ID or the save set ID. For client lookups, the client ID may be used; however, the client name may be used instead of the client ID since it is also unique and a more frequently used query criterion database [col. 10, ll. 32-46]. Also see [col. 12, ll. 50-58]);
after generating the query results, cache or not cache data from which the query results are generated based on the determined caching priority (Depending on that determination, the application may assign one of the available priority levels to the data item, as shown in block 1320. A high priority level may result to the data item being stored in a cache region associated with the high priority level. A low priority level may result in the data item being stored in a cache region associated with a low priority level [col. 13, ll. 20-26]).
However, Holmes does not explicitly facilitate processing the request to generate query results.
Won discloses, processing the request to generate query results (As described herein, a cache hit occurs when a query execution plan is requested from a plan cache and the plan cache is able to fulfill that request, and a cache miss occurs when a query execution plan is requested from a plan cache but the query execution plan is not found in the plan cache ¶ [0025]. Also see ¶ [0056]-[0058]. Also see ¶ [0060]-[0061], [0063]).
It would have been obvious to one ordinary skilled in the art at the time of the present invention to combine the teachings of the cited references because Won’s system would have allowed Holmes to facilitate processing the request to generate query results. The motivation to combine is apparent in the Holmes’ reference, because there need for an improved system and method for managing the size of a query plan cache in a DBMS.
However, neither Holmes nor Won explicitly facilitate determining whether data from which the query results are generated is stored in a cache; in response to determining that the data is stored in the cache [and that the determined caching priority indicates that caching should not occur], returning the query results [without updating cache replacement metadata] for the data stored in the cache; and in response to determining that the data is not stored in the cache, [cache or not cache the data based on the determined caching priority].
Ganesan discloses, determining whether data from which the query results are generated is stored in a cache (A cache hit occurs when a matching “key” that includes the user query is found in the cache, while a cache miss occurs when no matching “key” is found in the cache ¶ [0061], [0062], [0065]);
in response to determining that the data is stored in the cache (When a cache hit occurs for the user query ¶ [0061], [0066], [0068]);
returning the query results …for the data stored in the cache (When a cache hit occurs for the user query, at block 212, the “value” of the matching “key” may be retrieved from the cache 208 and returned as a result for the user query ¶ [0061], [0066], [0068]);
in response to determining that the data is not stored in the cache (a cache miss occurs when no matching “key” is found in the cache ¶ [0061], [0066], [0069]).
It would have been obvious to one ordinary skilled in the art at the time of the present invention to combine the teachings of the cited references because Ganesan’s system would have allowed Holmes and Won to facilitate determining whether data from which the query results are generated is stored in a cache; in response to determining that the data is stored in the cache, returning the query results for the data stored in the cache; and in response to determining that the data is not stored in the cache. The motivation to combine is apparent in the Holmes and Won’s reference, because there need for an improve search performance, and more specifically, to using semantic caching to improve search performance.
However, neither one of Holmes, Won, Ganesan explicitly facilitates and that the determined caching priority indicates that caching should not occur; without updating cache replacement metadata; cache or not cache the data based on the determined caching priority.
Li discloses, and that the determined caching priority indicates that caching should not occur (The cache manager may choose not to insert the requested data into the cache device because its priority does not justify insertion [col. 8, ll. 49-62], priority contains a priority level for each segment contained in cache unit … the priority level is provided by a cache client [col. 10, ll. 24-53]);
without updating cache replacement metadata (cache manager does not re-calculate scores for unaffected cache unit metadata … cache unit metadata is unaffected [col. 26, ll. 26-col. 27, ll. 37]);
cache or not cache the data based (cache manager may cache the requested data in cache units of cache device …. The cache manager may choose not to insert the requested data into the cache device because its priority does not justify insertion [col. 8, ll. 48-63]) on the determined caching priority (because its priority does not justify insertion [col. 8, ll. 48-63], the priority level is provided by a cache client. … when a client requests access to a file, it may provide as part of the request a priority level [col. 10, ll. 40-53]).
It would have been obvious to one ordinary skilled in the art at the time of the present invention to combine the teachings of the cited references because Li’s system would have allowed Holmes, Won, and Ganesan to facilitate and that the determined caching priority indicates that caching should not occur; without updating cache replacement metadata; cache or not cache the data based on the determined caching priority. The motivation to combine is apparent in the Holmes, Won, and Ganesan’s reference, because there need for an improve cache management system for cache to be effective at reducing system latency.
Regarding claims 2, 13 and 24, the combination of Holmes, Won, Ganesan and Li discloses, wherein the database is a structured query language (SQL) database or a NoSQL database (Won: If the cache manager 140 finds no query execution plan in the plan cache 192 that corresponds to the income query, the incoming query can be analyzed by the query parser 150, which can check if the query contains syntactic and/or semantic errors. After verifying that the incoming query is a valid transactional SQL statement that changes data (e.g., SELECT, INSERT, UPDATE, DELETE, MERGE, etc.), the query parser 150 can generate one or more execution trees in which the query can be run ¶ [0019] and [0015]).
Regarding claims 3, 14 and 25, the combination of Holmes, Won, Ganesan and Li discloses, wherein the determined caching priority is determined based on a flag or a bit in the request (Li: cache unit metadata includes, but is not limited to, priority, file identifier (ID), segment count , deletion hints (DH) , access time, access count, and hotness [Col. 10, ll. 1-24], also see [col. 10, ll. 34-col. 11, ll. ]).
Regarding claims 4, 15 and 26, the combination of Holmes, Won, Ganesan and Li discloses, wherein the determined caching priority is determined based on a parameter in the request (Holmes: thus an approach is used where the priority cache 606 can satisfy a query which is based on a unique identifier of the data item. For example, when using the priority cache 606 with the media database, the unique identifier for the volumes and save sets is the volume ID or the save set ID [col. 10, ll. 38-43]).
Regarding claims 5, 16 and 27, the combination of Holmes, Won, Ganesan and Li discloses, wherein the caching priority specifies to cache the data from which the query results are generated when the determined caching priority is a high caching priority (Holmes: For example, the first priority level may be considered the highest priority level, and the data items stored in the cache region 650 may need to be replaced less frequently than the data items in the other cache regions. Each cache region may store zero or more data items. Each cache region may have a minimum size (also referred to as a reservation) [col. 9, ll. 4-10]. Also see [col. 9, ll. 54, col, 10, ll. 8], [col. 12, ll. 31-37]).
Regarding claim 9, 20 and 31, the combination of Holmes, Won, Ganesan and Li discloses, wherein when the determined caching priority indicates a low caching priority, further determining whether to cache or not cache the data from which the query results are generated based on a cache utilization (Holmes: For some embodiments, the application 605 may be configured to decide not to add a low value data item to the priority cache 606 when further reference to the data item may not be likely. The use of different priority levels may prevent lower priority data items from displacing higher priority data items from the priority cache 606. For example, when a low priority level cache region is full, and a new low priority level data item is to be added to that cache region, a LRU data item from the low priority level cache region is removed to enable adding the new data item, instead of adding the new data item to a higher priority level cache region [col. 9, ll. 51-62]. Also see [col. 13, ll. 20-29]).
Regarding claims 10, 21 and 32, (Canceled).
Regarding claim 11, 22 and 33, the combination of Holmes, Won, Ganesan and Li discloses, wherein the method further comprises: in response to determining that the data from which the query results of the request are generated are stored in a cache, returning the query results of the request based on the data in the cache; and in response to determining that the data from which query results of the request are generated are not stored in the cache: determining the query results by querying the database; and in response to determining that the determined caching priority indicates that caching should occur, storing the data from which the query results of the request are generated in the cache (Li: A cache hit occurs when a matching “key” that includes the user query is found in the cache, while a cache miss occurs when no matching “key” is found in the cache ¶ [0061], [0062], [0065], When a cache hit occurs for the user query…When a cache hit occurs for the user query, at block , the “value” of the matching “key” may be retrieved from the cache and returned as a result for the user query ¶ [0061], [0066], [0068], [0069]).
Claims 6-8, 17-19 and 28-30 are rejected under 35 U.S.C. 103 as being unpatentable over Holmes, in view of Won, in view of Ganesan in view of Li in view of NASSI; Luca et al. (US 20250238379 A1) [Nassi].
Regarding claims 6, 17 and 28, the combination of Holmes, Won, Ganesan and Li teaches all the limitation of claim 1, 12 and 13.
However, neither one of Holmes, Won, Ganesan and Li explicitly facilitates wherein the caching priority is set by a workload making the request.
Nassi discloses, wherein the caching priority is set by a workload making the request (Processing performance for a latency-bound workload may be more sensitive to latency of an individual cache access request than processing performance for a bandwidth-bound workload ¶ [0037]. Hence, available cache bandwidth can be more scarce for bandwidth-bound workloads than for latency-bound workloads ¶ [0038]-[0039]. Also see ¶ [0043], [0049], [0094]-[0096]).
It would have been obvious to one ordinary skilled in the art at the time of the present invention to combine the teachings of the cited references because Nassi’s system would have allowed Holmes, Won, Ganesan and Li to facilitate wherein the caching priority is set by a workload making the request. The motivation to combine is apparent in the Holmes, Won, Ganesan and Li’s reference, because there need for an improved cache allocation process performed for a given cache allocation transaction already selected for servicing by the cache, to free up bandwidth for servicing another cache access transaction.
Regarding claims 7, 18 and 29, the combination of Holmes, Won, Ganesan, Li, and Nassi discloses, wherein the caching priority is set to cache the data from which the query results are generated when the workload is an end-user workload (Holmes: Client systems 113, 116, and 119 enable users to access and query information stored by server system 122. In a specific embodiment, a “Web browser” application executing on a client system enables users to select, access, retrieve, or query information stored by server system 122 [col. 3, ll. 18-20]. Also see [col. 3, ll. 10-17]).
Regarding claims 8, 19 and 30, the combination of Holmes, Won, Ganesan, Li, and Nassi discloses, wherein the determined caching priority specifies to not cache the data from which the query results are generated when the workload is an analytical workload (Nassi: Processing performance for a latency-bound workload may be more sensitive to latency of an individual cache access request than processing performance for a bandwidth-bound workload ¶ [0037]. Hence, available cache bandwidth can be more scarce for bandwidth-bound workloads than for latency-bound workloads ¶ [0038]-[0039]. Also see ¶ [0043], [0049], [0094]-[0096]. The latency determines the caching management).
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MOHAMMAD S ROSTAMI whose telephone number is (571)270-1980. The examiner can normally be reached Mon-Fri From 9 a.m. to 5 p.m..
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Boris Gorney can be reached at (571)270-5626. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
5/16/2026
/MOHAMMAD S ROSTAMI/Primary Examiner, Art Unit 2154