US 12,229,160 B2
Optimize workload performance by automatically discovering and implementing in-memory performance features
Nirav Vyas, Karnataka (IN); Hariharan Lakshmanan, Brisbane, CA (US); Shasank Kisan Chavan, Menlo Park, CA (US); and Gary Smith, Auburn, CA (US)
Assigned to ORACLE INTERNATIONAL CORPORATION, Redwood Shores, CA (US)
Filed by Oracle International Corporation, Redwood Shores, CA (US)
Filed on Sep. 29, 2023, as Appl. No. 18/374,852.
Claims priority of provisional application 63/411,795, filed on Sep. 30, 2022.
Prior Publication US 2024/0111772 A1, Apr. 4, 2024
Int. Cl. G06F 16/27 (2019.01); G06F 11/34 (2006.01); G06F 12/02 (2006.01); G06F 16/22 (2019.01); G06F 16/23 (2019.01); G06F 16/245 (2019.01); G06F 16/2453 (2019.01); G06F 16/2455 (2019.01); G06F 16/25 (2019.01); G06F 16/28 (2019.01)
CPC G06F 16/27 (2019.01) [G06F 11/3414 (2013.01); G06F 11/3419 (2013.01); G06F 12/023 (2013.01); G06F 16/221 (2019.01); G06F 16/2219 (2019.01); G06F 16/2365 (2019.01); G06F 16/2379 (2019.01); G06F 16/2453 (2019.01); G06F 16/24552 (2019.01); G06F 16/24561 (2019.01); G06F 16/24569 (2019.01); G06F 16/258 (2019.01); G06F 16/285 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
maintaining a particular set of in-memory units (IMU) for processing database operations in a database system;
obtaining database workload information that reflects work performed by the database system during a particular period of time;
filtering the database workload information to identify a subset of the database workload information that performed particular operations that potentially would have benefitted from performance optimizations made to one or more IMUs of the particular set of IMUs;
analyzing the subset of the database workload information to identify a set of performance optimizations that potentially would have provided a benefit to the particular operations;
ranking performance optimizations in the set of performance optimizations based, at least in part, on projected benefits of each performance optimization;
based on the ranking, selecting a subset of performance optimizations from the set of performance optimizations;
generating new versions of one or more IMUs of the particular set of IMUs, wherein the new versions reflect the subset of performance optimizations, where generating new versions includes updating the one or more IMUs to contain functionality corresponding to the subset of performance optimizations to generate the new versions of the one or more IMUs; and
making a first set of IMUs available for use by a current workload within the database system, wherein the first set of IMUs includes at least a subset of the new versions of one or more IMUs.