flink的一些基础知识

flink是⼀个分布式,⾼性能,随时可⽤的以及准确的流处理计算框架,

flink可以对**⽆界数据**(流处理)和有界数据(批处理)进⾏有状态计算(flink天⽣⽀持状态计算)的分

布式,⾼性能的计算框架。

二、flink****的基⽯

flink的四⼤基⽯:checkpoint,state,time,window

checkpoint:基于chandy-lamport算法实现分布式计算任务的⼀致性语义;

state:flink中的状态机制,flink天⽣⽀持state,state可以认为程序的中间计算结果或者是历史计算结果;

time:flink中⽀持基于事件时间和处理时间进⾏计算,spark streaming只能按照process time进⾏处

理; 基于事件时间的计算我们可以解决数据迟到和乱序等问题。

window:flink提供了更多丰富的window,基于时间,基于数量,session window,同样⽀持滚动和滑动窗 ⼝的计算。

三、flink****流处理和批处理

流处理:⽆界,实时性有要求,只需对经过程序的每条数据进⾏处理

批处理:有界,持久,需要对全部数据进⾏访问处理;

spark:spark⽣态中是把所有的计算都当做批处理,spark streaming中流处理本质上也是批处理

(micro batch);

flink:flink中是把批处理(有界数据集的处理)看成是⼀个特殊的流处理场景;flink中所有计算都是流 式计算;

四、flink中重要角色

JobManager: 类似 spark 中 master,负责资源申请,任务分发,任务调度执行,checkpoint 的协调执行;可以搭建 HA,双 master。

TaskManager: 类似 spark 中的 worker,负责任务的执行,基于 dataflow (spark 中 DAG) 划分出的 task; 与 jobmanager 保持心跳,汇报任务状态。

五、有界数据和无界数据

无界数据流:数据流是有一个开始但是没有结束;

有界数据流:数据流是有一个明确的开始和结束,数据流是有边界的。

flink 处理流批处理的思想是:

flink 支持的 runtime (core 分布式流计算) 支持的是无界数据流,但是对 flink 来说可以支持批处理,只是从数据流上来说,有界数据流只是无界数据流的一个特例,无界数据流只要添加上边界就是有界数据流。

相关推荐
蓝眸少年CY2 小时前
Flume-使用与详解
大数据·flume
2601_955363153 小时前
B端企业拓客:如何在精准度与成本之间找到真正平衡?氪迹科技法人股东号码核验系统,阶梯式价格
大数据·人工智能
小荟荟3 小时前
数据资产估值技术探秘:荟宸多源异构数据融合引擎介绍
大数据
chatexcel3 小时前
ChatExcel AIPPT新功能:自定义模板上传,动画完整导出,单页可编辑
大数据·人工智能
Hello.Reader3 小时前
Pandas API on Spark 配置选项系统、默认索引与性能调优
大数据·spark·pandas
腾讯云大数据3 小时前
存算分离,性能跃升:盖雅工场TCHouse-D 3.0升级实现查询效率再提升60%
大数据·腾讯云
武子康3 小时前
大数据-257 离线数仓 - 数据质量监控详解:从理论到Apache Griffin实践
大数据·hadoop·后端
源码之家3 小时前
计算机毕业设计:Python二手车交易价格预测分析平台 Django框架 随机森林 可视化 数据分析 汽车 车辆 大数据 hadoop(建议收藏)✅
大数据·爬虫·python·机器学习·django·汽车·课程设计
OPHKVPS3 小时前
网络安全新威胁:开源AI平台CyberStrikeAI显著降低攻击门槛
大数据·网络·人工智能·安全