Spark streaming是spark core API的⼀种扩展,可以⽤于进⾏⼤规模、⾼吞吐量、容错的实时数据流的处理。它⽀持从多种数据源读取数据,⽐如Kafka、Flume、Twitter和TCP Socket,并且能够使⽤算⼦⽐如map、reduce、join和window等来处理数据,处理后的数据可以保存到⽂件系统、数据库等存储中。
Spark streaming内部的基本⼯作原理是:接受实时输⼊数据流,然后将数据拆分成batch,⽐如每收集⼀秒的数据封装成⼀个batch,然后将每个batch交给spark的计算引擎进⾏处理,最后会⽣产处⼀个结果数据流,其中的数据也是⼀个⼀个的batch组成的。