MAPREDUCE服务 MRS-Spark应用开发简介:Structured Streaming常用概念

时间:2024-10-22 10:49:51

Structured Streaming常用概念

  • Input Source

    输入数据源,数据源需要支持根据offset重放数据,不同的数据源有不同的容错性。

  • Sink

    数据输出,Sink要支持幂等性写入操作,不同的sink有不同的容错性。

  • outputMode

    结果输出模式,当前支持3种输出模:

    • Complete Mode:整个更新的结果集都会写入外部存储。整张表的写入操作将由外部存储系统的连接器完成。
    • Append Mode:当时间间隔触发时,只有在Result Table中新增加的数据行会被写入外部存储。这种方式只适用于结果集中已经存在的内容不希望发生改变的情况下,如果已经存在的数据会被更新,不适合适用此种方式。
    • Update Mode:当时间间隔触发时,只有在Result Table中被更新的数据才会被写入外部存储系统。注意,和Complete Mode方式的不同之处是不更新的结果集不会写入外部存储。
  • Trigger

    输出触发器,当前支持以下几种trigger:

    • 默认:以微批模式执行,每个批次完成后自动执行下个批次。
    • 固定间隔:固定时间间隔执行。
    • 一次执行:只执行一次query,完成后退出。
    • 连续模式:实验特性,可实现低至1ms延迟的流处理(推荐100ms)。

Structured Streaming支持微批模式和连续模式。微批模式不能保证对数据的低延迟处理,但是在相同时间下有更大的吞吐量;连续模式适合毫秒级的数据处理延迟,当前暂时还属于实验特性。

在当前版本中,若需要使用流流Join功能,则output模式只能选择append模式。

图6 微批模式运行过程简图
图7 连续模式运行过程简图
support.huaweicloud.com/devg-lts-mrs/mrs_07_410002.html