IP Library › Granted Patent US 12,748,757
Granted Patent B2
US 12,748,757 · App. 18/830,346 · Granted Sep 29, 2026

Runtime pruning for top K queries

Inventors: Jonathan Christian Nitisastro (San Mateo, CA); Zhaohui Zhang (Redwood City, CA)
Assignee: Snowflake Inc.
G06F16/24549
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,748,757
App. No.
18/830,346
Granted
Sep 29, 2026
Kind
B2
Abstract

A top K query directed at a table is received. Run-time pruning is performed during execution of the top K query on the table. The run-time pruning comprises determining, by a top K node, a current boundary based on a set of values identified by a table scan node in scanning the table and applying, by the table scan node, the current boundary to prune data during the scanning of the table. The applying of the current boundary comprises reducing scanning ranges of the table scan node based on the top K column being a key column of the table and filtering values scanned by the table scan node based on the top K column being a non-key column of the table. The result set is returned responsive to the top K query based on the run-time pruning performed during execution of the top K query on the table.

Claims (117)

1 . A method comprising:

receiving a top K query directed at a table, the top K query comprising a first clause to sort a result set in an order based on a column of the table and a second clause that specifies a limit on a number of results provided in the result set;

initiating execution of the top K query on the table, the initiating of the execution of the top K query comprising:

generating a query plan for processing the top K query, the query plan comprising a top K node and a table scan node;

determining run-time pruning is applicable to the top K query based on whether the table scan node is a child node or dependent child node of the top K node; and

based on determining run-time pruning is applicable to the top K query, adding a reference to the top K node in the table scan node, the reference enabling the table scan node to request a current boundary from the top K node at run-time;

determining, by the top K node, the current boundary based on a set of values identified by the table scan node in scanning the table;

performing the run-time pruning during execution of the top K query on the table using the current boundary, the performing of the run-time pruning comprising:

performing read-version pruning on a scanset of the table scan node using the current boundary during the scanning of the scanset, the scanset comprising multiple versions of the table, the performing of the read-version pruning comprising pruning data from one or more older versions of the table from the scanset;

generating a filter using the current boundary; and

using the filter to:

remove one or more scanning ranges from the scanset of the table scan node based on the column being a key column of the table; or

filter values scanned by the table scan node based on the column being a non-key column of the table; and

returning the result set based on the run-time pruning performed during execution of the top K query on the table.

2 . The method of claim 1 , wherein:

the column is the key column of the table; and

the performing of the run-time pruning comprises generating, by the table scan node, a filter based on the current boundary; and

the removing of the one or more scanning ranges comprising applying, by the table scan node, the filter to the scanset during the scanning of the table to remove the one or more scanning ranges from the scanset.

3 . The method of claim 1 , wherein:

the set of values is a first set of values identified by the table scan node in scanning the table;

the column is a non-key column of the table; and

the performing of the run-time pruning comprises generating, by the table scan node, a filter based on the current boundary; and

the filtering of values comprises applying the filter to a second set of values identified in scanning the table, the applying of the filter to the second set of values comprising discarding at least one value from the second set of values;

the method comprises providing, by the table scan node, the filtered second set of values to the top K node.

4 . The method of claim 1 , wherein the run-time pruning comprises skipping a scan of a range of values in the scanset based on metadata describing the table.

5 . The method of claim 1 , wherein:

the set of values is a first set of values identified by the table scan node in scanning the table;

the performing of the run-time pruning comprises:

determining, by the top K node, an updated boundary based on a second set of values identified by the table scan node in scanning the table; and

applying, by the table scan node, the updated boundary to further prune data during the scanning of the table.

6 . The method of claim 5 , wherein the table scan node filters the second set of values based on the current boundary prior to sending the second set of values to the top K node.

7 . The method of claim 1 , wherein:

the scanset comprises scanning ranges from multiple versions of the table;

performing the read-version pruning comprises:

comparing the current boundary against metadata for each scanning range in the scanset;

determining, based on the comparing, that all data in a particular older version of the table is outside a range of potentially relevant results; and

pruning scanning ranges from the particular older version of the table from the scanset based on the determining that all the data in the particular older version of the table is outside the range of potentially relevant results.

