airflow.providers.google.cloud.operators.spanner

此模組包含 Google Spanner 運算子。

模組內容

類別

SpannerDeployInstanceOperator

建立或更新 Cloud Spanner 執行個體。

SpannerDeleteInstanceOperator

刪除 Cloud Spanner 執行個體;如果執行個體不存在,則不採取任何動作,且任務成功。

SpannerQueryDatabaseInstanceOperator

執行任意 DML 查詢 (INSERT、UPDATE、DELETE)。

SpannerDeployDatabaseInstanceOperator

建立新的 Cloud Spanner 資料庫;如果資料庫已存在,則運算子不會執行任何動作。

SpannerUpdateDatabaseInstanceOperator

使用指定的 DDL 陳述式更新 Cloud Spanner 資料庫。

SpannerDeleteDatabaseInstanceOperator

刪除 Cloud Spanner 資料庫。

class airflow.providers.google.cloud.operators.spanner.SpannerDeployInstanceOperator(*, instance_id, configuration_name, node_count, display_name, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基礎: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

建立或更新 Cloud Spanner 執行個體。

另請參閱

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

參數
  • instance_id (str) – Cloud Spanner 執行個體 ID。

  • configuration_name (str) – Cloud Spanner 執行個體組態的名稱,定義如何建立執行個體。對於尚未存在的執行個體為必要參數。

  • node_count (int) – (選用) 分配給 Cloud Spanner 執行個體的節點數量。

  • display_name (str) – (選用) Google Cloud Console 中 Cloud Spanner 執行個體的顯示名稱。(必須介於 4 到 30 個字元之間。)如果未在建構函式中設定此值,則名稱與執行個體 ID 相同。

  • project_id (str) – 選用,擁有 Cloud Spanner 資料庫的專案 ID。如果設定為 None 或遺失,則會使用來自 Google Cloud 連線的預設 project_id。

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

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

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance_id', 'configuration_name', 'display_name', 'gcp_conn_id', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 jinja 範本時使用的字典相同的字典。

請參閱 get_template_context 以取得更多上下文資訊。

class airflow.providers.google.cloud.operators.spanner.SpannerDeleteInstanceOperator(*, instance_id, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基礎: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

刪除 Cloud Spanner 執行個體;如果執行個體不存在,則不採取任何動作,且任務成功。

另請參閱

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

參數
  • instance_id (str) – Cloud Spanner 執行個體 ID。

  • project_id (str) – 選用,擁有 Cloud Spanner 資料庫的專案 ID。如果設定為 None 或遺失,則會使用來自 Google Cloud 連線的預設 project_id。

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

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

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance_id', 'gcp_conn_id', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 jinja 範本時使用的字典相同的字典。

請參閱 get_template_context 以取得更多上下文資訊。

class airflow.providers.google.cloud.operators.spanner.SpannerQueryDatabaseInstanceOperator(*, instance_id, database_id, query, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基礎: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

執行任意 DML 查詢 (INSERT、UPDATE、DELETE)。

另請參閱

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

參數
  • instance_id (str) – Cloud Spanner 執行個體 ID。

  • database_id (str) – Cloud Spanner 資料庫 ID。

  • query (str | list[str]) – 要執行的查詢或查詢清單。可以是 SQL 檔案的路徑。

  • project_id (str) – 選用,擁有 Cloud Spanner 資料庫的專案 ID。如果設定為 None 或遺失,則會使用來自 Google Cloud 連線的預設 project_id。

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

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

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance_id', 'database_id', 'query', 'gcp_conn_id', 'impersonation_chain')[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 jinja 範本時使用的字典相同的字典。

請參閱 get_template_context 以取得更多上下文資訊。

static sanitize_queries(queries)[source]

捨棄查詢中的空白查詢。

參數

queries (list[str]) – 查詢

class airflow.providers.google.cloud.operators.spanner.SpannerDeployDatabaseInstanceOperator(*, instance_id, database_id, ddl_statements, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基礎: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

建立新的 Cloud Spanner 資料庫;如果資料庫已存在,則運算子不會執行任何動作。

另請參閱

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

參數
  • instance_id (str) – Cloud Spanner 執行個體 ID。

  • database_id (str) – Cloud Spanner 資料庫 ID。

  • ddl_statements (list[str]) – 包含新資料庫 DDL 的字串清單。

  • project_id (str) – 選用,擁有 Cloud Spanner 資料庫的專案 ID。如果設定為 None 或遺失,則會使用來自 Google Cloud 連線的預設 project_id。

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

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

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance_id', 'database_id', 'ddl_statements', 'gcp_conn_id', 'impersonation_chain')[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 jinja 範本時使用的字典相同的字典。

請參閱 get_template_context 以取得更多上下文資訊。

class airflow.providers.google.cloud.operators.spanner.SpannerUpdateDatabaseInstanceOperator(*, instance_id, database_id, ddl_statements, project_id=PROVIDE_PROJECT_ID, operation_id=None, gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基礎: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

使用指定的 DDL 陳述式更新 Cloud Spanner 資料庫。

另請參閱

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

參數
  • instance_id (str) – Cloud Spanner 執行個體 ID。

  • database_id (str) – Cloud Spanner 資料庫 ID。

  • ddl_statements (list[str]) – 包含要套用至資料庫的 DDL 的字串清單。

  • project_id (str) – 選用,擁有 Cloud Spanner 資料庫的專案 ID。如果設定為 None 或遺失,則會使用來自 Google Cloud 連線的預設 project_id。

  • operation_id (str | None) – (選用) 每個資料庫操作的唯一 ID,可以指定以實作冪等性檢查。

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

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

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance_id', 'database_id', 'ddl_statements', 'gcp_conn_id', 'impersonation_chain')[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 jinja 範本時使用的字典相同的字典。

請參閱 get_template_context 以取得更多上下文資訊。

class airflow.providers.google.cloud.operators.spanner.SpannerDeleteDatabaseInstanceOperator(*, instance_id, database_id, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]

基礎: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

刪除 Cloud Spanner 資料庫。

另請參閱

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

參數
  • instance_id (str) – Cloud Spanner 執行個體 ID。

  • database_id (str) – Cloud Spanner 資料庫 ID。

  • project_id (str) – 選用,擁有 Cloud Spanner 資料庫的專案 ID。如果設定為 None 或遺失,則會使用來自 Google Cloud 連線的預設 project_id。

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

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

template_fields: collections.abc.Sequence[str] = ('project_id', 'instance_id', 'database_id', 'gcp_conn_id', 'impersonation_chain')[source]
execute(context)[source]

在建立運算子時衍生。

Context 是與呈現 jinja 範本時使用的字典相同的字典。

請參閱 get_template_context 以取得更多上下文資訊。

此條目是否有幫助?