Apache Trino 连接

Apache Trino 连接类型允许连接到 Trino,Trino 是一个分布式 SQL 查询引擎,旨在查询分布在一个或多个异构数据源上的大型数据集。

默认连接 ID

Trino Hook 使用参数 trino_conn_id 作为连接 ID,默认情况下参数的值为 trino_default。Trino Hook 支持多种身份验证类型,以确保系统的所有用户都经过身份验证,可以设置参数 auth 来启用身份验证。该参数的值默认为 None

配置连接

主机

要连接的主机,可以是 localyarn 或 URL。

端口

如果主机是 URL,请指定端口。

登录

连接的有效用户。

密码

这可以用于启用基本身份验证。这是一个可选参数,如果使用不同的身份验证机制,则不需要此参数。

额外参数(可选,连接参数)

指定可在 Trino 连接中使用的额外参数(以 json 字典形式)。支持以下标准 Python 参数之外的参数:

  • auth - 指定需要启用哪种类型的身份验证。值可以是 certskerberosjwt

  • impersonate_as_owner - 布尔值,允许将 AIRFLOW_CTX_DAG_OWNER 设置为连接的用户。

以下额外参数可用于配置身份验证:

  • jwt__token - 如果应使用 jwt 身份验证,则通过此参数给出令牌的值。

  • jwt__file - 如果应使用 jwt 身份验证,则磁盘上包含 jwt 令牌的文件的位置。

  • certs__client_cert_path, certs__client_key_path- 如果应使用证书身份验证,则通过这些参数给出客户端证书和密钥的路径。

  • kerberos__service_name, kerberos__config, kerberos__mutual_authentication, kerberos__force_preemptive, kerberos__hostname_override, kerberos__sanitize_mutual_error_response, kerberos__principal, kerberos__delegate, kerberos__ca_bundle - 启用 kerberos 身份验证时,可以设置这些参数。

  • session_properties - JSON 字典,允许设置 session_properties。示例:{'session_properties':{'scale_writers':true,'task_writer_count:1'}}

  • client_tags - 逗号分隔的标签列表。示例:{'client_tags':['sales','cluster1']}`

  • timezone - 可以使用 IANA 时区名称显式设置会话的时区。示例: {'timezone':'Asia/Jerusalem'}

注意:如果同时给出了 jwt__filejwt__token,则 jwt__file 将优先。

此条目是否有帮助?