US 11,687,373 B2
Flexible computing
Thierry Cruanes, San Mateo, CA (US); Igor Demura, San Mateo, CA (US); Varun Ganesh, San Bruno, CA (US); Prasanna Rajaperumal, Bangalore (IN); Libo Wang, Foster City, CA (US); and Jiaqi Yan, Menlo Park, CA (US)
Assigned to Snowflake Inc., Bozeman, MT (US)
Filed by Snowflake Inc., Bozeman, MT (US)
Filed on Oct. 28, 2022, as Appl. No. 18/50,608.
Application 18/050,608 is a continuation of application No. 17/342,713, filed on Jun. 9, 2021, granted, now 11,513,859.
Application 17/342,713 is a continuation of application No. 17/084,861, filed on Oct. 30, 2020, granted, now 11,055,142.
Application 17/084,861 is a continuation of application No. 16/874,388, filed on May 14, 2020, granted, now 10,860,381.
Prior Publication US 2023/0079405 A1, Mar. 16, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/46 (2006.01); G06F 9/50 (2006.01); G06F 9/54 (2006.01); H04L 67/1001 (2022.01)
CPC G06F 9/5027 (2013.01) [G06F 9/5077 (2013.01); G06F 9/5083 (2013.01); G06F 9/542 (2013.01); H04L 67/1001 (2022.05); G06F 2209/5011 (2013.01)] 27 Claims
OG exemplary drawing
 
1. A method comprising:
receiving, by a first server, query request information from a plurality of query coordinators;
generating a current local demand based on the received query request information;
transmitting the current local demand to a global background service over a network;
receiving a first allocation of a first number of computing resources from the global background service;
assigning the first number of computing resources to the plurality query coordinators;
receiving updated information relating to query requests from the plurality of query coordinators;
updating the current local demand for computing resources;
receiving a second allocation of a second number of computing resources from the global background service, the second number of computing resources being fewer than the first number of computing resources;
transmitting an instruction to a query coordinator of the plurality of coordinators to release one of its assigned computing resources based on the second allocation;
receiving notification from the query coordinator regarding the release of one of its assigned computing resource; and
communicating identification information of the released computing resource to the global background service.