US 12,072,840 B2
Catalog query framework on distributed key value store
Lin Chan, Bellevue, WA (US); Tianyi Chen, Kirkland, WA (US); Robert Bengt Benedikt Gernhardt, Seattle, WA (US); Nithin Mahesh, Kirkland, WA (US); and Eric Robinson, Sammamish, WA (US)
Assigned to Snowflake Inc., Bozeman, MT (US)
Filed by Snowflake Inc., Bozeman, MT (US)
Filed on Mar. 7, 2023, as Appl. No. 18/179,793.
Application 18/179,793 is a continuation of application No. 17/809,829, filed on Jun. 29, 2022, granted, now 11,645,232.
Application 17/809,829 is a continuation of application No. 17/514,227, filed on Oct. 29, 2021, granted, now 11,403,259.
Prior Publication US 2023/0205735 A1, Jun. 29, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 15/16 (2006.01); G06F 16/14 (2019.01); G06F 16/16 (2019.01)
CPC G06F 16/148 (2019.01) [G06F 16/164 (2019.01)] 21 Claims
OG exemplary drawing
 
1. A method comprising:
receiving a first show command;
in response to the first show command, initiate fetching a first set of first layer objects in a first layer of a metadata database;
stopping execution of the first show command before all objects in the first set of first layer objects are fetched;
inserting a bookmark indicating where the first show command was stopped in relation to fetching the first set of objects;
receiving a second show command;
in response to the second show command, retrieving the bookmark and fetching remaining objects in the first set of first layer objects in the first layer of the metadata database up to a first bounded limit using a first memory space;
fetching a first set of second layer objects in a second layer of the metadata database corresponding to the first set of first layer objects in the first layer up to a second bounded limit using a second memory space;
fetching dependency information associated with the first set of second layer objects;
flushing the second memory space;
fetching a second set of second layer objects in the second layer of the of the metadata database corresponding to the first set of first layer objects in the first layer up to the second bounded limit using the flushed second memory space;
fetching dependency information associated with the second set of second layer objects;
compiling dependency information associated with the first and second sets of second layer objects; and
generating results for the second show command based on the compiled dependency information.