airflow.providers.google.cloud.triggers.bigquery

模組內容

類別

BigQueryInsertJobTrigger

BigQueryInsertJobTrigger 在觸發器 worker 上執行以執行插入操作。

BigQueryCheckTrigger

BigQueryCheckTrigger 在觸發器 worker 上執行。

BigQueryGetDataTrigger

BigQueryGetDataTrigger 在觸發器 worker 上執行,繼承自 BigQueryInsertJobTrigger 類別。

BigQueryIntervalCheckTrigger

BigQueryIntervalCheckTrigger 在觸發器 worker 上執行,繼承自 BigQueryInsertJobTrigger 類別。

BigQueryValueCheckTrigger

BigQueryValueCheckTrigger 在觸發器 worker 上執行,繼承自 BigQueryInsertJobTrigger 類別。

BigQueryTableExistenceTrigger

使用需要的參數初始化 BigQuery Table Existence Trigger。

BigQueryTablePartitionExistenceTrigger

使用需要的參數初始化 BigQuery Table Partition Existence Trigger。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryInsertJobTrigger(conn_id, job_id, project_id, location, dataset_id=None, table_id=None, poll_interval=4.0, impersonation_chain=None, cancel_on_kill=True)[source]

基底類別: airflow.triggers.base.BaseTrigger

BigQueryInsertJobTrigger 在觸發器 worker 上執行以執行插入操作。

參數
  • conn_id (str) – 參考 google cloud 連線 ID

  • job_id (str | None) – 工作的 ID。它將會加上工作配置的雜湊值作為後綴

  • project_id (str) – 執行工作的 Google Cloud 專案

  • location (str | None) – 資料集位置。

  • dataset_id (str | None) – 請求表格的資料集 ID。(已套用範本)

  • table_id (str | None) – 請求表格的表格 ID。(已套用範本)

  • poll_interval (float) – 檢查狀態的輪詢週期,以秒為單位。(已套用範本)

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務帳戶,用於使用短期憑證模擬,或是取得列表中最後一個帳戶的 access_token 所需的鏈式帳戶列表,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則列表中的身分必須授予緊接在前身分「服務帳戶權杖建立者」IAM 角色,列表中的第一個帳戶將此角色授予原始帳戶。(已套用範本)

serialize()[source]

序列化 BigQueryInsertJobTrigger 參數和類別路徑。

get_task_instance(session)[source]
safe_to_cancel()[source]

判斷取消此觸發器正在執行的外部工作是否安全。

這是為了避免因觸發器本身停止而呼叫 asyncio.CancelledError 的情況。因為在這些情況下,我們不應該取消外部工作。

async run()[source]

取得目前工作執行狀態並產生 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryCheckTrigger(conn_id, job_id, project_id, location, dataset_id=None, table_id=None, poll_interval=4.0, impersonation_chain=None, cancel_on_kill=True)[source]

基底類別: BigQueryInsertJobTrigger

BigQueryCheckTrigger 在觸發器 worker 上執行。

serialize()[source]

序列化 BigQueryCheckTrigger 參數和類別路徑。

async run()[source]

取得目前工作執行狀態並產生 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryGetDataTrigger(as_dict=False, selected_fields=None, **kwargs)[source]

基底類別: BigQueryInsertJobTrigger

BigQueryGetDataTrigger 在觸發器 worker 上執行,繼承自 BigQueryInsertJobTrigger 類別。

參數

as_dict (bool) – 如果為 True,則以字典列表形式傳回結果,否則以列表的列表形式傳回 (預設值:False)。

serialize()[source]

序列化 BigQueryInsertJobTrigger 參數和類別路徑。

async run()[source]

取得目前工作執行狀態並產生包含回應資料的 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryIntervalCheckTrigger(conn_id, first_job_id, second_job_id, project_id, table, metrics_thresholds, location=None, date_filter_column='ds', days_back=-7, ratio_formula='max_over_min', ignore_zero=True, dataset_id=None, table_id=None, poll_interval=4.0, impersonation_chain=None)[source]

基底類別: BigQueryInsertJobTrigger

BigQueryIntervalCheckTrigger 在觸發器 worker 上執行,繼承自 BigQueryInsertJobTrigger 類別。

