US 11,775,519 B2
Optimizing indexes for accessing database tables
Jyothi Balaka, San Ramon, CA (US)
Assigned to Salesforce, Inc., San Francisco, CA (US)
Filed by salesforce.com, inc., San Francisco, CA (US)
Filed on Apr. 8, 2021, as Appl. No. 17/225,280.
Prior Publication US 2022/0327126 A1, Oct. 13, 2022
Int. Cl. G06F 16/24 (2019.01); G06F 16/2453 (2019.01); G06N 20/00 (2019.01); G06F 16/22 (2019.01)
CPC G06F 16/24539 (2019.01) [G06F 16/221 (2019.01); G06F 16/2282 (2019.01); G06N 20/00 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A system for optimizing indexes for accessing database tables and, the system comprising:
one or more processors; and
a non-transitory computer readable medium storing a plurality of instructions, which when executed, cause the one or more processors to:
train a machine-learning model to determine counts of instances of a plurality of column values that are specified, respectively, for corresponding columns by any database operation on a database table and to determine an associated threshold for the plurality of column values for their corresponding columns, in response to executing a set of database operations;
identify each column value that is associated with a determined count satisfying an associated threshold as a corresponding frequently accessed column value;
create an index for each column of the database table that stores any frequently accessed column value;
insert each frequently accessed column value, stored in the columns of the database table, into a corresponding index that was created for a corresponding column, of the database table, which stores any frequently accessed column value;
determine whether the corresponding created index matches a specific column and stores any frequently accessed column value that matches a specific column value, in response to receiving a database operation that specifies the specific column value for the specific column in the database table; and
access a record, which is associated with the specific column and the specific column value, via the database table by referencing a matching frequently accessed column value in a matching created index, in response to a determination that the corresponding created index matches the specific column and stores any frequently accessed column value that matches the specific column value.