标签:不同 Flink checkpoint Streaming 检查点 time Spark
一,Flink是真正的流处理,延迟在毫秒级,Spark Streaming是微批,延迟在秒级。
- flink可以做到来一条处理一条,spark Streaming只能采用微批次
二,Flink可以处理事件时间,而Spark Streaming只能处理机器时间,无法保证时间语义的正确性。
- flink三种时间语义,因此有水位线的概念:事件时间event time、机器时间processing time、数据进入flink的时间 ingestion time。
- Spark Streaming用的是微批次,只能用机器时间。
三,Flink的检查点算法比Spark Streaming更加灵活,性能更高。Spark Streaming的检查点算法是在每个stage结束以后,才会保存检查点。
- Flink检查点算法是在流处理过程中,插入检查点屏障 checkpoint barrier,可以做到在基本不损失性能的情况下,对流进行快照。
- spark Streaming的checkpoint只能在每个stage结束以后,保存检查点,有性能损失,且小文件无法得到控制,项目中一般不使用。
四,Flink易于实现端到端一致性。
- 借助checkpoint,以及相关source sink的组件的事物,两阶段提交,能够较为容易的保证端到端一致性。
标签:不同,Flink,checkpoint,Streaming,检查点,time,Spark 来源: https://www.cnblogs.com/guoyu1/p/14246903.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。