8 . The method of claim 7 , wherein the performing of the read-version pruning comprises pruning corresponding scanning ranges from versions of the table that are older than the particular older version of the table.

9 . The method of claim 1 , comprising sorting the scanning ranges of the scanset prior to performing the run-time pruning.

10 . The method of claim 9 , wherein sorting the scanning ranges comprises sorting the scanning ranges based on the key column of the table and the first clause of the query.

11 . The method of claim 1 , wherein the determining of the current boundary comprises:

maintaining a heap of top-K values in the top K node, the heap of top-K values storing values scanned from the table by the table scan node; and

determining the current boundary based on an extrema value in the heap of top-K values.

12 . The method of claim 1 , wherein the initiating of the execution of the top K query comprises: constructing column metadata for the column.

13 . The method of claim 1 , wherein:

the first clause comprises an ORDER BY clause in structured query language (SQL); and

the second clause comprises a LIMIT clause in SQL.

14 . A system comprising:

at least one hardware processor; and

at least one memory storing instructions that cause the at least one hardware processor to perform operations comprising:

receiving a top K query directed at a table, the top K query comprising a first clause to sort a result set in an order based on a column of the table and a second clause that specifies a limit on a number of results provided in response to the query;

initiating execution of the top K query on the table, the initiating of the execution of the top K query comprising:

generating a query plan for processing the top K query, the query plan comprising a top K node and a table scan node;

determining run-time pruning is applicable to the top K query based on whether the table scan node is a child node or dependent child node of the top K node; and

based on determining run-time pruning is applicable to the top K query, adding a reference to the top K node in the table scan node, the reference enabling the table scan node to request a current boundary from the top K node at run-time;

determining, by the top K node, the current boundary based on a set of values identified by the table scan node in scanning the table;

performing the run-time pruning during execution of the top K query on the table using the current boundary, the run-time pruning comprising:

performing read-version pruning on a scanset of the table scan node using the current boundary during the scanning of the scanset, the scanset comprising multiple versions of the table, the performing of the read-version pruning comprising pruning data from one or more older versions of the table from the scanset;

generating a filter using the current boundary; and

using the filter to:

remove one or more scanning ranges from the scanset of the table scan node based on the column being a key column of the table; or

filter values scanned by the table scan node based on the column being a non-key column of the table; and

returning the result set based on the run-time pruning performed during execution of the top K query on the table.

15 . The system of claim 14 , wherein:

the column is the key column of the table; and

the performing of the run-time pruning comprises generating, by the table scan node, a filter based on the current boundary; and

the removing of the one or more scanning ranges comprising applying, by the table scan node, the filter to the scanset during the scanning of the table to remove the one or more scanning ranges from the scanset.

16 . The system of claim 14 , wherein:

the set of values is a first set of values identified by the table scan node in scanning the table;

the column is a non-key column of the table; and

the performing of the run-time pruning comprises generating, by the table scan node, a filter based on the current boundary; and

the filtering of values comprises applying the filter to a second set of values identified in scanning the table, the applying of the filter to the second set of values comprising discarding at least one value from the second set of values;

the operations comprise providing, by the table scan node, the filtered second set of values to the top K node.

17 . The system of claim 14 , wherein the run-time pruning comprises skipping a scan of a range of values in the scanset based on metadata describing the table.

18 . The system of claim 14 , wherein:

the set of values is a first set of values identified by the table scan node in scanning the table;

the performing of the run-time pruning comprises:

determining, by the top K node, an updated boundary based on a second set of values identified by the table scan node in scanning the table; and

applying, by the table scan node, the updated boundary to further prune data during the scanning of the table.

19 . The system of claim 18 , wherein the table scan node filters the second set of values based on the current boundary prior to sending the second set of values to the top K node.

20 . The system of claim 14 , wherein:

the scanset comprises scanning ranges from multiple versions of the table;

performing the read-version pruning comprises:

comparing the current boundary against metadata for each scanning range in the scanset;

determining, based on the comparing, that all data in a particular older version of the table is outside a range of potentially relevant results; and

