airflow.providers.google.cloud.operators.cloud_sql

此模組包含 Google Cloud SQL operators。

屬性

SETTINGS

SETTINGS_VERSION

CLOUD_SQL_CREATE_VALIDATION

CLOUD_SQL_EXPORT_VALIDATION

CLOUD_SQL_IMPORT_VALIDATION

CLOUD_SQL_DATABASE_CREATE_VALIDATION

CLOUD_SQL_DATABASE_PATCH_VALIDATION

CloudSQLBaseOperator

Google Cloud SQL operators 的抽象基類 operator。

CloudSQLCreateInstanceOperator

建立一個新的 Cloud SQL 例項。

CloudSQLInstancePatchOperator

更新 Cloud SQL 例項的設定。

CloudSQLDeleteInstanceOperator

刪除一個 Cloud SQL 例項。

CloudSQLCloneInstanceOperator

將一個例項克隆到目標例項。

CloudSQLCreateInstanceDatabaseOperator

在 Cloud SQL 例項中建立一個新資料庫。

CloudSQLPatchInstanceDatabaseOperator

使用 patch 語義更新包含資料庫資訊的資源。

CloudSQLDeleteInstanceDatabaseOperator

從 Cloud SQL 例項中刪除一個數據庫。

CloudSQLExportInstanceOperator

將資料從 Cloud SQL 例項匯出到 Cloud Storage 儲存桶。

CloudSQLImportInstanceOperator

將資料從 Cloud Storage 匯入到 Cloud SQL 例項。

CloudSQLExecuteQueryOperator

在現有 Cloud Sql 例項上執行 DML 或 DDL 查詢。

模組內容

