×

Parallel execution of parsed query based on a concurrency level corresponding to an average number of available worker threads

  • US 9,329,899 B2
  • Filed: 06/24/2013
  • Issued: 05/03/2016
  • Est. Priority Date: 06/24/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • activating, by a computer system, a plurality of worker threads,receiving, by the computer system, a query;

    processing, by the computer system, the query in a first thread in the plurality of worker threads to generate a parsing task associated with the query;

    parsing, by the computer system, the query based on the parsing task to generate an execution plan comprising a plurality of ordered operations for answering the query;

    generating, by the computer system, a task graph comprising a plurality of task nodes corresponding to the plurality of ordered operations, based on the execution plan;

    identifying, by the computer system, a first task node in the plurality of task nodes corresponding to a first ordered operation in the plurality of ordered operations determined to be partitionable into sub operations that can be executed in parallel;

    generating, by the computer system, a concurrency level value that corresponds to an availability of worker threads in the plurality of worker threads, wherein generating the concurrency level value comprises calculating an average number of available worker threads in the plurality of worker threads over a period of time; and

    generating, by the computer system, a plurality of partitioned tasks that can be executed in parallel based on the first task node and the concurrency level value, wherein the concurrency level value is the upper limit for the number of partitioned tasks.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×