×

Generation of archiver queries for continuous queries over archived relations

  • US 9,953,059 B2
  • Filed: 09/25/2013
  • Issued: 04/24/2018
  • Est. Priority Date: 09/28/2012
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method, comprising:

  • receiving, by a computer system configured to execute computer-executable instructions, a continuous query to be executed on an event stream, the continuous query being identified based at least in part on an archived relation associated with an application, the archived relation indicating availability of historical data related to the event stream, the historical data stored in a database;

    generating a physical query plan for the continuous query;

    determining that an operator identified in the physical query plan is capable of being used to construct a corresponding archiver query based at least in part on a function being performed by the operator and a type of the operator;

    when it is determined that the operator is capable of being used to construct a corresponding archiver query, determining that the operator is capable of maintaining state information related to the application such that the operator can be used on the event stream after being pre-populated with a state of the operator, the state of the operator providing historical context associated with querying the historical data in the database;

    based at least in part on determining that the operator is capable of being used to construct the corresponding archiver query and that the operator is capable of maintaining state information related to the application, constructing the archiver query for the operator, constructing the archiver query comprising;

    constructing a structured query language (SQL) equivalent expression corresponding to an attribute utilized by the operator;

    constructing an output SQL expression for the operator based at least in part on the SQL equivalent expression; and

    constructing the archiver query for the operator based at least in part on the output SQL expression;

    executing the archiver query on the historical data in the database to obtain a result set of data records related to the application;

    initializing the state of the operator based at least in part on the result set of data records; and

    executing the continuous query on the event stream in order to generate a snapshot output of one or more data values related to the application based at least in part on pre-populating the operator with the state of the operator.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×