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)[源代码]

基类: 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')[源代码]
execute(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)[源代码]

基类: 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')[源代码]
execute(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)[源代码]

基类: 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')[源代码]
template_ext: collections.abc.Sequence[str] = ('.sql',)[源代码]
template_fields_renderers[源代码]
execute(context)[源代码]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

static sanitize_queries(queries)[源代码]

删除查询中的空查询。

参数

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)[源代码]

基类: 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')[源代码]
template_ext: collections.abc.Sequence[str] = ('.sql',)[源代码]
template_fields_renderers[源代码]
execute(context)[源代码]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

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]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

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]

在创建操作符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

此条目是否有帮助?