airflow.providers.snowflake.transfers.copy_into_snowflake

子类实现 Snowflake 中的 COPY INTO <TABLE> SQL 的抽象操作符。

CopyFromExternalStageToSnowflakeOperator

执行 COPY INTO 命令,用于将文件从云端外部暂存区加载到 Snowflake。

模块内容

class airflow.providers.snowflake.transfers.copy_into_snowflake.CopyFromExternalStageToSnowflakeOperator(*, files=None, table, stage, prefix=None, file_format, schema=None, columns_array=None, pattern=None, warehouse=None, database=None, autocommit=True, snowflake_conn_id='snowflake_default', role=None, authenticator=None, session_parameters=None, copy_options=None, validation_mode=None, **kwargs)[source]

基类: airflow.models.BaseOperator

执行 COPY INTO 命令,用于将文件从云端外部暂存区加载到 Snowflake。

此操作符需要 snowflake_conn_id 连接。必须在连接中设置 Snowflake 的主机、登录名和密码字段。其他输入可以在连接或 Hook 实例化时定义。

参数:
  • namespace – Snowflake 命名空间

  • table (str) – Snowflake 表

  • file_format (str) – 文件格式名称,例如 CSV, AVRO 等

  • stage (str) – 指向特定 Snowflake 暂存区的引用。如果暂存区的模式与表的模式不同,则必须指定。

  • prefix (str | None) – 指定的云存储位置,用于限制加载的文件集合

  • files (list | None) – 要加载到表中的文件

  • pattern (str | None) – 用于将文件从外部位置加载到表的模式

  • snowflake_conn_id (str) – 指向 Snowflake 连接 ID 的引用

  • account – Snowflake 账户名

  • warehouse (str | None) – Snowflake 仓库名称

  • database (str | None) – Snowflake 数据库名称

  • region – Snowflake 区域名称

  • role (str | None) – Snowflake 角色名称

  • schema (str | None) – Snowflake 模式名称

  • authenticator (str | None) – Snowflake 认证器。'snowflake'(默认)表示使用 Snowflake 内部认证器;'externalbrowser' 表示使用您的网络浏览器通过 Okta、ADFS 或任何其他符合 SAML 2.0 的身份提供者 (IdP) 进行认证;https://<your_okta_account_name>.okta.com 表示通过原生的 Okta 进行认证。

  • session_parameters (dict | None) – 您可以在连接到 Snowflake 时设置会话级别参数

  • copy_options (str | None) – Snowflake COPY INTO 语法复制选项

  • validation_mode (str | None) – Snowflake COPY INTO 语法验证模式

template_fields: collections.abc.Sequence[str] = ('files',)[source]
template_fields_renderers[source]
files = None[source]
table[source]
stage[source]
prefix = None[source]
file_format[source]
schema = None[source]
columns_array = None[source]
pattern = None[source]
warehouse = None[source]
database = None[source]
autocommit = True[source]
snowflake_conn_id = 'snowflake_default'[source]
role = None[source]
authenticator = None[source]
session_parameters = None[source]
copy_options = None[source]
validation_mode = None[source]
hook: airflow.providers.snowflake.hooks.snowflake.SnowflakeHook | None = None[source]
execute(context)[source]

创建操作符时派生。

Context 是与渲染 Jinja 模板时使用的相同的字典。

请参考 get_template_context 获取更多上下文信息。

get_openlineage_facets_on_complete(task_instance)[source]

实现 _on_complete,因为我们依赖于查询的返回值。

此条目是否有用?