1、Flink基础概念

1、基础知识

(1)、数据流上的有状态计算

(2)、框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。

(3)、事件驱动型应用,有数据流就进行处理,无数据流就不进行处理,就像挤牙膏一样。

(4)、无界数据流&&有界数据流:

        其中,无界数据流就相当于水龙头,流的开始就是打开水龙头,但原则上,只要不关闭水龙头,水就会一直流下去,所以没有定义流的结束。

        有界数据流,相当于给一个水桶中装满水,水桶底部存在一个小孔,流的开始就是水桶滴下第一滴水,流的结束就是滴下最后一滴水。

1、Flink基础概念_第1张图片

2、有状态流处理

        举例:在一条马路上,每过一辆车,就会记录一次,在经过一段时间后,对记录的结果进行统计处理。

1、Flink基础概念_第2张图片

3、Flink特点

1、Flink基础概念_第3张图片

4、Spark和Flink的区别

两者最为本质的区别就是,Spark是批处理模式,Flink是流处理模式,

Spark Streaming:

(1)比如设计批次为3s,那么Spark将会积攒3s内的数据,最后统一对其进行处理。

(2)计算模型:微批次处理

(3)时间语义:处理时间

(4)窗口:少,不灵活

(5)状态:没有,需要跟外部系统进行交互。

(6)流式SQL:没有

Flink:

(1)与Spark不同的是,Flink是流处理模式,来一条数据,就处理一条数据。

(2)计算模型:流计算

(3)时间语义:事件时间、处理时间

处理时间:在处理数据时的现实时间

事件事件:数据本身产生的时间

举例:

例如,在23:59:59产生了一条数据,但因为网络延迟问题,导致计算引擎读取出现延迟,读取时间为0:00:01,综上所述,事件时间就是23:59:59,处理时间就是0:00:01

(4)窗口:多、灵活

(5)状态:有,可以自己维护管理数据。

(6)流式SQL:有

1、Flink基础概念_第4张图片

5、Flink分层API

1、Flink基础概念_第5张图片

你可能感兴趣的:(Flink,flink,大数据)