spring batch 和 spark streaming 是常见的两个批处理框架,
- spring batch典型的批处理模式,spark streaming作为流处理,流处理模式代表。
- spring batch是代码加载数据处理的过程,即数据喂代码;spark streaming相反,即代码喂数据。即写好的数据处理逻辑,送到spark集群去执行。
- spark streaming常用于大数据业务的批处理场景,其在集群容错,负载均衡以及任务的调动上,都帮我们搞定了,围绕它的开源生态系统也有很多。
流处理:
streaming有一个间隔时间视窗(比如1秒钟)的概念,比如将这1秒钟的时间内的接收到的所有数据,当作一个数据流,然后输入给spark 集群处理。也就是spark streaming 将数据以时间片断的形式进行截取,然后逐个进行批处量。所以spark streaming的流计算的本质还是批处理。