US2013238548A1PendingUtilityA1

Analytical data processing

35
Assignee: GEORGE MUTHIANPriority: Jan 25, 2011Filed: Jan 25, 2011Published: Sep 12, 2013
Est. expiryJan 25, 2031(~4.5 yrs left)· nominal 20-yr term from priority
Inventors:Muthian George
G06F 16/283G06F 16/2453G06F 17/30442
35
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Systems and apparatuses are provided for integrating user defined functions into an analytical data processing framework. A query compiler ( 22 ) identifies a call to a user defined function ( 28 ) and one of a GROUP BY expression and a defined online analytics processing (OLAP) window associated with the user defined function. A database engine ( 24 ) executes the user defined function ( 28 ) with a partition set defined by the one of the GROUP BY expression and the defined OLAP window, such that the user defined function operates on the partition set to produce a function output.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . An analytical data processing system ( 10 ) comprising:
 a processor ( 12 ); and   a non-transitory computer readable medium ( 14 ) storing machine readable instructions, the machine readable instructions comprising:
 a query compiler ( 22 ) to identify a call to a user defined function ( 28 ) and one of a GROUP BY expression and a defined online analytics processing (OLAF) window associated with the user defined function; and 
 a processing engine ( 24 ) to execute the user defined function ( 28 ) with a partition set defined by the one of the GROUP BY expression and the defined OLAP window, such that the user defined function operates on the partition set to produce a function output. 
   
     
     
         2 . The analytical data processing system of  claim 1 , the user defined function ( 28 ) having metadata ( 69 ) exposed to the query compiler and the processing engine ( 24 ), the metadata ( 69 ) indicating that the user defined function ( 28 ) is executable within the one of the GROUP BY expression and the defined OLAP window. 
     
     
         3 . The analytical data processing system of  claim 2 , the exposed metadata ( 69 ) comprising an application programming interface, the application programming interface comprising rules for validating and resolving arguments within the call to the user defined function ( 28 ). 
     
     
         4 . The analytical data processing system of  claim 1 , the call to the user defined function ( 28 ) being one of a plurality of calls to respective user defined functions identified by the query compiler ( 22 ) within a query, and the processing engine ( 24 ) executing the plurality of user defined functions as part of the query. 
     
     
         5 . The analytical data processing system of  claim 4 , the user defined function ( 28 ) consuming afield output by another of the plurality of user defined functions as an input. 
     
     
         6 . The analytical data processing system of  claim 4 , the partition set being a first partition set in a query, and the query compiler ( 22 ) further identifying a second partition set associated with another of the plurality of user defined functions, the first partition set differing from the second partition set. 
     
     
         7 . The analytical data processing system of  claim 4 , another of the plurality of user defined functions having metadata ( 69 ) exposed to the query compiler ( 22 ) indicating that the user defined function should be executed without reference to either of a GROUP BY expression and an OLAP window. 
     
     
         8 . The analytical data processing system of  claim 1 , the query compiler ( 22 ) identifying the one of the GROUP BY expression and the defined online analytics processing (OLAP) window from an OLAP window expression associated with the call to the user defined function. 
     
     
         9 . An analytical processing system comprising:
 a processor ( 12 ); and   a non-transitory computer readable medium ( 14 ) storing machine readable instructions, the machine readable instructions comprising:
 a query compiler ( 22 ) to identify respective calls to a plurality of user defined functions ( 68 ) within a structured query language (SQL) query, the query compiler ( 22 ) identifying a plurality of data partitions, each associated with one of the plurality of user defined functions and being identified from one of a GROUP BY expression and an OLAP window expression, such that one of the plurality of data partitions differs from another of the plurality of data partitions; and 
 a processing engine ( 24 ) to execute the plurality of user defined functions as part of the SQL query such that one of the plurality of user defined functions consumes, as an input, a field output by another of the plurality of user defined functions; 
   wherein each user defined function ( 68 ) has metadata ( 69 ) exposed to the query compiler ( 22 ) and the processing engine ( 24 ) indicating that the user defined function is executable within the one of the GROUP BY expression and the OLAP expression.   
     
     
         10 . A non-transitory computer readable medium storing machine executable instructions, the machine executable instructions comprising:
 a query compiler ( 62 ) to identify a call to a plurality of user defined functions ( 68 ) and one of a GROUP BY expression and a defined online analytics processing (OLAP) window associated with the user defined function within an SQL query; and   a database engine ( 64 ) to execute the plurality of user defined functions ( 68 ) with a data partition defined by the one of the GROUP BY expression and the defined OLAP window, such that a user defined function of the plurality of user defined function operates on the data partition to produce a function output.   
     
     
         11 . The non-transitory computer readable medium of  claim 10 , one of the plurality of user defined functions ( 68 ) consuming, as an input, a field output by another of the plurality of user defined functions. 
     
     
         12 . The non-transitory computer readable medium of  claim 10 , the query compiler ( 62 ) identifying the one of a GROUP BY expression and a defined online analytics processing (OLAP) window from an OLAP window expression associated with the call to one of the plurality of user defined functions. 
     
     
         13 . The non-transitory computer readable medium of  claim 10 , each of the plurality of user defined functions ( 68 ) having metadata ( 69 ) exposed to the query compiler ( 62 ) and the database engine ( 64 ), the metadata ( 69 ) for each function indicating that the user defined functions are executable within the one of the GROUP BY expression and the defined OLAP window. 
     
     
         14 . The non-transitory computer readable medium of  claim 13 , the metadata ( 69 ) comprising a generalized application programming interface function pointer for validating and resolving arguments within the call to the one of the plurality of user defined functions. 
     
     
         15 . The non-transitory computer readable medium of  claim 10 , the defined data partition being a first data partition associated with one of the plurality of user defined functions ( 68 ) in the SQL query, and the query compiler ( 62 ) further identifying a second data partition defined by another OLAP window associated with another of the plurality of user defined functions, the first data partition differing from the second data partition.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.