创建了包含Trino服务的集群后,您可以通过命令行方式连接至Trino,从而进行简单快捷的数据查询操作。
前提条件
已创建集群,且在可选服务中选择了Trino服务。创建集群的具体操作,请参见创建集群。
使用限制
不支持在集群中同时启用Ranger与Kerberos。
数据湖(Datalake)和自定义集群
如果创建集群时打开了Kerberos身份认证开关,则创建的集群即为高安全集群,否则将被视为普通集群。
普通集群
通过SSH方式登录集群,详情请参见登录集群。
执行如下命令,连接Trino命令行。
说明EMR-3.44.0及之后版本和EMR-5.10.0版本及之后版本时控制台显示为Trino。EMR-3.44.0之前版本和EMR-5.10.0版本之前版本时控制台显示为Presto。
EMR-3.44.0及之后版本、EMR-5.10.0版本及之后版本
trino --server master-1-1:9090
EMR-3.44.0之前版本、EMR-5.10.0版本之前版本
presto --server master-1-1:9090
执行如下命令,查看表数据。
select * from <catalog>.<schema>.<table>;
命令中的参数说明如下:
<catalog>
为要连接的数据源的名称。<schema>
为要使用的数据库的名称。<table>
为待查询的数据表。例如,如果要查看Hive数据源中默认数据库中的
test
表的数据,您可以使用select * from hive.default.test;
命令。
可选: 执行
quit;
,可以退出Trino命令行。
高安全集群
通过SSH方式登录集群,详情请参见登录集群。
执行如下命令,连接Trino命令行。
EMR-3.44.0及之后版本、EMR-5.10.0版本及之后版本
trino --server https://${FQDN}:7778 \ --krb5-config-path /etc/krb5.conf \ --keystore-path /etc/emr/trino-conf/keystore \ --keystore-password ${pwd} \ --krb5-keytab-path /etc/emr/trino-conf/trino.keytab \ --krb5-principal trino/${FQDN}@${REALM} \ --krb5-remote-service-name trino \ --user trino/${FQDN} --catalog ${CATALOG}
EMR-3.44.0之前版本、EMR-5.10.0版本之前版本
说明EMR-3.44.0及之后版本和EMR-5.10.0版本及之后版本时控制台显示为Trino。EMR-3.44.0之前版本和EMR-5.10.0版本之前版本时控制台显示为Presto。
presto --server https://${FQDN}:7778 \ --krb5-config-path /etc/krb5.conf \ --keystore-path /etc/emr/trino-conf/keystore \ --keystore-password ${pwd} \ --krb5-keytab-path /etc/emr/trino-conf/trino.keytab \ --krb5-principal trino/${FQDN}@${REALM} \ --krb5-remote-service-name trino \ --user trino/${FQDN}
参数
说明
${FQDN}
master-1-1节点的FQDN,可通过
hostname -f
命令获取,格式为master-1-1.c-xxxxxxx.cn-xxxxxx.emr.aliyuncs.com
。--krb5-config-path
config.properties中
http.authentication.krb5.config
的值,固定为/etc/krb5.conf
。--keystore-path
config.properties中
http-server.https.keystore.path
的值,固定为/etc/emr/trino-conf/keystore
。--keystore-password
config.properties中
http-server.https.keystore.key
的值,即${pwd},需自行获取,可以在master-1-1节点上执行命令awk -F= '/http-server.https.keystore.key/{print $2}' ${TRINO_CONF_DIR}/config.properties
查看。--krb5-keytab-path
config.properties中
http-server.authentication.krb5.keytab
的值,固定为/etc/emr/trino-conf/trino.keytab
。${REALM}
config.properties中
http-server.authentication.krb5.user-mapping.pattern
的值,需自行获取,EMR内部KERBEROS的REALM格式为EMR.C-XXXXXX.COM
。--krb5-remote-service-name
config.properties中的
http-server.authentication.krb5.service-name
的值,固定为trino
。${CATALOG}
指定要连接的数据源的名称。例如,
--catalog hive
,连接Hive数据源。执行如下命令,查看当前Catalog下的Schema。
show schemas;
可选: 执行
quit;
,可以退出Trino命令行。
旧版数据湖集群(Hadoop)
相关文档
如果您需要进行复杂的数据查询、分析和处理操作,或者需要将查询结果集成到Java应用程序中,则可以使用JDBC的方式连接Trino,详情请参见通过JDBC方式连接Trino。