US 12,130,817 B2
Generating execution tracking rows during query execution via a database system
Samuel Peter Bove, Chicago, IL (US); Ellis Mihalko Saupe, University City, MO (US); George Kondiles, Chicago, IL (US); Ryan Joseph Kluzinski, Vancouver (CA); Susmita Saha, Chicago, IL (US); and Sarah Kate Schieferstein, Chicago, IL (US)
Assigned to Ocient Holdings LLC, Chicago, IL (US)
Filed by Ocient Holdings LLC, Chicago, IL (US)
Filed on Oct. 25, 2023, as Appl. No. 18/494,230.
Claims priority of provisional application 63/381,218, filed on Oct. 27, 2022.
Prior Publication US 2024/0143595 A1, May 2, 2024
Int. Cl. G06F 16/00 (2019.01); G06F 16/2455 (2019.01); G06F 16/28 (2019.01)
CPC G06F 16/24553 (2019.01) [G06F 16/288 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
determining a query for execution;
determining a query operator execution flow for the query, wherein the query operator execution flow indicates a directed arrangement of a plurality of operators; and
generating query output based on executing the plurality of operators of the query operator execution flow in conjunction with executing the query, wherein executing each operator of the plurality of operators includes:
generating a set of output query rows based on processing a set of input query rows in accordance with query processing functionality of the each operator;
maintaining execution tracking data for the each operator that includes at least one counter tracking at least one event type corresponding to the query processing functionality of the each operator, wherein the at least one counter is incremented in response to detecting occurrence of the at least one event type; and
generating a set of execution tracking rows, wherein each execution tracking row of the set of execution tracking rows is generated based on sampling the execution tracking data in accordance with a predetermined time interval;
wherein the query output includes:
a final set of rows corresponding to a query resultant of the query; and
a final set of execution tracking rows generated by at least one final operator in the directed arrangement based on an aggregation of a plurality of sets of execution tracking rows generated by the plurality of operators.