AWS Glue 觸發條件 - AWS 連接詞

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Glue 觸發條件

當「引發」時,觸發可以啟動指定的任務和爬蟲程式。觸發可以視需要、根據排程,或是根據事件組合來引發。

注意

單一觸發只能啟動兩個爬蟲程式。如果您要編目多個資料存放區,請為每個爬蟲程式使用多個來源,而不要同時執行多個爬蟲程式。

觸發可以處於數種狀態中的其中一種。觸發可以是 CREATEDACTIVATEDDEACTIVATED。其中也有轉換狀態,例如 ACTIVATING。如要停止引發觸發,您可以停用觸發。您稍後可以重新啟用。

觸發有三種類型:

Scheduled (已排程)

cron 為基礎的時間類型觸發。

您可以根據排程建立一組任務或是爬蟲程式的觸發。您可以指定限制條件,例如任務或爬蟲程式的執行頻率、在一週中的哪一天執行,以及執行的時間。這些限制條件是以 cron 為基礎。當您正在設定觸發的排程時,請考慮 cron 的功能和限制。例如,如果您選擇在每個月的 31 日執行您的爬蟲程式,請注意有些月份不到 31 天。如需 Cron 的詳細資訊,請參閱 任務和爬蟲程式以時間為基礎的排程

有條件

在上一個任務或爬蟲程式,或是多個任務或多個爬蟲程式滿足條件清單後引發的觸發。

當您建立條件式觸發時,您可以指定要監看的任務清單和爬蟲程式清單。針對每個監看的任務或爬蟲程式,您可以指定要監看的狀態,例如成功、失敗、逾時等。觸發會在監看的任務或爬蟲程式以指定狀態結束時引發。您可以設定觸發,使其在發生任何監看事件,或是所有監看事件都發生時引發。

例如,您可以設定觸發 T1 在任務 J1 和任務 J2 成功完成時啟動任務 J3,以及另外一個觸發 T2 在任務 J1 或任務 J2 失敗時啟動任務 J4。

下表列出觸發監看的任務和爬蟲程式完成狀態 (事件)。

任務完成狀態 爬蟲程式完成狀態
  • SUCCEEDED

  • STOPPED

  • FAILED

  • TIMEOUT

  • SUCCEEDED

  • FAILED

  • CANCELLED

隨需

在您啟用時引發的觸發。隨需觸發永遠不會進入 ACTIVATEDDEACTIVATED 狀態。這些觸發一律會停留在 CREATED 狀態。

如此一來,這些觸發便會在存在時準備就緒以供引發;您可以在建立這些觸發時設定標記來啟用排程和條件式觸發。

重要

因其他任務或爬蟲程式完成而執行的任務或爬蟲程式稱為「相依」。相依任務或爬蟲程式只有在完成的任務或爬蟲程式是由觸發啟動時,才會啟動。相依鏈中所有的任務或爬蟲程式都必須是單一 scheduled (排程)on-demand (隨需) 觸發的子代。

使用觸發傳遞任務參數

觸發可以將參數傳遞至啟動的任務。參數包括任務引數、逾時值、安全組態等。如果觸發啟動多個任務,參數會傳遞至每個任務。

以下是由觸發所傳遞任務引數的規則:

  • 如果鍵/值對中的鍵與預設任務引數相符,則傳遞的引數會覆寫預設引數。如果鍵與預設引數不符,則引數會做為額外引數傳遞給任務。

  • 如果鍵/值對中的鍵與不可覆寫的引數相符,則會忽略傳遞的引數。

如需詳細資訊,請參閱 AWS Glue API 中的 觸發