流的来源是Spark自带的所有内容(RDD,DataSet,DataFrame)
参照网址:http://spark.apache.org/docs/latest/structured-streaming-programming-guide.html
流里面的数据是结构化的,列固定,可以把这10秒(这个时间可以指定)钟接收的所有数据当成一张表来使用;
结构化流提供快速、可伸缩、容错、端到端的一次流处理,而无需用户对流进行推理
- [ ] 输出模式
完全模式(complete)-整个更新的结果表将写入外部存储。由存储连接器决定如何处理整个表的写入
附加模式(Append)-只有结果表中附加的新行,因为最后一个触发器将写入外部存储。这仅适用于预期结果表中的现有行不会更改的查询。
更新模式(Update)-只有上次触发器后在结果表中更新的行才会写入外部存储(自Spark2.1.1以来即可获得)。请注意,这与完全模式不同,因为此模式只输出自上次触发器以来更改的行。如果查询不包含聚合,则它将等同于追加模式
下图中最快的做法是:
当时间是t5,把t4统计的结果+t5(新记录)统计的结果相加;这就是t5的总结果;
问题:数据生成的时间(netcat)和Spark接收的时间不一样;(原因:网