×

Managing continuous queries with archived relations

  • US 10,102,250 B2
  • Filed: 03/14/2013
  • Issued: 10/16/2018
  • Est. Priority Date: 09/28/2012
  • Status: Active Grant
First Claim
Patent Images

1. A system, comprising:

  • a memory storing a plurality of instructions; and

    one or more processors configured to access the memory, wherein the one or more processors are further configured to execute the plurality of instructions to at least;

    identify a window for referencing at least a portion of a data stream, the data stream comprising one or more notifications of changes to at least a first data object;

    provide a user interface to a user for configuring a configurable window size of the window;

    receive, at the user interface, a value for the configurable window size of the window;

    configure the configurable window size based at least in part on the value;

    identify a continuous query that is to be based at least in part on an archived relation, the archived relation comprising at least a portion of historical data and incoming events of the data stream that are within the window that corresponds to the configurable window size, the historical data from a previous time associated with the data stream, the archived relation configured as a time-bounded window on the data stream that corresponds to the configurable window size, and the archived relation being not empty upon creation;

    generate a query operator graph based at least in part on operators of the continuous query;

    sort the query operator graph topologically, the topological sort performed such that the operators are ordered from a source operator to an output operator;

    traverse the query operator graph in a topological order based at least in part on the topological sort of the query operator graph;

    determine which operator of the query operator graph is a lowest stateful operator in the query operator graph based at least in part on the topological traversal;

    execute an archiver query based at least in part on the sorted query operator graph to initialize the continuous query, the execution of the archiver query comprising;

    receiving historical data, via a structured query language query, corresponding to the lowest stateful operator of the sorted query operator graph, the historical data comprising a backing store of the first data object; and

    initializing the continuous query with the historical data corresponding to the lowest stateful operator of the sorted query operator graph and based at least in part on the configurable window size;

    evaluate the archived relation using the continuous query by processing incoming events of the data stream and the at least a portion of the historical data associated with stateful operators of the query operator graph; and

    listen to a messenger service for a notification of a subsequent change in the first data object compared with the initialized query and/or the portion of historical data.

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