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_pathcerts__client_key_path - 如果应使用证书身份验证,则通过这些参数提供客户端证书和密钥的路径。

  • kerberos__service_namekerberos__configkerberos__mutual_authenticationkerberos__force_preemptivekerberos__hostname_overridekerberos__sanitize_mutual_error_responsekerberos__principalkerberos__delegatekerberos__ca_bundle - 启用 kerberos 身份验证时可以设置这些参数。

  • session_properties - 允许设置 session_properties 的 JSON 字典。示例:{'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 优先。

此条目有帮助吗?