Apache Trino 连接¶
Apache Trino 连接类型允许连接到 Trino,Trino 是一个分布式 SQL 查询引擎,旨在查询分布在一个或多个异构数据源上的大型数据集。
默认连接 ID¶
Trino Hook 对连接 ID 使用参数 trino_conn_id,默认情况下该参数的值为 trino_default。Trino Hook 支持多种认证类型,以确保所有系统用户都经过认证,可以设置参数 auth 来启用认证。默认情况下,该参数的值为 None。
配置连接¶
- 主机
要连接到的主机,可以是
local、yarn或 URL。- 端口
如果主机是 URL,请指定端口。
- 登录用户
用于连接的有效用户。
- 密码
用于启用基本认证。这是一个可选参数,如果使用不同的认证机制,则不需要。
- Extra(可选,连接参数)
指定可在 Trino 连接中使用的额外参数(JSON 字典格式)。支持以下非标准 Python 参数:
auth- 指定需要启用哪种认证类型。值可以是certs、kerberos或jwtimpersonate_as_owner- 一个布尔值,允许将AIRFLOW_CTX_DAG_OWNER设置为连接的用户。
可以使用以下额外参数来配置认证
jwt__token- 如果应使用 jwt 认证,通过此参数提供 token 的值。jwt__file- 如果应使用 jwt 认证,此参数指定包含 jwt token 的文件在磁盘上的位置。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- 允许设置 session_properties 的 JSON 字典。示例:{'session_properties':{'scale_writers':true,'task_writer_count:1'}}client_tags- 逗号分隔的标签列表。示例{'client_tags':['sales','cluster1']}`timezone- 会话的时区可以使用 IANA 时区名称明确设置。示例:{'timezone':'Asia/Jerusalem'}。
注意:如果同时提供了
jwt__file和jwt__token,jwt__file将优先使用。