配置結構化流觸發間隔

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;谘詢你的磚代表確保您理解這個處理模型的取舍。

注意,這個連續處理模式根本不相關的連續處理應用於三角洲生活表。