Managing queries

US10459915B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10459915-B2
Application numberUS-97759410-A
CountryUS
Kind codeB2
Filing dateDec 23, 2010
Priority dateDec 23, 2009
Publication dateOct 29, 2019
Grant dateOct 29, 2019

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.

Managing queries performed on one or more data sources includes: storing at least a first query in a storage medium; selecting the first query for processing; instructing a query engine to process the first query on a first portion of data in the one or more data sources for a first query interval; receiving result data from the query engine based on processing the first query on the first portion of data; saving a state of the first query in the storage medium after the first query interval; instructing the query engine to process a second query during a second query interval after the first query interval; and instructing the query engine to process the first query on a second portion of data in the one or more data sources during a third query interval after the second query interval.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for managing queries performed on one or more data sources, including: executing by a query engine over a first query time interval a first query having a given priority for execution and that has multiple query portions, against a first portion of data in the one or more data sources; receiving first result data from the query engine; receiving a second query that has multiple query portions and processing a first priority change in accordance with the second query having a higher priority than the given priority of the first query; upon receiving the second query, instructing the query engine to suspend execution of the first query and save a state of processing of the first query; executing by a query engine over a second query time interval at least one of the multiple query portions of the second query during the second query time interval that is after the first query time interval, and continuing to execute one or more subsequent query portions of the second query until a second priority change is processed by the query engine; and receiving second result data from the query engine based on executing the at least one of the multiple query portions of the second query. 2. The method of claim 1 , further including: storing the first query and the given priority associated with the first query in a storage medium; and changing a priority associated with the first query to the given priority prior to selecting the first query for processing; wherein selecting the first query for processing includes selecting the first query based in part on the given priority. 3. The method of claim 1 , wherein the first query time interval is defined by a predetermined amount of time. 4. The method of claim 3 , wherein the given priority of the first query affects how much of the data in the one or more data sources is included in the first portion of data on which the first query is executed for the first query time interval. 5. The method of claim 1 , further including storing a notification threshold of a quantity of the first result data to be available before a requester that provided the first query is notified. 6. The method of claim 5 , further including notifying the requester when the quantity of the first result data exceeds the notification threshold, and storing the quantity of the first result data received from the query engine. 7. The method of claim 6 , further including returning the first result data upon request from the requester; and storing the quantity of the first result data returned to the requester in a storage medium. 8. The method of claim 7 , further including selecting the first query based on the quantity of the first result data received from the query engine and the quantity of the first result data returned to the requester. 9. The method of claim 1 , further including: instructing the query engine to suspend the first query; and saving a state of the first query after the first query has been suspended. 10. The method of claim 9 , further including: loading the saved state of the first query; and instructing the query engine to resume the first query. 11. The method of claim 9 , further including saving a state of the first query includes saving an offset into a secondary index. 12. The method of claim 11 , wherein the secondary index is a block compressed indexed file. 13. The method of claim 1 , further including dividing the first query into multiple subqueries, and instructing the query engine to process at least some of the subqueries concurrently. 14. The method of claim 1 , wherein the second query is received and stored in a storage medium after the first query time interval begins. 15. The method of claim 1 , wherein the second query is received and stored in a storage medium before the first query time interval begins. 16. A non-transitory computer-readable storage medium storing a computer program for managing queries performed on one or more data sources, the computer program including instructions for causing a computer to: execute by a query engine over a first query time interval a first query having a given priority for execution and that has multiple query portions, against a first portion of data in the one or more data sources; receive first result data from the query engine; receive a second query that has multiple query portions and processing a first priority change in accordance with the second query having a higher priority than the given priority of the first query; upon receiving the second query, instruct the query engine to suspend execution of the first query and save a state of processing of the first query; execute by the query engine over a second query time interval at least one of the multiple query portions of the second query during the second query time interval that is after the first query time interval, and continue to execute one or more subsequent query portions of the second query until a second priority change is processed by the query engine; and receive second result data from the query engine based on executing the at least one of the multiple query portions of the second query. 17. A system for managing queries performed on one or more data sources, the system including: a storage medium configured to store at least a first query; a query engine configured to process queries on data in the one or more data sources; and a server configured to: execute by the query engine over a first query time interval a first query having a given priority for execution and that has multiple query portions, against a first portion of data in the one or more data sources; receive first result data from the query engine; receive a second query that has multiple query portions and processing a first priority change in accordance with the second query having a higher priority than the given priority of the first query; upon receiving the second query, instruct the query engine to suspend execution of the first query and save a state of processing of the first query; execute by the query engine over a second query time interval at least one of the multiple query portions of the second query during the second query time interval that is after the first query time interval, and continue to execute one or more subsequent query portions of the second query until a second priority change is processed by the query engine; and receive second result data from the query engine based on executing the at least one of the multiple query portions of the second query. 18. The non-transitory computer-readable storage medium of claim 16 , the computer program further including instructions for causing the computer to: store the first query and the given priority associated with the first query in a storage medium; change a priority associated with the first query to the given priority prior to selecting the first query for processing; and select the first query for processing by selecting the first query based in part on the given priority. 19. The non-transitory computer-readable storage medium of claim 16 , wherein the first query time interval is defined by a predetermined amount of time. 20. The non-transitory computer-readable storage medium of claim 19 , wherein the given priority of the first query affects how much of the data in the one or more data sources is included in the first portion of data on which the first query is executed for the first query time interval. 21. The non-transi

Assignees

Inventors

Classifications

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 US10459915B2 cover?
Managing queries performed on one or more data sources includes: storing at least a first query in a storage medium; selecting the first query for processing; instructing a query engine to process the first query on a first portion of data in the one or more data sources for a first query interval; receiving result data from the query engine based on processing the first query on the first port…
Who is the assignee on this patent?
Stanfill Craig W, Maclean John, Ab Initio Technology Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/24532. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 29 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).