前文:
在用Spark实时标签系统时,遇到了不少问题,如实时性,Exactly-one,故障重跑等问题,感慨到要是懂Flink就好了。所以当项目开发完后,用了半个月基本把基础过了一遍,还重构了下项目重新部署在测试环境中。
在实时流领域,Flink比Spark做得更好,尤其是实时性、时间语义、键控状态与水位及故障处理这一块。但在批处理领域,Spark依然是一位不可撼动的霸主,它的生态圈更强。
先挖坑(慢慢填笔记~)
一、概述
1.2算子转换
二、时间语义与水位
三、键控状态
开发过程中,经常使用KeyedStream,即每个Key可以创建多个属于自己的状态集合,通过集合可以实现各种维表关联及中间状态的保留。
四、故障处理
五、性能调优
六、重构
5.1 Spark
5.2 Flink