与spark的对比

spark:一个批次一个job,不管有没有数据都要起job
flink:事件驱动,有数据才计算(数据与计算是一体化的)
flink遇到类似双流join不需要借助外部存储(如redis)


flink世界观:
离线数据是有界流
实时数据是无界流
所以在flink世界观中,spark就是离线的


flink的客户端只有提交应用的作用,提交完可以关了,对程序每影响


spark不会动态申请资源而是无论有没有job先申请资源
flink 使用yarn调度平台的时候,动态申请资源,没有job申请,不会启动taskmanager

flink:
那如果申请两个Slot,而执行Job时,只用到了一个,剩下的一个怎么办?那我们自认而然就会想到可以将这个Slot给并行的其他Job

spark
当Spark申请资源后就指定了使用多少核多少cpu多少executor,这个Core执行任务时有可能是空闲的,但是这个时候Spark并不能将这个空闲下来的Core共享给其他Job使用