1. 有状态转化操作
UpdateStateByKey:用于在DStream中跨批次维护状态,构建由(键,状态)对组成的新DStream。使用时需定义状态及状态更新函数,且要配置检查点目录。
WindowOperations:可通过设置窗口大小和滑动间隔动态获取当前Streaming的状态。窗口时长和滑动步长都必须是采集周期大小的整数倍。
2. DStream输出:指定对流数据转化后的数据执行的操作,若DStream及其派生的DStream未执行输出操作,则不会被求值,整个StreamingContext也不会启动。输出操作包括print()、saveAsTextFiles()、saveAsObjectFiles()、saveAsHadoopFiles()和foreachRDD(),其中foreachRDD()最通用,但使用时连接操作不能写在driver层面,写在foreach中效率低,推荐使用foreachPartition在分区创建连接 。