(4)Trigers详解

流式查询的触发器设置定义流式数据处理的时间,查询是作为具有固定批处理间隔的微批量查询还是作为连续处理查询来执行。 以下是支持的各种触发器。

  1. 默认触发器

如果没有显示的制定triger,默认情况下查询会以微批模式进行查询处理,当前批次处理完之后立即产生下个批次。

 

df.writeStream
  .format("console")
  .start()

 

2.固定间隔微批

查询将以微批量模式执行,其中微批次将以用户指定的间隔启动。

  1. 如果先前的微批次在该间隔内完成,则引擎将等待该间隔结束,然后开始下一个微批次。
  2. 如果前一个微批次需要的时间超过完成的时间间隔(即如果错过了区间边界),那么下一个微批次将在前一个完成后立即开始(即,它不会等待下一个间隔边界) )。
  3. 如果没有可用的新数据,则不会启动微批次。
df.writeStream
  .format("console")
  .trigger(Trigger.ProcessingTime("2 seconds"))
  .start()

 

3.一次性微批次

查询将执行仅一个微批处理所有可用数据,然后自行停止。这在希望定期启动集群,处理自上一个时间段以来可用的所有内容,然后关闭集群的方案中非常有用。在某些情况下,这可能会显着节省成本。

df.writeStream
  .format("console")
  .trigger(Trigger.Once())
  .start()

 

4.使用固定checkpoint间隔

这个是实验性的接口。查询将以新的低延迟,连续处理模式执行。

 

df.writeStream
  .format("console")
  .trigger(Trigger.Continuous("1 second"))
  .start()

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值