创建了包含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:9090EMR-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-pathconfig.properties中
http.authentication.krb5.config的值,固定为/etc/krb5.conf。--keystore-pathconfig.properties中
http-server.https.keystore.path的值,固定为/etc/emr/trino-conf/keystore。--keystore-passwordconfig.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-pathconfig.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-nameconfig.properties中的
http-server.authentication.krb5.service-name的值,固定为trino。${CATALOG}指定要连接的数据源的名称。例如,
--catalog hive,连接Hive数据源。执行如下命令,查看当前Catalog下的Schema。
show schemas;可选: 执行
quit;,可以退出Trino命令行。
旧版数据湖集群(Hadoop)
相关文档
如果您需要进行复杂的数据查询、分析和处理操作,或者需要将查询结果集成到Java应用程序中,则可以使用JDBC的方式连接Trino,详情请参见通过JDBC方式连接Trino。