This topic has not yet been rated - Rate this topic

AdvanceTimeGenerationSettings Class

Defines how and when the engine should advance application time by inserting a Current Time Increment (CTI) event.

System.Object
  Microsoft.ComplexEventProcessing.AdvanceTimeGenerationSettings

Namespace:  Microsoft.ComplexEventProcessing
Assembly:  Microsoft.ComplexEventProcessing (in Microsoft.ComplexEventProcessing.dll)
public sealed class AdvanceTimeGenerationSettings

The AdvanceTimeGenerationSettings type exposes the following members.

  NameDescription
Public methodAdvanceTimeGenerationSettings(TimeSpan, TimeSpan)Initializes a new instance of the AdvanceTimeSettings class with the specified frequency and delay settings.
Public methodAdvanceTimeGenerationSettings(UInt32, TimeSpan)Initializes a new instance of the AdvanceTimeSettings class with specified frequency and delay.
Public methodAdvanceTimeGenerationSettings(TimeSpan, TimeSpan, Boolean)Initializes a new instance of the AdvanceTimeSettings class with the specified frequency, delay and advance to infinity setting .
Public methodAdvanceTimeGenerationSettings(UInt32, TimeSpan, Boolean)Initializes a new instance of the AdvanceTimeSettings class with specified frequency, delay and advance to infinity settings.
Top
  NameDescription
Public propertyAdvanceTimeFrequencyTypeGets the policy that determines when the engine advances application time by generating a Current Time Increment (CTI) event.
Public propertyAdvanceToInfinityOnShutdownGets a value that determines whether a final CTI with a time stamp of positive infinity should be inserted when the query is shut down. This is used to flush all remaining events from the query's operators. The default value is false.
Public propertyDelayGets the time span that defines the timestamp of the generated CTIs as a delay of time T with respect to the last received event. A positive value implements a grace period to allow for out of order events. Smaller values reduce latency.
Public propertyDurationGets the application time span that must elapse since the last Current Time Increment (CTI) in terms of input event timestamps before the engine advances time again by generating a new CTI event.
Public propertyEventCountGets the event count that defines the number of events that must be received from the event source before the engine advances time again by generating a Current Time Increment (CTI) event.
Top
  NameDescription
Public methodEquals (Inherited from Object.)
Protected methodFinalize (Inherited from Object.)
Public methodGetHashCode (Inherited from Object.)
Public methodGetType (Inherited from Object.)
Protected methodMemberwiseClone (Inherited from Object.)
Public methodToString (Inherited from Object.)
Top

The temporal model of StreamInsight is based only on application time and never on system time. This means that all temporal operators refer to the timestamp of the events and never to the system clock of the host machine. As a result, applications must communicate their current application time to the StreamInsight server. Application time for a given application depends on many different aspects in the context of the application. Ultimately it is the responsibility of the application developer to provide the appropriate application time to the StreamInsight server.

During query processing, application time is driven by Current Time Increment (CTI) events. A CTI is a punctuation event that is a central component of the StreamInsight temporal model. CTIs are used to commit sequences of events and release computed results to the query output by asserting to the StreamInsight server that certain parts of the timeline will not change any more. Hence, it is crucial to enqueue CTIs along with events into the input event stream in order to produce any result and to flush the state of stateful operators. 

An object of type AdvanceTimeGenerationSettings can be used in the context of a query binding as well as in the definition of an input adapter factory. Its parameters define declaratively how CTI events will be injected into the stream, as opposed to enqueue CTIs programmatically through EnqueueCtiEvent. For more information, see Advancing Application Time.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.