Hi Suho,

I have already implemented and added this to docs (
https://docs.wso2.com/display/CEP420/Inbuilt+Windows#InbuiltWindows-externalTimeBatch).
Yesterday I learnt of a 5th parameter added to external time batch by you,
which I assume is being handled by Ramindu.

Regards,
Charini

On Tue, Jul 26, 2016 at 5:36 AM, Sriskandarajah Suhothayan <[email protected]>
wrote:

> Hi Charini,
>
> Is this implemented? If so can you add this to the docs if it's not done
> so far?
>
> Regards
> Suho
>
>
> On Mon, Jul 25, 2016 at 12:30 PM, Charini Nanayakkara <[email protected]>
> wrote:
>
>> Hi Grainier,
>>
>> Answers to your queries are as follows.
>>
>> 1. What will happen to the events that arrive before, 0th-millisecond of
>>> an hour? And is this 0th-millisecond taken relative to current-time or the
>>> external-time?
>>>
>>
>>  The third parameter is taken relative to external time, whereas the
>> events arriving before the 0th millisecond of an hour, would be processed
>> at the next hour. For example, assume that the external time of an event is
>> 10.45. If the third parameter is 0, then the relevant event would be
>> processed at 11.
>>
>>>
>>>> 2. What do you mean by if the value is not provided? Does this
>>> introduces an overload method to externalTimeBatch
>>>
>> The 3rd and 4th parameters of external time batch are optional. Therefore
>> if a time batch is provided as #window.externalTimeBatch(external_time, 2
>> min), the  "external_time" of the 1st event arriving to the relevant stream
>> would be taken as the start time.
>>
>>>
>>> from LoginEvents#window.externalTimeBatch(timestamp, 1 sec, 0, 3 sec)
>>>
>>> 3. With above impl, if an event which belongs to the current batch,
>>> arrives after the given timeout, will it be processed as a new batch?
>>>
>>  In such a scenario, we would obtain two outputs for the same batch. One
>> output would be obtained when timeout is elapsed. Another output would be
>> obtained if an event of the same batch arrives after the timeout has
>> expired. However in the second instance, all the events of the relevant
>> batch would be considered. Not just the new events.
>>
>> Thanks,
>> Charini
>>
>>>
>>> Regards,
>>> Grainier.
>>>
>>> On Tue, Jul 12, 2016 at 8:15 AM, Charini Nanayakkara <[email protected]>
>>> wrote:
>>>
>>>> Hi Imesh,
>>>>
>>>> Specifying a timeout is already allowed in Siddhi. An example is as
>>>> follows.
>>>>
>>>> from LoginEvents#window.externalTimeBatch(timestamp, 1 sec, 0, 3 sec)
>>>> select timestamp, ip, count() as total
>>>> insert all events into uniqueIps
>>>>
>>>> In this instance, events would be batched based on "timestamp" value. A
>>>> batch would comprise of events arriving within 1 sec (as per the
>>>> "timestamp"). The third parameter 0 specifies that batching must start from
>>>> the 0th millisecond of an hour. If this value was not provided, the default
>>>> start time would have been the timestamp value of the 1st event. The 4th
>>>> parameter indicates the timeout. When 3rd parameter is not provided, output
>>>> for a 1 sec batch is obtained only if that entire batch is completed (i.e.
>>>> Siddhi learns that data worth of 1 sec has arrived only when it gets an
>>>> event belonging to next batch). However, this timeout allows us to obtain
>>>> an output in 3 seconds (based on UTC time) , even if a 1 sec batch is not
>>>> completed.
>>>>
>>>> The issue with this implementation is, it disallows us to use the
>>>> timeout while using 1st event's timestamp as start time. The suggested
>>>> solution allows us to use either a variable or constant as 3rd parameter.
>>>> Thus, subsequent to the implementation, we should be able to provide
>>>> "timestamp" attribute as the 3rd parameter, from which Siddhi would derive
>>>> 1st event's timestamp value to be used as start time (from
>>>> LoginEvents#window.externalTimeBatch(timestamp, 1 sec, timestamp, 3 sec)).
>>>> However the capability of specifying a constant value (as in the given
>>>> example) too would be retained.
>>>>
>>>> Thank you
>>>> Charini
>>>>
>>>> On Tue, Jul 12, 2016 at 7:24 AM, Imesh Gunaratne <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Charini,
>>>>>
>>>>> A great thought!
>>>>>
>>>>> Would it be possible for you to explain this requirement with an
>>>>> example written in Siddhi? Specifically how to generate a custom event on
>>>>> the timeout.
>>>>>
>>>>> Thanks
>>>>>
>>>>>
>>>>> On Monday, July 11, 2016, Charini Nanayakkara <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> Hi All,
>>>>>>
>>>>>> I have planned to improve the current implementation of external time
>>>>>> batch window, to allow accepting first event's time as start time, when
>>>>>> specifying a timeout.
>>>>>>
>>>>>> In the current implementation, the 3rd parameter allows user to
>>>>>> provide a user defined start time (whereas the default is to use first
>>>>>> event's time as start time). This value is required to be a constant. The
>>>>>> 4th parameter is reserved for specifying a timeout, which is valuable in 
>>>>>> an
>>>>>> instance where output needs to be given if events don't arrive for some
>>>>>> time. However, this implementation disallows a user to use the default
>>>>>> start time (first event's start time) and timeout together.
>>>>>>
>>>>>> Therefore, I intend to change the implementation such that user can
>>>>>> either provide a variable or a constant as 3rd parameter. This enables 
>>>>>> the
>>>>>> external time field to be given as 3rd parameter, from which Siddhi can
>>>>>> retrieve 1st event's time to be used as start time. Alternatively, a
>>>>>> constant value could be given if user defined start time is required.
>>>>>>
>>>>>> Suggestions and comments are most welcome.
>>>>>>
>>>>>> Thank you
>>>>>> Charini
>>>>>>
>>>>>> --
>>>>>> Charini Vimansha Nanayakkara
>>>>>> Software Engineer at WSO2
>>>>>> Mobile: 0714126293
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> *Imesh Gunaratne*
>>>>> Software Architect
>>>>> WSO2 Inc: http://wso2.com
>>>>> T: +94 11 214 5345 M: +94 77 374 2057
>>>>> W: https://medium.com/@imesh TW: @imesh
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Architecture mailing list
>>>>> [email protected]
>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Charini Vimansha Nanayakkara
>>>> Software Engineer at WSO2
>>>> Mobile: 0714126293
>>>>
>>>>
>>>> _______________________________________________
>>>> Architecture mailing list
>>>> [email protected]
>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>
>>>>
>>>
>>>
>>> --
>>> Grainier Perera
>>> Software Engineer
>>> Mobile : +94716122384
>>> WSO2 Inc. | http://wso2.com
>>> lean.enterprise.middleware
>>>
>>
>>
>>
>> --
>> *Charini Vimansha Nanayakkara*
>> Software Engineer at WSO2
>>
>> Mobile: 0714126293
>> E-mail: [email protected]
>> Blog: http://www.charini.me/
>>
>> <http://wso2.com/signature>
>>
>> _______________________________________________
>> Architecture mailing list
>> [email protected]
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
>
> *S. Suhothayan*
> Associate Director / Architect & Team Lead of WSO2 Complex Event Processor
> *WSO2 Inc. *http://wso2.com
> * <http://wso2.com/>*
> lean . enterprise . middleware
>
>
> *cell: (+94) 779 756 757 <%28%2B94%29%20779%20756%20757> | blog:
> http://suhothayan.blogspot.com/ <http://suhothayan.blogspot.com/>twitter:
> http://twitter.com/suhothayan <http://twitter.com/suhothayan> | linked-in:
> http://lk.linkedin.com/in/suhothayan <http://lk.linkedin.com/in/suhothayan>*
>



-- 
*Charini Vimansha Nanayakkara*
Software Engineer at WSO2

Mobile: 0714126293
E-mail: [email protected]
Blog: http://www.charini.me/

<http://wso2.com/signature>
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to