Hi Xu Huang,

I noticed your discussions mentioned that the identifier of watermarks needs to 
be global across the whole job. Therefore, would it be better to add to the 
FLIP a proposal to the naming convention of identifiers? For example, the 
identifiers are encouraged to be named with its holding module/connector as a 
prefix, like "runtime-backlog”. It is not a compulsory requirement, and is more 
like a suggestion.

Best,
Yufneng 

> 2024年12月17日 11:13,Xu Huang <huangxu.wal...@gmail.com> 写道:
> 
> Thank you for participating in the discussion.
> 
> @jrlee....@gmail.com <jrlee....@gmail.com>
>> If I have a large number of generalized watermarks that need to be
> created, where should they be declared?
> 
> In the current design, the generalized watermark should be declared only
> once in the first user-defined function or source reader that needs to
> create and send it downstream.
> Furthermore, all watermark identifiers must remain unique within a single
> application. Once the upstream operator declares a generalized watermark,
> the downstream operator will be aware of it and will be able to process it
> accordingly.
> 
> Best, Xu Huang
> 
> Junrui Lee <jrlee....@gmail.com> 于2024年12月16日周一 19:40写道:
> 
>> Hi Xu Huang,
>> 
>> Thanks for the proposal!
>> 
>> I have a question: If I have a large number of generalized watermarks that
>> need to be created, where should they be declared? Should they be declared
>> only once in a single Source, or in all operators that need to send,
>> receive, and process them?
>> 
>> Best regards,
>> 
>> Junrui
>> 
>> Xu Huang <huangxu.wal...@gmail.com> 于2024年12月10日周二 15:21写道:
>> 
>>> Hi Devs,
>>> 
>>> Jeyhun Karimov, Weijie Guo and I would like to initiate a discussion
>> about
>>> FLIP-467: Introduce Generalized Watermarks [1].
>>> 
>>> Based on our findings, we recognize the need for specific events that
>>> require propagation and alignment across streams, functioning similarly
>> to
>>> watermarks. An example of this is the IsProcessingBacklog event proposed
>> in
>>> FLIP-309 [2].
>>> 
>>> 
>>> This has inspired us to create a more generalized watermark framework
>> that
>>> transcends traditional event time semantics. The generalized watermark
>>> framework allows users to define a variety of events that can be emitted
>>> from the source or other operators, propagate through the streams, and be
>>> received by downstream operators with aligned properties. With this
>>> abstraction, users and developers can design specialized events according
>>> to their needs, such as EventTime watermark or idleness watermark status.
>>> 
>>> 
>>> Note that this feature only worked for DataStream V2.
>>> 
>>> For more details, please refer to FLIP-467 [1]. We look forward to your
>>> feedback.
>>> 
>>> 
>>> Best,
>>> 
>>> Jeyhun Karimov, Weijie Guo and Xu Huang
>>> 
>>> [1]
>>> 
>>> 
>> https://cwiki.apache.org/confluence/display/FLINK/FLIP-467%3A+Introduce+Generalized+Watermarks
>>> 
>>> [2]
>>> 
>>> 
>> https://cwiki.apache.org/confluence/display/FLINK/FLIP-309%3A+Support+using+larger+checkpointing+interval+when+source+is+processing+backlog
>>> 
>> 

Reply via email to