Maintaining data across query executions of a long-running query

US2020057819A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2020057819-A1
Application numberUS-201815998854-A
CountryUS
Kind codeA1
Filing dateAug 17, 2018
Priority dateAug 17, 2018
Publication dateFeb 20, 2020
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Disclosed herein are system, method, and computer program product embodiments for a query processing system. An embodiment operates by receiving a query associated with a table. An ordered index with entries that include key values that uniquely identifies a corresponding record in the table is determined. A last key value is initialized to store a minimum value for a data type of the key value. The query is executed as a union-all of a plurality of queries. While a count of selected records is less than or equal to a threshold quantity and at least one entry remains in the ordered index, an ordered next entry with a key value subsequent to the last key value in the index is identified, the corresponding record is selected from the table, the last key value is updated, the query is executed, and the count is incremented.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer-implemented method, comprising: receiving a query associated with a table; determining an index comprising a plurality of ordered entries, each entry of the plurality of ordered entries corresponding to a record in the table, wherein each entry includes a key value that uniquely identifies the corresponding record in the table; initializing a last key value to store a minimum value for a data type of the key value; executing the query as a union-all of a plurality of queries, wherein each of the plurality of queries is executed against at most a threshold quantity of records from the table in accordance with the following: while a count of selected records is less than or equal to the threshold quantity and at least one entry remains in the ordered index: identifying the ordered next entry with a key value subsequent to the last key value in the index; selecting, from the table, a next record corresponding to the identified ordered next entry from the index; updating the last key value to the key value for the identified ordered next entry; executing a query of the plurality of queries against the selected record; and incrementing the count. 2 . The method of claim 1 , wherein the index comprises an ascending ordered index, and wherein the identifying comprises identifying the ordered next entry with the key value greater than the last key value in the ascending ordered index. 3 . The method of claim 1 , wherein the index comprises an descending ordered index, and wherein the identifying comprises identifying the ordered next entry with the key value less than the last key value in the descending ordered index. 4 . The method of claim 1 , wherein the key value for a respective entry comprises a plurality of key values from the index that together unique identify the corresponding a respective record in the table. 5 . The method of claim 4 , wherein the plurality of key values comprises a first key value and a second key value, wherein the first key value corresponds to a first data type, and wherein the second key value corresponds to a second data type. 6 . The method of claim 5 , wherein the initializing comprises: initializing the last key value to store both a minimum value for the first data type and a minimum value for the second data type. 7 . The method of claim 1 , wherein the identifying comprises: executing an idempotent function against the last key value and at least one entries from the ordered index, wherein the idempotent function, when executed, identifies a largest entry from a set of two or more entries. identifying, from the index, the ordered next entry based on executing. 8 . The method of claim 1 , wherein the index includes values from a plurality of columns from the table that are ordered from a most significant column to a least significant column, and wherein the order of the columns in the index is different from an order of the columns in the table. 9 . A system, comprising: a memory; and at least one processor coupled to the memory and configured to: receive a query associated with a table; determine an index comprising a plurality of ordered entries, each entry of the plurality of ordered entries corresponding to a record in the table, wherein each entry includes a key value that uniquely identifies the corresponding record in the table; initialize a last key value to store a minimum value for a data type of the key value; execute the query as a union-all of a plurality of queries, wherein each of the plurality of queries is executed against at most a threshold quantity of records from the table in accordance with the following: while a count of selected records is less than or equal to the threshold quantity and at least one entry remains in the ordered index: identify the ordered next entry with a key value subsequent to the last key value in the index; select, from the table, a next record corresponding to the identified ordered next entry from the index; update the last key value to the key value for the identified ordered next entry; execute a query of the plurality of queries against the selected record; and increment the count. 10 . The system of claim 9 , wherein the index comprises an ascending ordered index, and wherein the at least one processor that identifies is configured to identify the ordered next entry with the key value greater than the last key value in the ascending ordered index. 11 . The system of claim 9 , wherein the index comprises an descending ordered index, wherein the at least one processor that identifies is configured to identify the ordered next entry with the key value less than the last key value in the descending ordered index. 12 . The system of claim 9 , wherein the key value for a respective entry comprises a plurality of key values from the index that together unique identify the corresponding a respective record in the table. 13 . The system of claim 12 , wherein the plurality of key values comprises a first key value and a second key value, wherein the first key value corresponds to a first data type, and wherein the second key value corresponds to a second data type. 14 . The system of claim 13 , wherein the at least one processor that initializes is configured to: initialize the last key value to store both a minimum value for the first data type and a minimum value for the second data type. 15 . The system of claim 9 , wherein the at least one processor that identifies is configured to: execute an idempotent function against the last key value and at least one entries from the ordered index, wherein the idempotent function, when executed, identifies a largest entry from a set of two or more entries. identify, from the index, the ordered next entry based on executing. 16 . The system of claim 9 , wherein the index includes values from a plurality of columns from the table that are ordered from a most significant column to a least significant column, and wherein the order of the columns in the index is different from an order of the columns in the table. 17 . A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising: receiving a query associated with a table; determining an index comprising a plurality of ordered entries, each entry of the plurality of ordered entries corresponding to a record in the table, wherein each entry includes a key value that uniquely identifies the corresponding record in the table; initializing a last key value to store a minimum value for a data type of the key value; executing the query as a union-all of a plurality of queries, wherein each of the plurality of queries is executed against at most a threshold quantity of records from the table in accordance with the following: while a count of selected records is less than or equal to the threshold quantity and at least one entry remains in the ordered index: identifying the ordered next entry with a key value subsequent to the last key value in the index; selecting, from the table, a next record corresponding to the identified ordered next entry from the index; updating the last key value to the key value for the identified ordered next entry; executing a query of the plurality of queries against the selected record; and incrementing the count. 18 . The non-transitory computer-readable device of claim 17 , wherein the index comprises a

Assignees

Inventors

Classifications

  • Binary matching operations · CPC title

  • Updates performed during online database operations; commit processing · CPC title

  • Tablespace storage structures; Management thereof · CPC title

  • Physics · mapped topic

  • Physics · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2020057819A1 cover?
Disclosed herein are system, method, and computer program product embodiments for a query processing system. An embodiment operates by receiving a query associated with a table. An ordered index with entries that include key values that uniquely identifies a corresponding record in the table is determined. A last key value is initialized to store a minimum value for a data type of the key value…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/2282. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Feb 20 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).