參數
  • conn_id (str) – 參考 google cloud 連線 ID

  • first_job_id (str) – 執行的工作 1 的 ID

  • second_job_id (str) – 執行的工作 2 的 ID

  • project_id (str) – 執行工作的 Google Cloud 專案

  • dataset_id (str | None) – 請求表格的資料集 ID。(已套用範本)

  • table (str) – 表格名稱

  • metrics_thresholds (dict[str, int]) – 由指標索引的比率字典

  • location (str | None) – 資料集位置。

  • date_filter_column (str | None) – 欄位名稱。(已套用範本)

  • days_back (SupportsAbs[int]) – ds 與我們要檢查的 ds 之間的天數。(已套用範本)

  • ratio_formula (str) – 比率公式。(已套用範本)

  • ignore_zero (bool) – 是否考慮零值的布林值。(已套用範本)

  • table_id (str | None) – 請求表格的表格 ID。(已套用範本)

  • poll_interval (float) – 檢查狀態的輪詢週期,以秒為單位。(已套用範本)

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務帳戶,用於使用短期憑證模擬,或是取得列表中最後一個帳戶的 access_token 所需的鏈式帳戶列表,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則列表中的身分必須授予緊接在前身分「服務帳戶權杖建立者」IAM 角色,列表中的第一個帳戶將此角色授予原始帳戶。(已套用範本)

serialize()[source]

序列化 BigQueryCheckTrigger 參數和類別路徑。

async run()[source]

取得目前工作執行狀態並產生 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryValueCheckTrigger(conn_id, sql, pass_value, job_id, project_id, tolerance=None, dataset_id=None, table_id=None, location=None, poll_interval=4.0, impersonation_chain=None)[source]

基底類別: BigQueryInsertJobTrigger

BigQueryValueCheckTrigger 在觸發器 worker 上執行,繼承自 BigQueryInsertJobTrigger 類別。

參數
  • conn_id (str) – 參考 google cloud 連線 ID

  • sql (str) – 要執行的 sql

  • pass_value (int | float | str) – 通過值

  • job_id (str | None) – 工作的 ID

  • project_id (str) – 執行工作的 Google Cloud 專案

  • tolerance (Any) – 容忍度的某些指標。(已套用範本)

  • dataset_id (str | None) – 請求表格的資料集 ID。(已套用範本)

  • table_id (str | None) – 請求表格的表格 ID。(已套用範本)

  • location (str | None) – 資料集位置

  • poll_interval (float) – 檢查狀態的輪詢週期,以秒為單位。(已套用範本)

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務帳戶,用於使用短期憑證模擬,或是取得列表中最後一個帳戶的 access_token 所需的鏈式帳戶列表,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則列表中的身分必須授予緊接在前身分「服務帳戶權杖建立者」IAM 角色,列表中的第一個帳戶將此角色授予原始帳戶 (已套用範本)。

serialize()[source]

序列化 BigQueryValueCheckTrigger 參數和類別路徑。

async run()[source]

取得目前工作執行狀態並產生 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryTableExistenceTrigger(project_id, dataset_id, table_id, gcp_conn_id, hook_params, poll_interval=4.0, impersonation_chain=None)[source]

基底類別: airflow.triggers.base.BaseTrigger

使用需要的參數初始化 BigQuery Table Existence Trigger。

參數
  • project_id (str) – 執行工作的 Google Cloud 專案

  • dataset_id (str) – 請求表格的資料集 ID。

  • table_id (str) – 請求表格的表格 ID。

  • gcp_conn_id (str) – 參考 google cloud 連線 ID

  • hook_params (dict[str, Any]) – hook 的參數

  • poll_interval (float) – 檢查狀態的輪詢週期,以秒為單位

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務帳戶,用於使用短期憑證模擬,或是取得列表中最後一個帳戶的 access_token 所需的鏈式帳戶列表,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則列表中的身分必須授予緊接在前身分「服務帳戶權杖建立者」IAM 角色,列表中的第一個帳戶將此角色授予原始帳戶。(已套用範本)

serialize()[source]

序列化 BigQueryTableExistenceTrigger 參數和類別路徑。

async run()[source]

將持續執行直到表格存在於 Google Big Query 中。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryTablePartitionExistenceTrigger(partition_id, **kwargs)[source]

基底類別: BigQueryTableExistenceTrigger

使用需要的參數初始化 BigQuery Table Partition Existence Trigger。

參數
  • partition_id (str) – 要檢查其存在性的分割區名稱。

  • project_id – 執行工作的 Google Cloud 專案

  • dataset_id – 請求表格的資料集 ID。

  • table_id – 請求表格的表格 ID。

  • gcp_conn_id – 參考 google cloud 連線 ID

  • hook_params – hook 的參數

  • poll_interval – 檢查狀態的輪詢週期,以秒為單位

  • impersonation_chain – 可選的服務帳戶,用於使用短期憑證模擬,或是取得列表中最後一個帳戶的 access_token 所需的鏈式帳戶列表,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則列表中的身分必須授予緊接在前身分「服務帳戶權杖建立者」IAM 角色,列表中的第一個帳戶將此角色授予原始帳戶。(已套用範本)

serialize()[source]

序列化 BigQueryTablePartitionExistenceTrigger 參數和類別路徑。

async run()[source]

將持續執行直到表格存在於 Google Big Query 中。

這個條目有幫助嗎?