airflow.providers.apache.hive.transfers.mssql_to_hive

此模块包含一个用于将数据从 MSSQL 移动到 Hive 的 operator。

MsSqlToHiveOperator

将数据从 Microsoft SQL Server 移动到 Hive。

模块内容

class airflow.providers.apache.hive.transfers.mssql_to_hive.MsSqlToHiveOperator(*, sql, hive_table, create=True, recreate=False, partition=None, delimiter=chr(1), mssql_conn_id='mssql_default', hive_cli_conn_id='hive_cli_default', hive_auth=None, tblproperties=None, **kwargs)[source]

基类: airflow.models.BaseOperator

将数据从 Microsoft SQL Server 移动到 Hive。

该 operator 对 Microsoft SQL Server 运行你的查询,在将文件加载到 Hive 表之前将其存储在本地。如果 createrecreate 参数设置为 True,将生成 CREATE TABLEDROP TABLE 语句。

Hive 数据类型根据游标的元数据推断得出。请注意,在 Hive 中生成的表使用 STORED AS textfile,这不是最高效的序列化格式。如果加载了大量数据和/或表被频繁查询,你可能只希望使用此 operator 将数据暂存到临时表中,然后再使用 HiveOperator 将其加载到最终目的地。

参数:
  • sql (str) – 对 Microsoft SQL Server 数据库执行的 SQL 查询。(可模板化)

  • hive_table (str) – 目标 Hive 表,使用点记法指定特定数据库。(可模板化)

  • create (bool) – 如果表不存在是否创建

  • recreate (bool) – 每次执行时是否删除并重新创建表

  • partition (dict | None) – 目标分区,以字典形式表示分区列和值。(可模板化)

  • delimiter (str) – 文件中的字段分隔符

  • mssql_conn_id (str) – 源 Microsoft SQL Server 连接

  • hive_cli_conn_id (str) – 参考 Hive CLI 连接 ID

  • hive_auth (str | None) – 为 Hive 连接传递的可选认证选项

  • tblproperties (dict | None) – 正在创建的 hive 表的 TBLPROPERTIES

template_fields: collections.abc.Sequence[str] = ('sql', 'partition', 'hive_table')[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
ui_color = '#a0e08c'[source]
sql[source]
hive_table[source]
partition = None[source]
create = True[source]
recreate = False[source]
delimiter[source]
mssql_conn_id = 'mssql_default'[source]
hive_cli_conn_id = 'hive_cli_default'[source]
tblproperties = None[source]
hive_auth = None[source]
classmethod type_map(mssql_type)[source]

将 MsSQL 类型映射到 Hive 类型。

execute(context)[source]

创建 operator 时推导。

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

有关更多 context,请参阅 get_template_context。

此条目有帮助吗?