EVENT BATCHING, OUTPUT SEQUENCING, AND LOG BASED STATE STORAGE IN CONTINUOUS QUERY PROCESSING
摘要:
This disclosure relates to a system comprising: a memory storing a plurality of instructions; and one or more processors configured to access the memory and execute the plurality of instructions to at least: receive a continuous input stream of events related to an application; determine an interval for inserting a checkpoint marker event into the stream of events, wherein the size of the interval is determined based at least in part on a type of the application, a latency requirement of the application, and a frequency at which events of the input stream of events are received; process the continuous input stream of events to generate an output stream of events related to the application, the processing comprising inserting the checkpoint marker event into the continuous input stream to create an event batch, and the event batch including each event of the continuous input stream of events received during the determined interval; determine an output sequence number for an output event in the output stream of events; transmit the output event in the output stream of events; store the output sequence number of the output event; while the continuous input stream of events is being processed, receive an indication of failure of the system; determine a current output sequence number of a most recently transmitted output event in the output stream of events; determine a most recently processed event batch; in response to the indication of failure of the system, re-process the events in the most recently processed event batch and determine a set of one or more output events of the output stream to be transmitted based on the current output sequence number and the most recently processed event batch, the set of one or more output events to be transmitted comprising each of the re-processed events having an output sequence number greater than the output sequence number of the most recently processed event; and transmit the set of one or more output events related to the application.
信息查询
0/0