Airflow Summit 2025 即將於 10 月 07-09 日舉行。立即註冊以獲取早鳥票!

airflow.timetables.interval

屬性

Delta

CronDataIntervalTimetable

使用 cron 表示式排程資料間隔的時間表。

DeltaDataIntervalTimetable

使用時間差(time delta)排程資料間隔的時間表。

模組內容

airflow.timetables.interval.Delta[source]
class airflow.timetables.interval.CronDataIntervalTimetable(cron, timezone)[source]

基類:airflow.timetables._cron.CronMixin, _DataIntervalTimetable

使用 cron 表示式排程資料間隔的時間表。

這對應於 schedule=<cron>,其中 <cron> 是一個五段式或六段式表示,或是 cron_presets 中的一個。

此實現擴充套件了 croniter 以增加時區感知能力。這是因為 croniter 僅適用於樸素時間戳,無法在確定下一或上一時間時考慮夏令時(DST)。

不要在此處傳遞 @once;請改用 OnceTimetable

classmethod deserialize(data)[source]

從資料反序列化時間表。

在反序列化序列化後的 DAG 時呼叫此方法。data 將是 DAG 序列化期間由 serialize 返回的任何內容。預設實現構造時間表時不帶任何引數。

serialize()[source]

為 JSON 編碼序列化時間表。

在 DAG 序列化期間呼叫此方法,將時間表資訊儲存在資料庫中。此方法應返回一個 JSON 可序列化的字典,該字典將在反序列化 DAG 時饋送到 deserialize 中。預設實現返回一個空字典。

infer_manual_data_interval(*, run_after)[source]

當手動觸發 DAG 執行時,為此推斷資料間隔。

這用於例如手動觸發的執行,其中 run_after 是使用者觸發執行的時間。預設實現會引發 NotImplementedError

class airflow.timetables.interval.DeltaDataIntervalTimetable(delta)[source]

基類:airflow.timetables._delta.DeltaMixin, _DataIntervalTimetable

使用時間差(time delta)排程資料間隔的時間表。

這對應於 schedule=<delta>,其中 <delta>datetime.timedeltadateutil.relativedelta.relativedelta 例項。

classmethod deserialize(data)[source]

從資料反序列化時間表。

在反序列化序列化後的 DAG 時呼叫此方法。data 將是 DAG 序列化期間由 serialize 返回的任何內容。預設實現構造時間表時不帶任何引數。

__eq__(other)[source]

如果偏移量匹配,則返回 True。

這僅用於測試目的,在其他情況下不應依賴。

serialize()[source]

為 JSON 編碼序列化時間表。

在 DAG 序列化期間呼叫此方法,將時間表資訊儲存在資料庫中。此方法應返回一個 JSON 可序列化的字典,該字典將在反序列化 DAG 時饋送到 deserialize 中。預設實現返回一個空字典。

infer_manual_data_interval(run_after)[source]

當手動觸發 DAG 執行時,為此推斷資料間隔。

這用於例如手動觸發的執行,其中 run_after 是使用者觸發執行的時間。預設實現會引發 NotImplementedError

此條目是否有幫助?