US 11,789,923 B2
Compression units in an index block
Kam Shergill, Maidenhead (GB); Ankita Kumar, Bellevue, WA (US); Himanshu Chatterjee, Fremont, CA (US); Vineet Marwah, San Ramon, CA (US); and Srinivas Vemuri, Santa Clara, CA (US)
Assigned to Oracle International Corporation, Redwood Shores, CA (US)
Filed by Oracle International Corporation, Redwood Shores, CA (US)
Filed on Sep. 16, 2016, as Appl. No. 15/267,759.
Claims priority of provisional application 62/245,979, filed on Oct. 23, 2015.
Prior Publication US 2017/0116280 A1, Apr. 27, 2017
Int. Cl. G06F 16/23 (2019.01); G06F 16/22 (2019.01)
CPC G06F 16/2343 (2019.01) [G06F 16/2272 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
generating a first leaf block and a second leaf block of a database index for a table, wherein the first leaf block corresponds to a first range of key values and the second leaf block corresponds to a second range of key values;
determining a first compression scheme for a first plurality of index entries with key values within the first range;
determining a second compression scheme for a second plurality of index entries with key values within the second range, wherein said first compression scheme is different than said second compression scheme;
generating a first compression unit comprising a first plurality of compressed index entries by applying the first compression scheme to a first plurality of subsets of said first plurality of index entries;
generating a second compression unit comprising a second plurality of compressed index entries by applying the second compression scheme to the second plurality of index entries;
generating first compression metadata describing the first compression scheme and second compression metadata describing the second compression scheme;
storing the first compression unit and the first compression metadata in the first leaf block;
storing the second compression unit and the second compression metadata in the second leaf block; and
wherein said first plurality of compressed index entries include a plurality of sentinel index entries that have a lower level of compression than said first compression scheme, wherein individual entries of said plurality of sentinel index entries are placed at regular intervals throughout said first plurality of compressed index entries; and
the method is performed by one or more computing devices.