pruning scanning ranges from the particular older version of the table from the scanset based on the determining that all the data in the particular older version of the table is outside the range of potentially relevant results.

21 . The system of claim 20 , wherein the performing of the read-version pruning comprises pruning corresponding scanning ranges from versions of the table that are older than the particular older version of the table.

22 . The system of claim 14 , wherein the operations comprise sorting the scanning ranges of the scanset prior to performing the run-time pruning.

23 . The system of claim 22 , wherein sorting the scanning ranges comprises sorting the scanning ranges based on a key column of the table and the first clause of the query.

24 . A computer-storage medium comprising instructions that, when executed by one or more processors of a machine, configure the machine to perform operations comprising:

receiving a top K query directed at a table, the top K query comprising a first clause to sort a result set in an order based on a column of the table and a second clause that specifies a limit on a number of results provided in response to the query;

initiating execution of the top K query on the table, the initiating of the execution of the top K query comprising:

generating a query plan for processing the top K query, the query plan comprising a top K node and a table scan node;

determining run-time pruning is applicable to the top K query based on whether the table scan node is a child node or dependent child node of the top K node; and

based on determining run-time pruning is applicable to the top K query, adding a reference to the top K node in the table scan node, the reference enabling the table scan node to request a current boundary from the top K node at run-time;

determining, by the top K node, the current boundary based on a set of values identified by the table scan node in scanning the table;

performing the run-time pruning during execution of the top K query on the table using the current boundary, the run-time pruning comprising:

performing read-version pruning on a scanset of the table scan node using the current boundary during the scanning of the scanset, the scanset comprising multiple versions of the table, the performing of the read-version pruning comprising pruning data from one or more older versions of the table from the scanset; and

generating a filter using the current boundary and using the filter to:

remove one or more scanning ranges from a scanset of the table scan node based on the column being a key column of the table; or

filter values scanned by the table scan node based on the column being a non-key column of the table; and

returning the result set based on the run-time pruning performed during execution of the top K query on the table.

25 . The computer-storage medium of claim 24 , wherein:

the set of values is a first set of values identified by the table scan node in scanning the table;

the column is a non-key column of the table; and

the filtering of values comprises applying the filter to a second set of values identified in scanning the table, the applying of the filter to the second set of values comprising discarding at least one value from the second set of values;

the operations comprise providing, by the table scan node, the filtered second set of values to the top K node.

26 . The computer-storage medium of claim 24 , wherein the performing the run-time pruning comprises skipping a scan of a range of values in the scanset based on metadata describing the table.

27 . The computer-storage medium of claim 24 , wherein:

the scanset comprises scanning ranges from multiple versions of the table;

performing the read-version pruning comprises:

comparing the current boundary against metadata for each scanning range in the scanset;

determining, based on the comparing, that all data in a particular older version of the table is outside a range of potentially relevant results; and

pruning scanning ranges from the particular older version of the table from the scanset based on the determining that all the data in the particular older version of the table is outside the range of potentially relevant results.

28 . The computer-storage medium of claim 27 , wherein the performing of the read-version pruning comprises pruning corresponding scanning ranges from versions of the table that are older than the particular older version of the table.

29 . The computer-storage medium of claim 24 , wherein the operations comprise sorting the scanning ranges of the scanset prior to performing the run-time pruning.

