Patent ID: 8538954

Claim:
A distributed aggregate user defined function processing system comprising: a non-transitory computer readable medium comprising machine readable instructions executable by a processor associated with one of a plurality of processing nodes, the instructions comprising a query compiler to identify a call to a distributed aggregate user defined function, including at least one defined output field, within a query of the distributed aggregate user defined function processing system, retrieve metadata associated with the distributed aggregate user defined function, defining metadata for the plurality of function partitions comprising at least input, output, and parameter fields, and an output dependency metadata, associating an output field of the distributed aggregate user defined function with an intermediate result field used to generate the output field, such that the distributed aggregate user defined function generates only a required set of intermediate result fields to produce a set of output fields for the output field defined in the call to of the distributed aggregate user defined function and validate and resolve respective inputs, parameter fields, and outputs of a plurality of function partitions associated with the distributed aggregate user defined function according to the retrieved metadata; and a distributed processing engine, comprising the plurality of processing nodes, to execute the plurality of function partitions and organize data flow from the plurality of function partitions to produce an output for the distributed aggregate user defined function.