airflow.providers.google.cloud.operators.cloud_sql.SETTINGS = 'settings'[源]
airflow.providers.google.cloud.operators.cloud_sql.SETTINGS_VERSION = 'settingsVersion'[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_CREATE_VALIDATION: collections.abc.Sequence[dict][源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_EXPORT_VALIDATION[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_IMPORT_VALIDATION[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_DATABASE_CREATE_VALIDATION[源]
airflow.providers.google.cloud.operators.cloud_sql.CLOUD_SQL_DATABASE_PATCH_VALIDATION[源]
class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLBaseOperator(*, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

Google Cloud SQL operators 的抽象基類 operator。

引數:
  • instance (str) – Cloud SQL 例項 ID。不包含專案 ID。

  • project_id (str) – 可選的,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

project_id = None[源]
instance[源]
gcp_conn_id = 'google_cloud_default'[源]
api_version = 'v1beta4'[源]
impersonation_chain = None[源]
execute(context)[源]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLCreateInstanceOperator(*, body, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

建立一個新的 Cloud SQL 例項。

如果存在同名例項,則不會採取任何行動,operator 將會成功。

另請參閱

有關如何使用此 operator 的更多資訊,請參閱指南: CloudSQLCreateInstanceOperator

引數:
  • body (dict) – Cloud SQL insert API 所需的 body,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/insert #request-body 中所述

  • instance (str) – Cloud SQL 例項 ID。不包含專案 ID。

  • project_id (str) – 可選的,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 如果應驗證 body 則為 True,否則為 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[源]
ui_color = '#FADBDA'[源]
body[源]
validate_body = True[源]
execute(context)[源]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLInstancePatchOperator(*, body, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

更新 Cloud SQL 例項的設定。

注意:這是一個部分更新,因此只會更新 settings 中包含的值。

在請求 body 中,根據 patch 語義規則提供例項資源的相應部分。 https://cloud.google.com/sql/docs/mysql/admin-api/how-tos/performance#patch

另請參閱

有關如何使用此 operator 的更多資訊,請參閱指南: CloudSQLInstancePatchOperator

引數:
  • body (dict) – Cloud SQL patch API 所需的 body,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/patch#request-body 中所述

  • instance (str) – Cloud SQL 例項 ID。不包含專案 ID。

  • project_id (str) – 可選的,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[源]
ui_color = '#FBDAC8'[源]
body[源]
execute(context)[源]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLDeleteInstanceOperator(*, instance, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

刪除一個 Cloud SQL 例項。

另請參閱

有關如何使用此 operator 的更多資訊,請參閱指南: CloudSQLDeleteInstanceOperator

引數:
  • instance (str) – Cloud SQL 例項 ID。不包含專案 ID。

  • project_id (str) – 可選的,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'gcp_conn_id', 'api_version', 'impersonation_chain')[源]
ui_color = '#FEECD2'[源]
execute(context)[源]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLCloneInstanceOperator(*, instance, destination_instance_name, clone_context=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

將一個例項克隆到目標例項。

另請參閱

有關如何使用此 operator 的更多資訊,請參閱指南: CloudSQLCloneInstanceOperator

引數:
  • instance (str) – 要克隆的資料庫例項 ID。不包含專案 ID。

  • destination_instance_name (str) – 要建立的資料庫例項 ID。不包含專案 ID。

  • clone_context (dict | None) – 其他 clone_context 引數,如 https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/instances/clone 中所述

  • project_id (str) – 包含例項的專案的專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'destination_instance_name', 'gcp_conn_id', 'api_version')[源]
destination_instance_name[源]
clone_context[源]
execute(context)[源]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLCreateInstanceDatabaseOperator(*, instance, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[源]

Bases: CloudSQLBaseOperator

在 Cloud SQL 例項中建立一個新資料庫。

另請參閱

有關如何使用此 operator 的更多資訊,請參閱指南: CloudSQLCreateInstanceDatabaseOperator

引數:
  • instance (str) – 資料庫例項 ID。不包含專案 ID。

  • body (dict) – 請求 body,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/databases/insert#request-body 中所述

  • project_id (str) – 可選的,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 是否應驗證 body。預設為 True。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#FFFCDB'[source]
body[source]
validate_body = True[source]
execute(context)[source]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLPatchInstanceDatabaseOperator(*, instance, database, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[source]

Bases: CloudSQLBaseOperator

使用 patch 語義更新包含資料庫資訊的資源。

參見: https://cloud.google.com/sql/docs/mysql/admin-api/how-tos/performance#patch

另請參閱

有關如何使用此運算子的更多資訊,請參閱指南: CloudSQLPatchInstanceDatabaseOperator

引數:
  • instance (str) – 資料庫例項 ID。不包含專案 ID。

  • database (str) – 要在例項中更新的資料庫名稱。

  • body (dict) – 請求正文,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/databases/patch#request-body 中所述

  • project_id (str) – 可選,Google Cloud 專案 ID。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 是否應驗證 body。預設為 True。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'database', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#ECF4D9'[source]
database[source]
body[source]
validate_body = True[source]
execute(context)[source]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLDeleteInstanceDatabaseOperator(*, instance, database, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', impersonation_chain=None, **kwargs)[source]

Bases: CloudSQLBaseOperator

從 Cloud SQL 例項中刪除一個數據庫。

另請參閱

有關如何使用此運算子的更多資訊,請參閱指南: CloudSQLDeleteInstanceDatabaseOperator

引數:
  • instance (str) – 資料庫例項 ID。不包含專案 ID。

  • database (str) – 要在例項中刪除的資料庫名稱。

  • project_id (str) – 可選的,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'database', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#D5EAD8'[source]
database[source]
execute(context)[source]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLExportInstanceOperator(*, instance, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), poke_interval=10, **kwargs)[source]

Bases: CloudSQLBaseOperator

將資料從 Cloud SQL 例項匯出到 Cloud Storage 儲存桶。

匯出的格式可以是 SQL dump 檔案或 CSV 檔案。

注意:此運算子是冪等的。如果使用相同的匯出檔案 URI 多次執行,GCS 中的匯出檔案將被簡單地覆蓋。

另請參閱

有關如何使用此運算子的更多資訊,請參閱指南: CloudSQLExportInstanceOperator

引數:
  • instance (str) – Cloud SQL 例項 ID。不包含專案 ID。

  • body (dict) – 請求正文,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/export#request-body 中所述

  • project_id (str) – 可選的,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設 project_id。

  • gcp_conn_id (str) – 用於連線 Google Cloud 的連線 ID。

  • api_version (str) – 使用的 API 版本(例如 v1beta4)。

  • validate_body (bool) – 是否應驗證 body。預設為 True。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈式列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須向發起賬號授予 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向緊接在其前的身份授予 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

  • deferrable (bool) – 在可推遲模式下執行運算子。

  • poke_interval (int) – (僅限可推遲模式)呼叫之間等待檢查執行狀態的時間(秒)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#D4ECEA'[source]
body[source]
validate_body = True[source]
deferrable = True[source]
poke_interval = 10[source]
execute(context)[source]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

execute_complete(context, event=None)[source]

當觸發器觸發時,作為回撥函式立即返回。

依賴觸發器丟擲異常,否則假定執行成功。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLImportInstanceOperator(*, instance, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1beta4', validate_body=True, impersonation_chain=None, **kwargs)[source]

Bases: CloudSQLBaseOperator

將資料從 Cloud Storage 匯入到 Cloud SQL 例項。

CSV 匯入

對於 CSV 匯入,此運算子不是冪等的。如果多次匯入同一個檔案,匯入的資料將在資料庫中重複。此外,如果存在任何唯一約束,重複匯入可能會導致錯誤。

SQL 匯入

如果匯入的 SQL 檔案也是由 Cloud SQL 匯出的,則此運算子對於 SQL 匯入是冪等的。匯出的 SQL 包含所有要匯入的表的“DROP TABLE IF EXISTS”語句。

如果匯入檔案以不同方式生成,則不保證冪等性。必須在 SQL 檔案級別確保冪等性。

另請參閱

有關如何使用此運算子的更多資訊,請參閱指南: CloudSQLImportInstanceOperator

引數 instance:

Cloud SQL 例項 ID。不包括專案 ID。

引數 body:

請求正文,如 https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/import#request-body 中所述

引數 project_id:

可選,Google Cloud 專案 ID。如果設定為 None 或缺失,則使用 Google Cloud 連線中的預設專案 ID。

引數 gcp_conn_id:

用於連線 Google Cloud 的連線 ID。

引數 api_version:

使用的 API 版本(例如 v1beta4)。

引數 validate_body:

是否應驗證正文。預設為 True。

引數 impersonation_chain:

可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號鏈列表,最後一個賬號將在請求中被模擬。如果設定為字串,該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予其直接前一個身份 Service Account Token Creator IAM 角色,列表中的第一個賬號將此角色授予發起賬號(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
ui_color = '#D3EDFB'[source]
body[source]
validate_body = True[source]
execute(context)[source]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.cloud_sql.CloudSQLExecuteQueryOperator(*, sql, autocommit=False, parameters=None, gcp_conn_id='google_cloud_default', gcp_cloudsql_conn_id='google_cloud_sql_default', sql_proxy_binary_path=None, ssl_server_cert=None, ssl_client_cert=None, ssl_client_key=None, ssl_secret_id=None, **kwargs)[source]

Bases: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

在現有 Cloud Sql 例項上執行 DML 或 DDL 查詢。

它可以選擇使用 cloud-sql-proxy 與資料庫建立安全連線。

另請參閱

有關如何使用此運算子的更多資訊,請參閱指南: CloudSQLExecuteQueryOperator

引數:
  • sql (str | collections.abc.Iterable[str]) – 要執行的 SQL 查詢或查詢列表(應為 DML 或 DDL 查詢 - 此運算子不從資料庫返回任何資料,因此傳遞 DQL 查詢沒有用處。請注意,查詢作者有責任確保查詢是冪等的。例如,您可以使用 CREATE TABLE IF NOT EXISTS 建立表)。

  • parameters (collections.abc.Iterable | collections.abc.Mapping[str, Any] | None) – (可選)用於渲染 SQL 查詢的引數。

  • autocommit (bool) – 如果為 True,每個命令都會自動提交。(預設值:False)

  • gcp_conn_id (str) – 用於連線 Google Cloud 進行 cloud-sql-proxy 身份驗證的連線 ID。

  • gcp_cloudsql_conn_id (str) – 用於連線 Google Cloud SQL 的連線 ID,其方案應為 gcpcloudsql://。有關如何定義 gcpcloudsql:// 連線的詳細資訊,請參閱 CloudSQLDatabaseHook

  • sql_proxy_binary_path (str | None) – (可選)指向 cloud-sql-proxy 二進位制檔案的路徑。如果未指定或二進位制檔案不存在,則會自動下載。

  • ssl_cert – (可選)使用 SSL 時用於身份驗證的客戶端證書路徑。覆蓋連線欄位 sslcert

  • ssl_key – (可選)使用 SSL 時用於身份驗證的客戶端私鑰路徑。覆蓋連線欄位 sslkey

  • ssl_root_cert – (可選)使用 SSL 時用於身份驗證的伺服器證書路徑。覆蓋連線欄位 sslrootcert

  • ssl_secret_id (str | None) –

    (可選)Google Cloud Secret Manager 中儲存 SSL 證書的金鑰 ID,格式如下

    {‘sslcert’: ‘’,

    ’sslkey’: ‘’, ‘sslrootcert’: ‘’}

    覆蓋連線欄位 sslcertsslkeysslrootcert。請注意,根據 Secret Manager 的要求,提到的字典應儲存為字串,並使用 base64 編碼。請注意,此引數與引數 ssl_certssl_keyssl_root_cert 不相容。

template_fields: collections.abc.Sequence[str] = ('sql', 'gcp_cloudsql_conn_id', 'gcp_conn_id', 'ssl_server_cert', 'ssl_client_cert',...[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
ui_color = '#D3DEF1'[source]
sql[source]
gcp_conn_id = 'google_cloud_default'[source]
gcp_cloudsql_conn_id = 'google_cloud_sql_default'[source]
autocommit = False[source]
parameters = None[source]
gcp_connection: airflow.models.Connection | None = None[source]
sql_proxy_binary_path = None[source]
ssl_server_cert = None[source]
ssl_client_cert : str | tuple[str, str] | None = None[source]
ssl_client_key = None[source]
ssl_secret_id = None[source]
cloud_sql_proxy_context(hook)[source]
execute(context)[source]

在建立 operator 時派生。

Context 與渲染 jinja 模板時使用的字典相同。

有關更多 context,請參閱 get_template_context。

property hook[source]
get_openlineage_facets_on_complete(_)[source]

本條目是否有幫助?