Patentable/Patents/US-10942774
US-10942774

Dynamic reassignment of search processes into workload pools in a search and indexing system

PublishedMarch 9, 2021
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

Dynamic reassignment of search processes into workload pools includes receiving a search query to search at least one data store, assigning the search query to a first workload pool, and executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device. Dynamic reassignment further includes receiving, while executing the search query, an update command to move the search query to a second workload pool, moving, while executing the search query, the search query to the second workload pool; and continuing execution of the search query using a second hardware resource in the second workload pool. The second hardware resource corresponds to a second portion of the hardware device.

Patent Claims
27 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method comprising: receiving a search query to search at least one data store; assigning the search query to a first workload pool; associating, by a search head, the search query with an identifier of the first workload pool; sending, by the search head to a plurality of indexers, the search query with the identifier of the first workload pool; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; receiving, while executing the search query, an update command to move the search query to a second workload pool; moving, while executing the search query, the search query to the second workload pool, wherein moving, while executing the search query, the search query to the second workload pool is performed on the plurality of indexers while the plurality of indexers are searching the at least one data store according to the search query; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

2

2. The method of claim 1 , further comprising: associating, by the search head in response to the update command, the search query with an identifier of the second workload pool; and sending, by the search head to at least one indexer, a move command to move the search query to the second workload pool.

3

3. A method comprising: receiving, in a workload management interface, a selection to add a new workload pool; presenting, in the workload management interface and in response to the selection to add the new workload pool, a workload pool selection interface to select a plurality of hardware resources to add to the new workload pool; creating, in response to the selection to add the new workload pool and a selection of the plurality of hardware resources, the new workload pool; receiving a search query to search at least one data store; assigning the search query to a first workload pool; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; receiving, while executing the search query, an update command to move the search query to a second workload pool; moving, while executing the search query, the search query to the second workload pool; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

4

4. A method comprising: presenting, in a workload management interface, a workload pool selection interface to select a percentile allocation of a plurality of hardware devices to add to a new workload pool; assigning the percentile allocation as a plurality of hardware resources of the new workload pool; receiving a search query to search at least one data store; assigning the search query to a first workload pool; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; receiving, while executing the search query, an update command to move the search query to a second workload pool; moving, while executing the search query, the search query to the second workload pool; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

5

5. A method comprising: receiving, in a workload management interface, a selection to add criterion to a new workload pool; presenting, in the workload management interface and in response to the selection to add criterion, a workload rule interface; receiving a selection of at least one criterion from the workload rule interface; relating the at least one criterion to the new workload pool; receiving a search query to search at least one data store; assigning the search query to a first workload pool; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; receiving, while executing the search query, an update command to move the search query to a second workload pool; moving, while executing the search query, the search query to the second workload pool; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

6

6. A method comprising: presenting a jobs dashboard listing a plurality of search query jobs being processed; receiving a filter request to filter the plurality of search query jobs according to a workload pool assignment; grouping the plurality of search query jobs according to the workload pool assignment; receiving a search query to search at least one data store; assigning the search query to a first workload pool; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; receiving, while executing the search query, an update command to move the search query to a second workload pool; moving, while executing the search query, the search query to the second workload pool; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

7

7. A method comprising: receiving a search query to search at least one data store; assigning the search query to a first workload pool; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; presenting a jobs dashboard listing a plurality of search query jobs being processed; presenting an edit jobs setting interface for a search query job corresponding to the search query; receiving, while executing the search query, an update command to move the search query to a second workload pool, wherein the update command is received by selecting the second workload pool in the edit jobs settings interface; moving, while executing the search query, the search query to the second workload pool; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

8

8. The method of claim 7 , further comprising: relating each of a plurality of workload pools to a plurality of Cgroups; and scheduling, by an operating system, the plurality of search query jobs using the plurality of Cgroups.

9

9. A method comprising: hierarchically defining a plurality of workload pools; receiving a search query to search at least one data store; assigning the search query to a first workload pool of the plurality of workload pools; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; receiving, while executing the search query, an update command to move the search query to a second workload pool; moving, while executing the search query, the search query to the second workload pool; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

10

10. A system comprising: a search head device configured to: receive a search query to search at least one data store, assign the search query to a first workload pool, associate the search query with an identifier of the first workload pool, send, to a plurality of indexer devices, the search query with the identifier of the first workload pool, and receive, while the search query executes, an update command to move the search query to a second workload pool; and the plurality of indexer devices comprising an indexer device operatively connected to the search head device and configured to: execute the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device, wherein executing the search query comprises searching the at least one data store; move, while executing the search query, the search query to the second workload pool, and continue execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device, wherein the search head device and the indexer device comprise at least one computer processor, and wherein moving, while executing the search query, the search query to the second workload pool is performed on the plurality of indexer devices while the plurality of indexer devices are searching the at least one data store according to the search query.

11

11. The system of claim 10 , wherein the search head device is further configured to: associate, the search query with an identifier of the second workload pool; and send, to the indexer device, a move command to move the search query to the second workload pool.

12

12. The system of claim 10 , further comprising: a plurality of workload pools arrange hierarchically with respect to criterion associated with the plurality of workload pools.

13

13. A system comprising: a workload management interface configured to receive a selection to add a new workload pool; a workload pool selection interface configured to receive a selection of a plurality of hardware resources to add to the new workload pool; a search head device configured to: create, in response to the selection to add the new workload pool and the selection of the plurality of hardware resources, the new workload pool receive a search query to search at least one data store, assign the search query to a first workload pool, and receive, while the search query executes, an update command to move the search query to a second workload pool; and an indexer device operatively connected to the search head device and configured to: execute the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device, wherein executing the search query comprises searching the at least one data store, move, while executing the search query, the search query to the second workload pool, and continue execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device, wherein the search head device and the indexer device comprise at least one computer processor.

