US 12,242,511 B2
Storage resource provisioning systems and methods
Benoit Dageville, Seattle, WA (US); Thierry Cruanes, San Mateo, CA (US); and Marcin Zukowski, San Mateo, CA (US)
Assigned to Snowflake Inc., Bozeman, MT (US)
Filed by SNOWFLAKE INC., Bozeman, MT (US)
Filed on Feb. 7, 2023, as Appl. No. 18/165,666.
Application 18/165,666 is a continuation of application No. 17/665,262, filed on Feb. 4, 2022, granted, now 11,599,556.
Application 17/665,262 is a continuation of application No. 17/497,176, filed on Oct. 8, 2021, granted, now 11,263,234, issued on Mar. 1, 2022.
Application 17/497,176 is a continuation of application No. 17/141,220, filed on Jan. 4, 2021, granted, now 11,157,516, issued on Oct. 26, 2021.
Application 17/141,220 is a continuation of application No. 16/905,599, filed on Jun. 18, 2020, granted, now 11,010,407, issued on May 18, 2021.
Application 16/905,599 is a continuation of application No. 16/378,371, filed on Apr. 8, 2019, granted, now 11,106,696, issued on Aug. 11, 2021.
Application 16/378,371 is a continuation of application No. 14/518,826, filed on Oct. 20, 2014, granted, now 10,325,032, issued on Jun. 18, 2019.
Claims priority of provisional application 61/941,986, filed on Feb. 19, 2014.
Prior Publication US 2023/0185824 A1, Jun. 15, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/27 (2019.01); A61F 5/56 (2006.01); G06F 9/48 (2006.01); G06F 9/50 (2006.01); G06F 16/14 (2019.01); G06F 16/182 (2019.01); G06F 16/21 (2019.01); G06F 16/22 (2019.01); G06F 16/23 (2019.01); G06F 16/2453 (2019.01); G06F 16/2455 (2019.01); G06F 16/2458 (2019.01); G06F 16/25 (2019.01); G06F 16/28 (2019.01); G06F 16/951 (2019.01); G06F 16/9535 (2019.01); G06F 16/9538 (2019.01); H04L 67/1095 (2022.01); H04L 67/1097 (2022.01); H04L 67/568 (2022.01)
CPC G06F 16/273 (2019.01) [A61F 5/566 (2013.01); G06F 9/4881 (2013.01); G06F 9/5016 (2013.01); G06F 9/5044 (2013.01); G06F 9/5083 (2013.01); G06F 9/5088 (2013.01); G06F 16/148 (2019.01); G06F 16/1827 (2019.01); G06F 16/211 (2019.01); G06F 16/221 (2019.01); G06F 16/2365 (2019.01); G06F 16/24532 (2019.01); G06F 16/24545 (2019.01); G06F 16/24552 (2019.01); G06F 16/2456 (2019.01); G06F 16/2471 (2019.01); G06F 16/254 (2019.01); G06F 16/27 (2019.01); G06F 16/283 (2019.01); G06F 16/951 (2019.01); G06F 16/9535 (2019.01); G06F 16/9538 (2019.01); H04L 67/1095 (2013.01); H04L 67/1097 (2013.01); H04L 67/568 (2022.05)] 14 Claims
OG exemplary drawing
 
1. A method comprising:
receiving a set of queries to process;
provisioning processing resources of an execution platform and provisioning storage resources of a storage platform, the execution platform to process the set of queries using the storage platform that is shared with the execution platform;
determining a utilization of the processing resources to process the set of queries;
changing, by a processor and prior to processing the set of queries, a number of the processing resources provisioned for the execution platform based on the utilization of the processing resources, and changing a number of the storage resources provisioned for the storage platform based on the set of queries to process, wherein the changing of the number of the storage resources increases the number of storage resources and is independent to the change of the processing resources in the execution platform;
processing the set of queries using the changed number of the storage resources provisioned for the storage platform;
responsive to completion of processing the set of queries using the changed number of storage resources, determining whether the changed number of storage resources is still required; and
releasing one or more of the storage resources in response to determining that the changed number of storage resources is no longer required.