US 11,874,691 B1
Managing efficient query execution including mapping of buckets to search nodes
Alexandros Batsakis, San Francisco, CA (US); Ashish Mathew, San Mateo, CA (US); Christopher Pride, Oakland, CA (US); Bharath Kishore Reddy Aleti, San Ramon, CA (US); Sourav Pal, Foster City, CA (US); Arindam Bhattacharjee, Fremont, CA (US); and James Monschke, San Francisco, CA (US)
Assigned to Splunk Inc., San Francisco, CA (US)
Filed by Splunk Inc., San Francisco, CA (US)
Filed on Jun. 5, 2018, as Appl. No. 16/000,664.
Application 16/000,664 is a continuation of application No. 15/967,595, filed on Apr. 30, 2018, abandoned.
Application 15/967,595 is a continuation in part of application No. 15/665,248, filed on Jul. 31, 2017, granted, now 11,163,758.
Application 15/665,248 is a continuation in part of application No. 15/665,159, filed on Jul. 31, 2017, granted, now 11,281,706.
Application 15/665,159 is a continuation in part of application No. 15/665,197, filed on Jul. 31, 2017, granted, now 11,461,334.
Application 15/665,197 is a continuation in part of application No. 15/665,339, filed on Jul. 31, 2017.
Application 15/665,339 is a continuation in part of application No. 15/665,148, filed on Jul. 31, 2017, granted, now 10,726,009.
Application 15/665,148 is a continuation in part of application No. 15/665,187, filed on Jul. 31, 2017, granted, now 11,232,100.
Application 15/665,187 is a continuation in part of application No. 15/665,302, filed on Jul. 31, 2017, granted, now 10,795,884.
Application 15/665,302 is a continuation in part of application No. 15/665,279, filed on Jul. 31, 2017, granted, now 11,416,528.
Application 15/665,302 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Application 15/665,159 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Application 15/665,339 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Application 15/665,279 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Application 15/665,197 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Application 15/665,248 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Application 15/665,187 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Application 15/665,148 is a continuation in part of application No. 15/276,717, filed on Sep. 26, 2016, granted, now 10,353,965.
Int. Cl. G06F 16/2453 (2019.01); G06F 16/22 (2019.01)
CPC G06F 16/24542 (2019.01) [G06F 16/2272 (2019.01)] 26 Claims
OG exemplary drawing
 
1. A method, comprising:
receiving, by a data intake and query system, a query identifying a set of data to be processed and a manner of processing the set of data;
identifying a plurality of buckets containing data that satisfies at least a portion of the query, wherein the plurality of buckets are stored in a remote shared storage system that is remote from a plurality of search nodes, wherein the remote shared storage system is communicatively coupled with the plurality of search nodes;
identifying, by the data intake and query system, at least two search nodes of the plurality of search nodes to obtain the plurality of buckets from the remote shared storage system and process the plurality of buckets based on query commands of the query;
responsive to receiving the query and identifying the at least two search nodes, dynamically mapping the plurality of buckets to the at least two search nodes, wherein each search node of the at least two search nodes is dynamically mapped to a respective set of buckets of the plurality of buckets, wherein a particular bucket of the plurality of buckets is mapped to a particular search node of the at least two search nodes based on a determination that the particular search node was previously assigned to search the particular bucket as part of a previous query; and
executing the query, wherein during execution of the query, each search node of the at least two search nodes retrieves the respective set of buckets from the remote shared storage system and processes the respective set of buckets based on at least one query command of the query.