14

14. The system of claim 13 , wherein the workload pool selection interface is further to select a percentile allocation of a plurality of hardware devices to add to the new workload pool, wherein the search head device is further configured to assign the percentile allocation as the plurality of hardware resources of the new workload pool.

15

15. A system comprising: a workload management interface configured to receive a selection to add criterion to a new workload pool; a workload rule interface configured to receive a selection of at least one criterion from the workload rule interface; wherein the at least one criterion is related to the new workload pool; a search head device configured to: receive a search query to search at least one data store, assign the search query to a first workload pool, and receive, while the search query executes, an update command to move the search query to a second workload pool; and an indexer device operatively connected to the search head device and configured to: execute the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device, wherein executing the search query comprises searching the at least one data store, move, while executing the search query, the search query to the second workload pool, and continue execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device, wherein the search head device and the indexer device comprise at least one computer processor.

16

16. A system comprising: a jobs dashboard configured to list a plurality of search query jobs being processed, the jobs dashboard comprising a filter widget to filter the plurality of search query jobs according to a workload pool assignment, wherein the jobs dashboard is configured to group the plurality of search query jobs according to the workload pool assignment; a search head device configured to: receive a search query to search at least one data store, assign the search query to a first workload pool, and receive, while the search query executes, an update command to move the search query to a second workload pool; and an indexer device operatively connected to the search head device and configured to: execute the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device, wherein executing the search query comprises searching the at least one data store, move, while executing the search query, the search query to the second workload pool, and continue execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device, wherein the search head device and the indexer device comprise at least one computer processor.

17

17. The system of claim 16 , further comprising: an edit jobs setting interface for a search query job corresponding to the search query, wherein the update command is received by selecting the second workload pool in the edit jobs setting interface.

18

18. The system of claim 16 , further comprising: memory comprising a plurality of Cgroups arranged in a file system, each of the plurality of Cgroups related to a plurality of workload pools; and a kernel resource manager configured to schedule the plurality of search query jobs using the plurality of Cgroups.

19

19. A non-transitory computer readable medium comprising computer readable program code for causing a computer processor to perform operations, the operations comprising: receiving a search query to search at least one data store; assigning the search query to a first workload pool; associating, by a search head, the search query with an identifier of the first workload pool; sending, by the search head to a plurality of indexers, the search query with the identifier of the first workload pool; executing the search query using a first hardware resource in the first workload pool, the first hardware resource corresponding to a first portion of a hardware device; receiving, while executing the search query, an update command to move the search query to a second workload pool; moving, while executing the search query, the search query to the second workload pool wherein moving, while executing the search query, the search query to the second workload pool is performed on the plurality of indexers while the plurality of indexers are searching the at least one data store according to the search query; and continuing execution of the search query using a second hardware resource in the second workload pool, the second hardware resource corresponding to a second portion of the hardware device.

20

20. The non-transitory computer readable medium of claim 19 , further comprising: associating, by the search head in response to the update command, the search query with an identifier of the second workload pool; and sending, by the search head to at least one indexer, a move command to move the search query to the second workload pool.

21

21. The non-transitory computer readable medium of claim 19 , further comprising: receiving, in a workload management interface, a selection to add a new workload pool; presenting, in the workload management interface and in response to the selection to add the new workload pool, a workload pool selection interface to select a plurality of hardware resources to add to the new workload pool; and creating, in response to the selection to add the new workload pool and a selection of the plurality of hardware resources, the new workload pool.

22

22. The non-transitory computer readable medium of claim 19 , further comprising: presenting, in a workload management interface, a workload pool selection interface to select a percentile allocation of a plurality of hardware devices to add to a new workload pool; and assigning the percentile allocation as a plurality of hardware resources of the new workload pool.

23

23. The non-transitory computer readable medium of claim 19 , further comprising: receiving, in a workload management interface, a selection to add criterion to a new workload pool; presenting, in the workload management interface and in response to the selection to add criterion, a workload rule interface; receiving a selection of at least one criterion from the workload rule interface; and relating the at least one criterion to the new workload pool.

24

24. The non-transitory computer readable medium of claim 19 , further comprising: presenting a jobs dashboard listing a plurality of search query jobs being processed; receiving a filter request to filter the plurality of search query jobs according to workload pool assignment; and filter the plurality of search query jobs according to the workload pool assignment.

25

25. The non-transitory computer readable medium of claim 19 , further comprising: presenting a jobs dashboard listing a plurality of search query jobs being processed; and presenting an edit jobs setting interface for a search query job corresponding to the search query, wherein the update command is received by selecting the second workload pool in the edit jobs settings interface.

26

26. The non-transitory computer readable medium of claim 19 , further comprising: relating each of a plurality of workload pools to a plurality of Cgroups; and scheduling, by an operating system, a plurality of search query jobs using the plurality of Cgroups.

27

27. The non-transitory computer readable medium of claim 19 , further comprising: hierarchically defining a plurality of workload pools.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

September 28, 2018

Publication Date

March 9, 2021

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Dynamic reassignment of search processes into workload pools in a search and indexing system” (US-10942774). https://patentable.app/patents/US-10942774

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

Dynamic reassignment of search processes into workload pools in a search and indexing system — Anish Shrigondekar | Patentable