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) – (可選)Cloud Spanner 例項在 Google Cloud Console 中的顯示名稱。(必須介於 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 所需的賬號鏈,該賬號將在請求中被模擬。如果設定為字串,該賬號必須授予原始賬號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予緊前身份 Service Account Token Creator IAM 角色,列表中第一個賬號將此角色授予原始賬號(模板化)。

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

在建立運算子時派生。

上下文是與渲染 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 所需的賬號鏈,該賬號將在請求中被模擬。如果設定為字串,該賬號必須授予原始賬號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予緊前身份 Service Account Token Creator IAM 角色,列表中第一個賬號將此角色授予原始賬號(模板化)。

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

在建立運算子時派生。

上下文是與渲染 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 所需的賬號鏈,該賬號將在請求中被模擬。如果設定為字串,該賬號必須授予原始賬號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予緊前身份 Service Account Token Creator 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]
instance_id[source]
project_id = None[source]
database_id[source]
query[source]
gcp_conn_id = 'google_cloud_default'[source]
impersonation_chain = None[source]
execute(context)[source]

在建立運算子時派生。

上下文是與渲染 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 所需的賬號鏈,該賬號將在請求中被模擬。如果設定為字串,該賬號必須授予原始賬號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予緊前身份 Service Account Token Creator 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]
instance_id[source]
project_id = None[source]
database_id[source]
ddl_statements[source]
gcp_conn_id = 'google_cloud_default'[source]
impersonation_chain = None[source]
execute(context)[source]

在建立運算子時派生。

上下文是與渲染 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,可以指定該ID來實現冪等性檢查。

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

  • 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_id', 'database_id', 'ddl_statements', 'gcp_conn_id', 'impersonation_chain')[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
instance_id[source]
project_id = None[source]
database_id[source]
ddl_statements[source]
operation_id = None[source]
gcp_conn_id = 'google_cloud_default'[source]
impersonation_chain = None[source]
execute(context)[source]

在建立運算子時派生。

上下文是與渲染 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 資料庫。

另請參閱

有關如何使用此 operator 的更多資訊,請參閱指南: 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 所需的賬號鏈,該賬號將在請求中被模擬。如果設定為字串,該賬號必須授予原始賬號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予緊前身份 Service Account Token Creator IAM 角色,列表中第一個賬號將此角色授予原始賬號(模板化)。

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

在建立運算子時派生。

上下文是與渲染 Jinja 模板時使用的相同的字典。

有關更多上下文,請參閱 get_template_context。

此條目有幫助嗎?