airflow.providers.apache.hive.transfers.s3_to_hive
¶
此模块包含一个将数据从 S3 存储桶移动到 Hive 的操作符。
模块内容¶
类¶
将数据从 S3 移动到 Hive。 |
函数¶
|
解压 gz 和 bz2 文件。 |
- class airflow.providers.apache.hive.transfers.s3_to_hive.S3ToHiveOperator(*, s3_key, field_dict, hive_table, delimiter=',', create=True, recreate=False, partition=None, headers=False, check_headers=False, wildcard_match=False, aws_conn_id='aws_default', verify=None, hive_cli_conn_id='hive_cli_default', input_compressed=False, tblproperties=None, select_expression=None, hive_auth=None, **kwargs)[来源]¶
基类:
airflow.models.BaseOperator
将数据从 S3 移动到 Hive。
该操作符从 S3 下载文件,将文件存储在本地,然后再加载到 Hive 表中。
如果
create
或recreate
参数设置为True
,则会生成CREATE TABLE
和DROP TABLE
语句。Hive 数据类型是从游标的元数据中推断出来的。请注意,在 Hive 中生成的表使用
STORED AS textfile
,这不是最有效的序列化格式。如果加载大量数据和/或如果表被频繁查询,您可能只想使用此操作符将数据暂存到一个临时表中,然后再使用HiveOperator
将其加载到最终目的地。- 参数
s3_key (str) – 要从 S3 中检索的键。(模板化)
field_dict (dict) – 文件中字段名称作为键,其 Hive 类型作为值的字典
hive_table (str) – 目标 Hive 表,使用点表示法来定位特定数据库。(模板化)
delimiter (str) – 文件中的字段分隔符
create (bool) – 如果表不存在是否创建表
recreate (bool) – 是否在每次执行时删除并重新创建表
partition (dict | None) – 目标分区,以分区列和值作为字典。(模板化)
headers (bool) – 文件第一行是否包含列名
check_headers (bool) – 是否应该将第一行的列名与 field_dict 的键进行检查
wildcard_match (bool) – s3_key 是否应该被解释为 Unix 通配符模式
aws_conn_id (str | None) – 源 s3 连接
是否验证 S3 连接的 SSL 证书。默认情况下,SSL 证书会被验证。您可以提供以下值
False
:不验证 SSL 证书。SSL 仍然会被使用(除非 use_ssl 为 False),但是 SSL 证书将不被验证。
path/to/cert/bundle.pem
:要使用的 CA 证书捆绑文件的文件名。如果您想使用与 botocore 使用的不同的 CA 证书捆绑包,则可以指定此参数。
hive_cli_conn_id (str) – 引用 Hive CLI 连接 ID。
input_compressed (bool) – 一个布尔值,用于确定是否需要解压文件来处理标头
tblproperties (dict | None) – 创建的 Hive 表的 TBLPROPERTIES
select_expression (str | None) – S3 Select 表达式
- template_fields: collections.abc.Sequence[str] = ('s3_key', 'partition', 'hive_table')[来源]¶
- template_ext: collections.abc.Sequence[str] = ()[来源]¶