US 11,868,261 B2
Prediction of buffer pool size for transaction processing workloads
Peyman Faizian, Thousand Oaks, CA (US); Mayur Bency, Redwood City, CA (US); Onur Kocberber, Thalwil (CH); Seema Sundara, Nashua, NH (US); and Nipun Agarwal, Saratoga, CA (US)
Assigned to Oracle International Corporation, Redwood Shores, CA (US)
Filed by Oracle International Corporation, Redwood Shores, CA (US)
Filed on Jul. 20, 2021, as Appl. No. 17/381,072.
Prior Publication US 2023/0022884 A1, Jan. 26, 2023
Int. Cl. G06F 16/2455 (2019.01); G06F 12/0842 (2016.01)
CPC G06F 12/0842 (2013.01) [G06F 16/24552 (2019.01); G06F 2212/6022 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A computer-executed method comprising:
predicting a size for a buffer pool that is used to cache a set of database objects managed by a database management system, comprising:
identifying each of one or more database objects, of the set of database objects, for optimal buffer pool size prediction analysis based, at least in part, on historical utilization data that comprise a number of requests to read from disk for said each database object,
for each database object, of the one or more identified database objects, determining an object-specific buffer pool size component, wherein determining a particular object-specific buffer pool size component for a particular database object of the one or more identified database objects comprises basing the particular object-specific buffer pool size component on a pre-determined percentage of an on-disk size of the particular database object, wherein the particular database object of the one or more identified database objects comprises one selected from a group consisting of a table column, a tablespace, a materialized view, and an index, and
calculating a predicted size for maximizing a hit rate of the buffer pool based on the one or more object-specific buffer pool size components for the one or more identified database objects; and
adjusting the size of the buffer pool in memory to be the predicted size;
wherein the method is performed by one or more computing devices.