配置结构化流触发间隔

Apache火花结构化流流程数据增量;批处理控制的触发间隔允许您使用结构化流负载包括实时处理,刷新数据库每5分钟或每小时一次,或批处理所有新一天或一周的数据。

因为砖自动加载程序采用结构化流加载数据,了解触发器的工作为您提供最大的灵活性,控制成本而摄入数据和所需的频率。

指定基于时间触发间隔

结构化流是指基于时间触发间隔为“固定间隔micro-batches”。使用processingTime关键字,指定一个时间一个字符串,如.trigger (processingTime = 10秒”)

当你指定一个触发间隔太小了(不到几十秒),系统可以进行不必要的检查,看看新数据到来。配置您的处理时间来平衡延迟需求和数据到达率。

配置增量的批处理

重要的

在砖运行时的11.3 LTS以上,Trigger.Once设置是弃用。砖推荐你使用Trigger.AvailableNow对于所有增量批处理工作负载。

现在可用的触发选择消耗所有可用的记录与配置能力增量批批量大小等选项maxBytesPerTrigger(大小选择不同的数据源)。

砖支持使用Trigger.AvailableNow从许多结构性流来源为增量的批处理。下表包含最低支持砖所需的运行时版本的每个数据源:

最低砖运行时版本

文件来源(JSON、拼花等)

9.1 LTS

三角洲湖

10.4 LTS

自动加载程序

10.4 LTS

Apache卡夫卡

10.4 LTS

运动

13.1

默认触发间隔是什么?

结构化流默认为固定间隔micro-batches 500 ms。砖建议你总是指定一个定制的触发成本最小化和检查新数据是否已经到达加工尺寸过小的批次。

连续的处理方式是什么?

Apache支持额外的火花引发间隔称为连续处理。这种模式已被列为火花以来实验2.3;咨询你的砖代表确保您理解这个处理模型的取舍。

注意,这个连续处理模式根本不相关的连续处理应用于三角洲生活表。