火花流是否必须完成处理前一批数据,然后它才能处理下一批数据,是不是?

Guo*_*Guo 3 apache-spark spark-streaming

我设置的火花流时间间隔是5s.如果当前5s接收到非常多的数据,并且火花流不能在5s内完成,但下一批数据即将到来.

火花流是否会在同一时间处理下一批数据?

我的意思是批次会并行执行吗?

Mit*_*acy 5

Spark流式处理一次处理一批.此外,每批中的各个数据项按批次中的顺序进行处理.默认情况下,如果spark没有足够的时间来访问下一个数据项中的所有数据项,那么这些数据项将被删除.

但是,如果您使用更高级的流连接(例如Kafka),则spark可以在完成当前流程后处理挂起的批处理.这导致批量在Kafka中建立,并且这种构建称为"背压",它也可以构建到Kafka必须开始丢弃数据的程度.

如果您没有使用Kafka等高级连接,并且您的数据流是"突发性",这意味着存在高输入速率的时段,您可能希望增加批处理时间以最大限度地减少数据丢失.