×

Custom operators for a parallel query engine

  • US 8,521,721 B2
  • Filed: 09/14/2010
  • Issued: 08/27/2013
  • Est. Priority Date: 09/14/2010
  • Status: Active Grant
First Claim
Patent Images

1. At a computer system including a processor and a memory, in a computer networking environment including a plurality of computing systems, a computer-implemented method for implementing one or more custom operators in a query for a parallel query engine, the method comprising:

  • an act of receiving a portion of partitioned input data at a parallel query engine, wherein the parallel query engine is configured to process the partitioned input data using a sequence of operators, including one or more built-in operators that are part of the parallel query engine;

    an act of incorporating at least one user-defined custom operator into the sequence of operators for processing the partitioned input data, the at least one user-defined custom operator being provided to the parallel query engine by a user and being configured for processing along with the one or more built-in operators by being configured to;

    poll a predecessor operator of the at least one user-defined custom operator in the sequence of operators to determine the predecessor operator'"'"'s output information, the output information including (i) a number of partitions of the input data that are requestable by the at least one user-defined custom operator and (ii) one or more ordering guarantees that apply to output of the at least one user-defined custom operator;

    repartition the input data by adding or reducing the number of partitions of the input data during processing of the input data; and

    determine whether changes have occurred that affect the one or more ordering guarantees and, when changes have occurred that affect the one or more ordering guarantees, modify at least a portion of the one or more ordering guarantees that apply to the output of the at least one user-defined custom operator;

    an act of accessing the sequence of operators to determine how the partitioned input data is to be processed, wherein the at least one user-defined custom operator is accessed in the same manner as the built-in operators as part of the sequence of operators; and

    an act of processing the sequence of operators, including processing both the built-in operators and the at least one user-defined custom operator, according to the determination indicating how the data is to be processed.

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