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 来说可以支持批处理,只是从数据流上来说,有界数据流只是无界数据流的一个特例,无界数据流只要添加上边界就是有界数据流。

相关推荐
VALENIAN瓦伦尼安教学设备5 小时前
设备状态检测振动分析实训台案例分析
大数据·数据库·人工智能·嵌入式硬件·算法
飞飞传输5 小时前
国产化 MOVEit 替代:文件传输架构与安全能力深度解读
大数据·运维·安全
LONGZETECH5 小时前
低空经济背景下:五组核心数据拆解无人机职业教育的机遇与实训破局
大数据·人工智能·系统架构·无人机
大大大大晴天6 小时前
大数据上 K8s 的三种运行范式:离线计算、实时流处理与分析服务
大数据
程序员小八7776 小时前
Agent 沙箱:给 AI 的「手」套上缰绳
大数据
硬件工艺分享君6 小时前
PCB厂家如何守住交期、品质与响应
大数据·运维·科技·制造·pcb工艺
Shulex6 小时前
电商 AI 客服接管率怎么提升?从指标口径到转人工规则
大数据·人工智能·智能客服·跨境电商
科技研学社6 小时前
2026-2028全球工作服夹克智能制造发展趋势与海外工厂布局报告
大数据·人工智能
JavaPub-rodert6 小时前
写软著 - Copyright Forge Skill 完整闭环改造方案
大数据·elasticsearch·搜索引擎
AI智图坊6 小时前
甩手图省事的技术原理:如何用“商品锁定”机制解决AI作图的一致性难题
大数据·人工智能·计算机视觉·ai作画·aigc·ai写作