30 . The computer-storage medium of claim 29 , wherein sorting the scanning ranges comprises sorting the scanning ranges based on the key column of the table and the first clause of the query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2025
From: NITISASTRO, JONATHAN CHRISTIAN; ZHANG, ZHAOHUI
To: SNOWFLAKE INC.
Reel/Frame 069941/0381 →
Continuity (1)
Related Publication 20260072915A1 · Mar 12, 2026
References Cited (229)
US 4956774A · Shibamiya et al. · 1990 [cited by applicant]
US 6154572A · Chaddha · 2000 [cited by applicant]
US 6374232B1 · Dageville et al. · 2002 [cited by applicant]
US 6571233B2 · Beavin et al. · 2003 [cited by applicant]
US 6957225B1 · Zait et al. · 2005 [cited by applicant]
US 7171427B2 · Witkowski et al. · 2007 [cited by applicant]
US 7454418B1 · Wang et al. · 2008 [cited by applicant]
US 7493337B2 · Chaudhuri et al. · 2009 [cited by applicant]
US 7814104B2 · Raghavan et al. · 2010 [cited by applicant]
US 7962521B2 · Brown et al. · 2011 [cited by applicant]
US 7970756B2 · Beavin et al. · 2011 [cited by applicant]
US 8209178B1 · Talbot et al. · 2012 [cited by applicant]
US 8458156B1 · Sharifi et al. · 2013 [cited by applicant]
US 8666976B2 · Merz · 2014 [cited by applicant]
US 8825678B2 · Potapov et al. · 2014 [cited by applicant]
US 8887286B2 · Dupont et al. · 2014 [cited by applicant]
US 9223850B2 · Chen · 2015 [cited by applicant]
US 9298726B1 · Mondal et al. · 2016 [cited by applicant]
US 9471711B2 · Abadi et al. · 2016 [cited by applicant]
US 9507825B2 · Baer et al. · 2016 [cited by applicant]
US 9514187B2 · Ziauddin · 2016 [cited by applicant]
US 9569490B1 · Kalarikal Janardhana · 2017 [cited by examiner]
US 9684671B1 · Dorin et al. · 2017 [cited by applicant]
US 10025823B2 · Das et al. · 2018 [cited by applicant]
US 10311062B2 · McPherson et al. · 2019 [cited by applicant]
US 10353867B1 · Wong et al. · 2019 [cited by applicant]
US 10388272B1 · Thomson et al. · 2019 [cited by applicant]
US 10528599B1 · Pandis et al. · 2020 [cited by applicant]
US 10573312B1 · Thomson et al. · 2020 [cited by applicant]
US 10628418B2 · Weyerhaeuser et al. · 2020 [cited by applicant]
US 10635671B2 · Sheng et al. · 2020 [cited by applicant]
US 10649991B2 · Finlay et al. · 2020 [cited by applicant]
US 10685052B2 · Winther · 2020 [cited by applicant]
US 10705809B2 · Makkar · 2020 [cited by applicant]
US 10713243B2 · Mathur · 2020 [cited by applicant]
US 10769150B1 · Cruanes et al. · 2020 [cited by applicant]
US 10812495B2 · Traore et al. · 2020 [cited by applicant]
US 10838963B2 · Brodt et al. · 2020 [cited by applicant]
US 10860832B2 · Wang · 2020 [cited by applicant]
US 10901948B2 · Ackerman et al. · 2021 [cited by applicant]
US 10942925B1 · Cruanes et al. · 2021 [cited by applicant]
US 10997179B1 · Cruanes et al. · 2021 [cited by applicant]
US 11016975B1 · Cruanes et al. · 2021 [cited by applicant]
US 11037258B2 · Brenner et al. · 2021 [cited by applicant]
US 11042650B2 · Fu et al. · 2021 [cited by applicant]
US 11074261B1 · Pandis et al. · 2021 [cited by applicant]
US 11086875B2 · Cruanes et al. · 2021 [cited by applicant]
US 11113286B2 · Cruanes et al. · 2021 [cited by applicant]
US 11163745B2 · Coleman et al. · 2021 [cited by applicant]
US 11176133B2 · Horn et al. · 2021 [cited by applicant]
US 11194793B1 · Srivastava et al. · 2021 [cited by applicant]
US 11308089B2 · Cruanes et al. · 2022 [cited by applicant]
US 11308090B2 · Allahverdiyev et al. · 2022 [cited by applicant]
US 11321325B2 · Cruanes et al. · 2022 [cited by applicant]
US 11372860B2 · Heimel et al. · 2022 [cited by applicant]
US 11880369B1 · Heimel · 2024 [cited by examiner]
US 11995080B1 · Tsirogiannis · 2024 [cited by examiner]
US 20040243816A1 · Hacigumus et al. · 2004 [cited by applicant]
US 20050120004A1 · Stata et al. · 2005 [cited by applicant]
US 20050198076A1 · Stata et al. · 2005 [cited by applicant]
US 20060020579A1 · Freedman et al. · 2006 [cited by applicant]
US 20070250476A1 · Krasnik · 2007 [cited by applicant]
US 20080294696A1 · Frandzel · 2008 [cited by applicant]
US 20090070303A1 · Beavin et al. · 2009 [cited by applicant]
US 20090100055A1 · Wang · 2009 [cited by applicant]
US 20100125594A1 · Li et al. · 2010 [cited by applicant]
US 20100281017A1 · Hu et al. · 2010 [cited by applicant]
US 20100318519A1 · Hadjieleftheriou et al. · 2010 [cited by applicant]
US 20110213775A1 · Franke et al. · 2011 [cited by applicant]
US 20120109888A1 · Zhang et al. · 2012 [cited by applicant]
US 20120271838A1 · Whang · 2012 [cited by examiner]
US 20130166553A1 · Yoon et al. · 2013 [cited by applicant]
US 20130166557A1 · Fricke et al. · 2013 [cited by applicant]
US 20130346720A1 · Colgrove et al. · 2013 [cited by applicant]
US 20140095502A1 · Ziauddin et al. · 2014 [cited by applicant]
US 20140114942A1 · Belakovskiy et al. · 2014 [cited by applicant]
US 20140154352A1 · Altonen et al. · 2014 [cited by applicant]
US 20140201126A1 · Zadeh et al. · 2014 [cited by applicant]
US 20140223565A1 · Cohen · 2014 [cited by applicant]
US 20140365424A1 · Herbst et al. · 2014 [cited by applicant]
US 20150134670A1 · Liu et al. · 2015 [cited by applicant]
US 20150242506A1 · Dickie et al. · 2015 [cited by applicant]
US 20150254338A1 · Cheluvaraja et al. · 2015 [cited by applicant]
US 20150269934A1 · Biadsy et al. · 2015 [cited by applicant]
US 20150286681A1 · Baer et al. · 2015 [cited by applicant]
US 20150286682A1 · Ziauddin · 2015 [cited by applicant]
US 20160026667A1 · Mukherjee et al. · 2016 [cited by applicant]
US 20160162364A1 · Mutha et al. · 2016 [cited by applicant]
US 20160188623A1 · Finlay et al. · 2016 [cited by applicant]
US 20160196306A1 · Beavin et al. · 2016 [cited by applicant]
US 20160292201A1 · Asaad et al. · 2016 [cited by applicant]
US 20160350347A1 · Das et al. · 2016 [cited by applicant]
US 20160350375A1 · Das et al. · 2016 [cited by applicant]
US 20160350392A1 · Rice et al. · 2016 [cited by applicant]
US 20170031975A1 · Mishra et al. · 2017 [cited by applicant]
US 20170031976A1 · Chavan et al. · 2017 [cited by applicant]
US 20170060944A1 · Khayyat et al. · 2017 [cited by applicant]
US 20170109295A1 · Lasperas et al. · 2017 [cited by applicant]
US 20170116136A1 · Macnicol et al. · 2017 [cited by applicant]
US 20170116271A1 · Ziauddin et al. · 2017 [cited by applicant]
US 20170139989A1 · Weyerhaeuser et al. · 2017 [cited by applicant]
US 20170220652A1 · Kazi et al. · 2017 [cited by applicant]
US 20170300862A1 · Bhadouria et al. · 2017 [cited by applicant]
US 20180052904A1 · Fusco et al. · 2018 [cited by applicant]
US 20180068008A1 · Cruanes et al. · 2018 [cited by applicant]
US 20180101540A1 · Stoop et al. · 2018 [cited by applicant]
US 20180113889A1 · Brodt · 2018 [cited by applicant]
US 20180275982A1 · Hunt et al. · 2018 [cited by applicant]
US 20180285418A1 · Petropoulos et al. · 2018 [cited by applicant]
US 20180307857A1 · Beecham et al. · 2018 [cited by applicant]
US 20180336263A1 · Bensberg et al. · 2018 [cited by applicant]
US 20180357262A1 · He et al. · 2018 [cited by applicant]
US 20190087457A1 · Bellamkonda · 2019 [cited by examiner]
US 20190102441A1 · Malak et al. · 2019 [cited by applicant]
US 20190130250A1 · Park et al. · 2019 [cited by applicant]
US 20190205376A1 · Merhav et al. · 2019 [cited by applicant]
US 20190220464A1 · Butani · 2019 [cited by applicant]
US 20190294615A1 · Plattner et al. · 2019 [cited by applicant]
US 20190303270A1 · Hoermann · 2019 [cited by applicant]
US 20190332722A1 · Ogren et al. · 2019 [cited by applicant]
US 20190370241A1 · Miraldo et al. · 2019 [cited by applicant]
US 20200026788A1 · Bellamkonda et al. · 2020 [cited by applicant]
US 20200117546A1 · Wong et al. · 2020 [cited by applicant]
US 20200125674A1 · Arunski et al. · 2020 [cited by applicant]
US 20200175961A1 · Thomson et al. · 2020 [cited by applicant]
US 20200184278A1 · Zadeh et al. · 2020 [cited by applicant]
US 20200285761A1 · Buck et al. · 2020 [cited by applicant]
US 20200373946A1 · Lee et al. · 2020 [cited by applicant]
US 20210073219A1 · Barbas et al. · 2021 [cited by applicant]
US 20210200772A1 · Cruanes et al. · 2021 [cited by applicant]
US 20210216555A1 · Cruanes et al. · 2021 [cited by applicant]
US 20210271644A1 · Chinthekindi et al. · 2021 [cited by applicant]
US 20210319025A1 · Cruanes et al. · 2021 [cited by applicant]
US 20210357411A1 · Cruanes et al. · 2021 [cited by applicant]
US 20210365461A1 · Allahverdiyev et al. · 2021 [cited by applicant]
US 20210397619A1 · Heimel et al. · 2021 [cited by applicant]
US 20220012246A1 · Oukid et al. · 2022 [cited by applicant]
US 20220012247A1 · Oukid et al. · 2022 [cited by applicant]
US 20220207041A1 · Allahverdiyev et al. · 2022 [cited by applicant]
US 20220215026A1 · Su et al. · 2022 [cited by applicant]
US 20220215027A1 · Cruanes et al. · 2022 [cited by applicant]
US 20220277013A1 · Cruanes et al. · 2022 [cited by applicant]
US 20220284025A1 · Adams et al. · 2022 [cited by applicant]
US 20220292098A1 · Heimel et al. · 2022 [cited by applicant]
US 20220309063A1 · Du et al. · 2022 [cited by applicant]
US 20230034257A1 · Bei et al. · 2023 [cited by applicant]
US 20230064151A1 · Allahverdiyev · 2023 [cited by examiner]
US 20230229676A1 · Fang · 2023 [cited by examiner]
US 20240168953A1 · Heimel et al. · 2024 [cited by applicant]
CN 113051351 · 2021 [cited by applicant]
DE 202020005734 · 2022 [cited by applicant]
EP 2434417 · 2012 [cited by applicant]
WO 2021133433 · 2021 [cited by applicant]
WO 2022016170 · 2022 [cited by applicant]
US 11,397,751 B2, 07/2022, Chu et al. (withdrawn) [cited by applicant]
Wikipedia, SQL Syntax, https://en.wikipedia.org/w/index.php?title=SQL_syntax&oldid=1215851478, Mar. 27, 2024, 12 pp. (Year: 2024). [cited by examiner]
“International Application Serial No. PCT US2020 044199, International Search Report mailed Aug. 26, 2020”, 2 pgs. [cited by applicant]
“International Application Serial No. PCT US2020 044199, Written Opinion mailed Aug. 26, 2020”, 6 pgs. [cited by applicant]
“European Application Serial No. 20216097.4, Extended European Search Report mailed May 20, 2021”, 7 pgs. [cited by applicant]
“International Application Serial No. PCT US2021 070808, International Search Report mailed Jul. 26, 2021”, 2 pgs. [cited by applicant]
“International Application Serial No. PCT US2021 070808, Written Opinion mailed Jul. 26, 2021”, 3 pgs. [cited by applicant]
“Indian Application Serial No. 202044053756, First Examination Report mailed Dec. 21, 2021”, with English translation, 6 pages. [cited by applicant]
“European Application Serial No. 20216097.4, Response filed Dec. 22, 2021 to Extended European Search Report mailed May 20, 2021”, 32 pgs. [cited by applicant]
“Indian Application Serial No. 202044053756, Response filed Jun. 21, 2022 to First Examination Report mailed Dec. 21, 2021”, with English translation, 31 pages. [cited by applicant]
“International Application Serial No. PCT US2020 044199, International Preliminary Report on Patentability mailed Jul. 7, 2022”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/804,630, Non Final Office Action mailed Jul. 14, 2022”, 14 pgs. [cited by applicant]
“Korean Application Serial No. 10-2021-7031021, Notice of Preliminary Rejection mailed Jul. 20, 2022”, with English translation, 13 pages. [cited by applicant]
“U.S. Appl. No. 17/657,019, Response filed Aug. 17, 2022 to Non Final Office Action mailed May 24, 2022”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 17/804,630, Response filed Sep. 29, 2022 to Non Final Office Action mailed Jul. 14, 2022”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 18/057,563, Non Final Office Action mailed Jul. 10, 2023”, 20 pgs. [cited by applicant]
“U.S. Appl. No. 18/057,563, Response filed Oct. 10, 2023 to Non Final Office Action mailed Jul. 10, 2023”, 13 pgs. [cited by applicant]
“U.S. Appl. No. 18/057,563, Notice of Allowance mailed Nov. 15, 2023”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 18/534,382, Non Final Office Action mailed Jun. 4, 2025”, 43 pgs. [cited by applicant]
“U.S. Appl. No. 18/534,382, Response filed Sep. 3, 2025 to Non Final Office Action mailed Jun. 4, 2025”, 16 pgs. [cited by applicant]
“U.S. Appl. No. 18/534,382, Final Office Action mailed Sep. 15, 2025”, 43 pgs. [cited by applicant]
Han, “Efficient top-k dominating computation on massive data”, IEEE Transactions on Knowledge and Data Engineering 29.6, Jun. 2017, 13 pages. [cited by applicant]
Pang, Hweehwa, “Efficient processing of exact top-k queries over disk-resident sorted lists”, The VLDB Journal 19, Dec. 2009, 20 pages. [cited by applicant]
“U.S. Appl. No. 16/727,315, Non Final Office Action mailed Mar. 2, 2020”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 16/727,315, Response Filed May 27, 2020 to Non Final Office Action mailed Mar. 2, 2020”, 14 pgs. [cited by applicant]
“U.S. Appl. No. 16/727,315, Examiner Interview Summary mailed Jun. 2, 2020”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 16/727,315, Notice of Allowance mailed Jun. 8, 2020”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 16/932,462, Non Final Office Action mailed Aug. 21, 2020”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 16/932,462, Response filed Nov. 23, 2020 to Non Final Office Action mailed Aug. 21, 2020”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 16/932,462, Examiner Interview Summary mailed Nov. 25, 2020”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 16/932,462, Notice of Allowance mailed Dec. 15, 2020”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/086,239, Non Final Office Action mailed Dec. 17, 2020”, 15 pgs. [cited by applicant]
“U.S. Appl. No. 17/086,228, Non Final Office Action mailed Dec. 28, 2020”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/086,228, Response filed Jan. 4, 2021 to Non Final Office Action mailed Dec. 28, 2020”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/086,228, Notice of Allowance mailed Jan. 22, 2021”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 17/086,239, Response filed Mar. 17, 2021 to Non Final Office Action mailed Dec. 17, 2020”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/161,115, Non Final Office Action mailed Mar. 23, 2021”, 19 pgs. [cited by applicant]
“U.S. Appl. No. 17/086,239, Notice of Allowance mailed Apr. 9, 2021”, 15 pgs. [cited by applicant]
“U.S. Appl. No. 17/161,115, Response filed Apr. 15, 2021 to Non Final Office Action mailed Mar. 23, 2021”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/161,115, Final Office Action mailed Apr. 28, 2021”, 17 pgs. [cited by applicant]
“U.S. Appl. No. 17/161,115, Response filed Apr. 30, 2021 to Final Office Action mailed Apr. 28, 2021”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/161,115, Notice of Allowance mailed May 12, 2021”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/218,962, Non Final Office Action mailed Jun. 4, 2021”, 21 pgs. [cited by applicant]
“U.S. Appl. No. 17/218,962, Response filed Jun. 10, 2021 to Non Final Office Action mailed Jun. 4, 2021”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/161, 115, Corrected Notice of Allowability mailed Jun. 24, 2021”, 2 pgs. [cited by applicant]
“U.S. Appl. No. 17/218,962, Notice of Allowance mailed Jul. 2, 2021”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/218,962, Corrected Notice of Allowability mailed Jul. 12, 2021”, 2 pgs. [cited by applicant]
“U.S. Appl. No. 17/358,154, Non Final Office Action mailed Oct. 20, 2021”, 24 pgs. [cited by applicant]
“U.S. Appl. No. 17/484,817, Non Final Office Action mailed Oct. 29, 2021”, 35 pgs. [cited by applicant]
“U.S. Appl. No. 17/486,426, Non Final Office Action mailed Nov. 22, 2021”, 16 pgs. [cited by applicant]
“U.S. Appl. No. 17/484,817, Response filed Nov. 30, 2021 to Non Final Office Action mailed Oct. 29, 2021”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/486,426, Response filed Nov. 30, 2021 to Non Final Office Action mailed Nov. 22, 2021”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/388,160, Non Final Office Action mailed Dec. 6, 2021”, 24 pgs. [cited by applicant]
“U.S. Appl. No. 17/394,149, Non Final Office Action mailed Dec. 13, 2021”, 18 pgs. [cited by applicant]
“U.S. Appl. No. 17/462,796, Non Final Office Action mailed Dec. 21, 2021”, 18 pgs. [cited by applicant]
“U.S. Appl. No. 17/486,426, Notice of Allowance mailed Dec. 27, 2021”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/484,817, Notice of Allowance mailed Jan. 11, 2022”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/358,154, Response filed Jan. 17, 2022 to Non Final Office Action mailed Oct. 20, 2021”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 17/484,817, Corrected Notice of Allowability mailed Jan. 20, 2022”, 2 pgs. [cited by applicant]
“U.S. Appl. No. 17/388,160, Response filed Jan. 28, 2022 to Non Final Office Action mailed Dec. 6, 2021”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/394,149, Response filed Jan. 28, 2022 to Non Final Office Action mailed Dec. 13, 2021”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/358, 154, Notice of Allowance mailed Feb. 14, 2022”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/394, 149, Notice of Allowance mailed Feb. 18, 2022”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/358,154, Corrected Notice of Allowability mailed Mar. 2, 2022”, 2 pgs. [cited by applicant]
“U.S. Appl. No. 17/388,160, Notice of Allowance mailed Mar. 2, 2022”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/462,796, Response filed Mar. 21, 2022 to Non Final Office Action mailed Dec. 21, 2021”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/462,796, Examiner Interview Summary mailed Mar. 22, 2022”, 2 pgs. [cited by applicant]
“U.S. Appl. No. 17/462,796, Notice of Allowance mailed Apr. 20, 2022”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/655,124, Non Final Office Action mailed May 4, 2022”, 14 pgs. [cited by applicant]
“U.S. Appl. No. 17/657,019, Non Final Office Action mailed May 24, 2022”, 17 pgs. [cited by applicant]
“U.S. Appl. No. 17/655,124, Response filed Jul. 19, 2022 to Non Final Office Action mailed May 4, 2022”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 17/655,124, Notice of Allowance mailed Aug. 3, 2022”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/657,019, Notice of Allowance mailed Sep. 9, 2022”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 18/534,382, Examiner Interview Summary mailed Dec. 10, 2025”, 2 pgs. [cited by applicant]
“U.S. Appl. No. 18/534,382, Response filed Dec. 15, 2025 to Final Office Action mailed Sep. 15, 2025”, 16 pgs. [cited by applicant]