在现实世界中,这个事件从发生到写入到系统里面,期间的间隔可能比较久。例如在地铁里面信号较弱时,如果我们在微博进行转发、评论、点赞等操作,由于网络的原因,这些操作可能要等我们出了地铁后才能完成,因此可能有些先发生的事件会后到达系统。而 Event Time 能够更真实地反映事件发生的时间点,因此在很多场景下,我们用 Event Time 作为事件发生时间。但是在这种情况底下,由于存在的延迟,所以在窗口需要花费较长的时间等待它的到来,端到端的延迟可能较大。
还需要处理乱序的问题,如果用 Processing Time 当做事件时间的话,处理较快,延迟较低,但是无法反映真实事件发生的情况。因此在真实的开发应用时,需要根据应用的特点做相应的取舍。
资料来源:《8-Apache Flink 必知必会》,下载链接:https://developer.aliyun.com/topic/download?id=1189
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。